FMUSER Беспроводная передача видео и аудио еще проще!

[электронная почта защищена] WhatsApp + 8618078869184
Язык

    Как спроектировать систему цифрового голосового вещания с Ethernet?

     

    В этой статье представлено решение для встроенной системы цифрового голосового вещания Ethernet, которое может легко реализовать функцию регионального вещания в системе вещания. Система основана на архитектуре плеча и использует метод арбитража терминала воспроизведения системы для управления реализацией регионального вещания, и контент вещания может воспроизводиться и сохраняться одновременно.

    Система цифрового голосового вещания Ethernet в основном относится к системе вещания, которая использует Ethernet в качестве среды передачи для предоставления аудиоуслуг. Ethernet можно использовать для решения проблемы передачи голосовых сигналов на большие расстояния. Позволяет разработчикам создавать крупномасштабную сетевую структуру для реализации передачи тысяч цифровых голосовых сигналов по Ethernet, полностью используя существующие сетевые ресурсы, избегая проблем, связанных с многократной настройкой линий, и реализуя интеграцию широковещательных и компьютерных сетей. . Он решает проблемы плохого качества звука, восприимчивости к помехам, сложного обслуживания и управления, а также плохого взаимодействия в традиционных системах вещания. В то же время можно выбрать все, часть или определенные области для направленного группового вещания, что нарушает ограничение, согласно которому традиционные системы вещания могут выполнять только общедоступное вещание для всех областей. Существующие системы цифрового голосового вещания Ethernet в основном используют управляющие сигналы для управления широковещательным терминалом для присоединения к группе многоадресной передачи или выхода из нее при реализации функции регионального вещания. Необходимо отправить управляющий сигнал, чтобы терминал присоединился к группе многоадресной передачи, прежде чем можно будет реализовать широковещательную передачу. Или установите сложную таблицу сопоставления на стороне сервера, чтобы поддерживать состояние терминала воспроизведения для достижения региональной широковещательной передачи, что более сложно реализовать.

    1 Структурный дизайн

    Эта система использует структуру C / S, состоит из двух частей: серверного конца системы широковещания и терминала широковещательной передачи, как показано на рисунке 1.

    Сервер широковещательной системы реализован на ПК и представляет собой программу сбора, хранения и передачи голосовых сигналов, реализованную на VC ++. Эта часть собирает и сохраняет голосовой сигнал через микрофон, а затем передает голосовые данные в Ethernet через UDP, чтобы реализовать функцию сетевой передачи голосовых данных.

    Терминал воспроизведения системы широковещания представляет собой встроенный терминал на основе LM3S8962, который может принимать пакеты голосовых данных IP, отправленные ему из Ethernet, а микросхема декодирования звука MS6336 выполняет цифро-аналоговое преобразование и воспроизведение голосовых данных.

    2 Конструкция оборудования вещательного терминала системы вещания

    Основной управляющий чип терминала вещания системы вещания использует микроконтроллер LM3S8962, предоставленный LuminaryMicro. Эта серия микросхем является первым контроллером на базе ARM CortexTM-M3 со встроенным встроенным контроллером Ethernet. Это первый в отрасли чип ARM, который поддерживает Industrial Ethernet (IEEE) и может легко реализовывать сетевые функции.

    В чипе аудиодекодера используется чип MS6336 производства MOSA. Чип представляет собой 16-битный цифро-аналоговый преобразователь стереозвука, поддерживаемые форматы цифрового ввода: Right Justifl-ed, Left Justified, I2S. Интерфейс управления MS6336 использует шину I2C, интерфейс легко настраивается. Часть ЦАП имеет точный и стабильный ток, в сочетании с отличным методом симметричного декодирования, может воспроизводить высококачественные аудиосигналы.

    Основная микросхема управления LM3S8962 подключена к интерфейсу RJ45 через магнитные компоненты и используется для приема голосовых данных из Ethernet. LM3S8962 обеспечивает сигналы управления и сигналы голосовых данных для микросхемы аудиодекодера MS6336. LM3S8962 поддерживает функцию I2C. Порты PB2 и PB3 обеспечивают синхронизацию I2C и сигналы данных соответственно. Эти два контакта могут быть напрямую подключены к функциональным контактам I2C MS6336, при этом требуется подтягивающий резистор. LM3S8962 не поддерживает формат ввода данных, требуемый MS6336. Формат ввода данных MS6336 в системе принимает I2S. Следовательно, для передачи голосовых данных на MS6336 необходимо использовать программное обеспечение порта GPIO LM3S8962 для имитации формата ввода данных I2S, требуемого MS6336. В проекте порты PA5, PA6 и PA7 используются для моделирования этой функции. Три контакта соответствуют сигналу выбора канала I2S, тактовому сигналу и сигналу данных соответственно. Подключите эти три контакта к функциональному выводу I2S на MS6336.

    Аппаратная структура терминала воспроизведения системы цифрового голосового вещания Ethernet показана на рисунке 2.

    3 Разработка программного обеспечения системы вещания

    Программное обеспечение системы вещания разделено на две части: программное обеспечение сервера системы вещания и программное обеспечение терминала вещания.

    Эта конструкция реализует воспроизведение голосовых данных в реальном времени, поэтому требуется гарантировать производительность передачи голосовых данных в реальном времени, но требования к целостности данных не слишком строгие, и небольшая потеря пакетов не повлияет на общий эффект воспроизведения, поэтому голосовые данные системы Передача принимает режим передачи UDP. При этом система работает в локальной сети и временных пользователей мало. Поэтому распределение статических IP-адресов принято для упрощения реализации программного обеспечения терминала воспроизведения.

    3.1 Сбор, хранение и передача голосовых данных на стороне сервера системы вещания

    Сбор голосовых данных реализован с помощью низкоуровневых функций API аудио WAVE. Чтобы не вызвать потерю голосовых данных, конструкция использует двойную буферизацию для хранения голосовых данных. Процесс реализации показан на рисунке 3.

    Когда один буфер записи заполнен, система немедленно отправляет другой буфер записи на записывающее устройство, чтобы продолжить запись, и прикладная программа должна прочитать данные из полного буфера записи и обработать их. Затем вызовите функцию waveInAddBuffer, чтобы повторно назначить буфер записывающему устройству для повторного использования.

    Чтобы предотвратить потерю голосовых данных в процессе записи, недостаточно просто использовать двойную буферизацию. Также следует отметить, что когда один буфер заполнен, приложение будет обрабатывать данные в буфере, а второй буфер используется для записи, и время обработки данных должно быть меньше времени, необходимого для полного заполнения второго буфера. записывается, иначе первый буфер не будет переназначен записывающему устройству после заполнения второго буфера, что приведет к потере голосовых данных. Когда частота дискретизации голосового сигнала велика, соответствующее увеличение размера буфера может эффективно решить эту проблему.

    Чтобы сохранить широковещательный контент для последующего использования, необходимо сохранить широковещательный контент в файле WAV. Файлы WAV имеют фиксированный формат заголовка. Перед сохранением голосовых данных вам необходимо установить заголовок файла WAV, в противном случае сохраненный файл WAV не может быть воспроизведен. Каждый раз, когда буфер записи заполняется, сначала найдите конец файла WAV, а затем по очереди запишите собранные данные в конец файла. Когда весь процесс трансляции завершен, все голосовые данные сохраняются в файле WAV, обеспечивая хранение голосовых данных.

    Когда буфер записи заполнен, необходимо отправить собранные голосовые данные по сети. В проекте сначала используйте класс Csocket для создания сокета, а затем нужно только инкапсулировать собранные данные в IP-пакет и отправить его. Частота дискретизации голосового сигнала в этой конструкции составляет 44.1 кГц, 16-битный двухканальный. Чтобы избежать потери голосовых данных, размер буфера записи установлен на 1024B.

    3.2 Реализация регионального вещания

    Важным применением системы цифрового голосового вещания Ethernet является не только реализация вещания на всю территорию, но и реализация функции местного вещания, то есть вещание на назначенный терминал. Следовательно, многоадресный пакет UDP используется для передачи данных в сети передачи голосовых IP-пакетов данных. Используя многоадресные пакеты для передачи данных, все терминалы, входящие в группу в локальной сети, могут принимать данные, реализуя широковещательную передачу всей области. Чтобы реализовать функцию локальной широковещательной передачи, перед голосовыми данными в проекте добавляется структура, как показано ниже, и файл конфигурации используется для хранения IP-адреса каждого терминала системы.

    02 Устройство вещательной системы вещательного терминала

    Основной управляющий чип терминала вещания системы вещания использует микроконтроллер LM3S8962, предоставленный LuminaryMicro. Эта серия микросхем является первым контроллером на базе ARM CortexTM-M3 со встроенным встроенным контроллером Ethernet. Это первый в отрасли чип ARM, который поддерживает Industrial Ethernet (IEEE) и может легко реализовывать сетевые функции.

    В чипе аудиодекодера используется чип MS6336 производства MOSA. Чип представляет собой 16-битный цифро-аналоговый преобразователь стереозвука, поддерживаемые форматы цифрового ввода: Right Justifl-ed, Left Justified, I2S. Интерфейс управления MS6336 использует шину I2C, интерфейс легко настраивается. Часть ЦАП имеет точный и стабильный ток, в сочетании с отличным методом симметричного декодирования, может воспроизводить высококачественные аудиосигналы.

    Основная микросхема управления LM3S8962 подключена к интерфейсу RJ45 через магнитные компоненты и используется для приема голосовых данных из Ethernet. LM3S8962 обеспечивает сигналы управления и сигналы голосовых данных для микросхемы аудиодекодера MS6336. LM3S8962 поддерживает функцию I2C. Порты PB2 и PB3 обеспечивают синхронизацию I2C и сигналы данных соответственно. Эти два контакта могут быть напрямую подключены к функциональным контактам I2C MS6336, при этом требуется подтягивающий резистор. LM3S8962 не поддерживает формат ввода данных, требуемый MS6336. Формат ввода данных MS6336 в системе принимает I2S. Следовательно, для передачи голосовых данных на MS6336 необходимо использовать программное обеспечение порта GPIO LM3S8962 для имитации формата ввода данных I2S, требуемого MS6336. В проекте порты PA5, PA6 и PA7 используются для моделирования этой функции. Три контакта соответствуют сигналу выбора канала I2S, тактовому сигналу и сигналу данных соответственно. Подключите эти три контакта к функциональному выводу I2S на MS6336.

    Аппаратная структура терминала воспроизведения системы цифрового голосового вещания Ethernet показана на рисунке 2.

     

    3 Разработка программного обеспечения системы вещания

    Программное обеспечение системы вещания разделено на две части: программное обеспечение сервера системы вещания и программное обеспечение терминала вещания.

    Эта конструкция реализует воспроизведение голосовых данных в реальном времени, поэтому требуется гарантировать производительность передачи голосовых данных в реальном времени, но требования к целостности данных не слишком строгие, и небольшая потеря пакетов не повлияет на общий эффект воспроизведения, поэтому голосовые данные системы Передача принимает режим передачи UDP. В то же время система работает в локальной сети с меньшим количеством временных пользователей. Поэтому для упрощения реализации программного обеспечения терминала воспроизведения принято распределение статических IP-адресов.

    3.1 Сбор, хранение и передача голосовых данных на стороне сервера системы вещания

    Сбор голосовых данных реализован с помощью низкоуровневых функций API аудио WAVE. Чтобы не вызвать потерю голосовых данных, конструкция использует двойную буферизацию для хранения голосовых данных. Процесс реализации показан на рисунке 3.

     

    Когда один буфер записи заполнен, система немедленно отправляет другой буфер записи на записывающее устройство, чтобы продолжить запись, и прикладная программа должна прочитать данные из полного буфера записи и обработать их. Затем вызовите функцию waveInAddBuffer, чтобы повторно назначить буфер записывающему устройству для повторного использования.

    Чтобы предотвратить потерю голосовых данных в процессе записи, недостаточно просто использовать двойную буферизацию. Также следует отметить, что когда один буфер заполнен, приложение будет обрабатывать данные в буфере, а второй буфер используется для записи, и время обработки данных должно быть меньше времени, необходимого для полного заполнения второго буфера. записывается, иначе первый буфер не будет переназначен записывающему устройству после заполнения второго буфера, что приведет к потере голосовых данных. Когда частота дискретизации голосового сигнала велика, соответствующее увеличение размера буфера может эффективно решить эту проблему.

    Чтобы сохранить широковещательный контент для последующего использования, необходимо сохранить широковещательный контент в файле WAV. Файлы WAV имеют фиксированный формат заголовка. Перед сохранением голосовых данных вам необходимо установить заголовок файла WAV, в противном случае сохраненный файл WAV не может быть воспроизведен. Каждый раз, когда буфер записи заполняется, сначала найдите конец файла WAV, а затем по очереди запишите собранные данные в конец файла. Когда весь процесс трансляции завершен, все голосовые данные сохраняются в файле WAV, обеспечивая хранение голосовых данных.

    Когда буфер записи заполнен, необходимо отправить собранные голосовые данные по сети. В проекте сначала используйте класс Csocket для создания сокета, а затем нужно только инкапсулировать собранные данные в IP-пакет и отправить его. Частота дискретизации голосового сигнала в этой конструкции составляет 44.1 кГц, 16-битный двухканальный. Чтобы избежать потери голосовых данных, размер буфера записи установлен на 1024B.

    3.2 Реализация регионального вещания

    Важным применением системы цифрового голосового вещания Ethernet является не только реализация вещания на всю территорию, но и реализация функции местного вещания, то есть вещание на назначенный терминал. Следовательно, многоадресный пакет UDP используется для передачи данных в сети передачи голосовых IP-пакетов данных. Используя многоадресные пакеты для передачи данных, все терминалы, входящие в группу в локальной сети, могут принимать данные, реализуя широковещательную передачу всей области. Чтобы реализовать функцию локальной широковещательной передачи, перед голосовыми данными в проекте добавляется структура, как показано ниже, и файл конфигурации используется для хранения IP-адреса каждого терминала системы.

    структура STRING

    {Строка IPNO1;

    Строка IPNO2;

    ...

    Строка IPNO9;

    Строка IPNO10};

    Когда необходимо выполнить региональное вещание на определенных терминалах, выберите соответствующие номера этих терминалов на панели серверной части системы вещания (как показано на рисунке 4). В это время IP-адрес выбранного терминала считывается из файла конфигурации и присваивается соответствующей переменной в структуре. Когда терминал принимает многоадресный IP-пакет, он сначала определяет, имеет ли структура ту же переменную, что и его собственный IP-адрес, если есть, то данные принимаются и воспроизводятся, если нет, данные отбрасываются, таким образом реализуя область широковещательной передачи функция. По сравнению со способом использования управляющего сигнала для управления терминалом воспроизведения для присоединения к группе многоадресной передачи или выхода из нее или для динамического поддержания сложной таблицы сопоставления для реализации функции регионального вещания. Этот метод не требует интерактивного управления терминалом воспроизведения перед каждой широковещательной передачей и не требует динамического отслеживания состояния терминала. Ему нужно только записать соответствующий IP-адрес терминала в файл конфигурации, когда терминал впервые подключается к системе. Функцию легко реализовать.

    3.3 Реализация программного обеспечения терминала вещания системы вещания

    Терминал вещания системы вещания разделен на две части для реализации, часть приема аудиоданных используется для приема речевых данных и хранения и пересылки, а аудиодекодер реализует цифро-аналоговое преобразование и воспроизведение речевого сигнала. Часть приема аудиоданных использует программирование Socket для приема голосовых данных из Ethernet. После получения пакета голосовых данных он должен сначала определить, предназначен ли этот пакет данных для себя. Терминал сравнивает переменную-член структуры STRING в IP-пакете со своим собственным IP-адресом, и, если какая-либо переменная-член равна его собственному IP-адресу, он сохраняет данные в пакете, в противном случае отбрасывает их.

    Голосовые данные принимаются и сохраняются в кольцевой очереди. Из-за беспорядка передачи данных UDP, пакеты голосовых данных должны быть отсортированы после того, как голосовые данные получены на стороне приема голосовых данных, чтобы обеспечить последовательную обработку голосовых данных и правильное восстановление голосового сигнала. В то же время, чтобы избежать дрожания в сети, данные обрабатываются каждый раз, когда в кольцевой очереди находится не менее 5 пакетов.

    Формат ввода данных MS6336 в проекте принимает формат I2S. Поскольку LM3S8962 не поддерживает этот формат данных, для реализации функции I2S через порт GPIO используется программное моделирование. Чтобы полностью восстановить голосовой сигнал, необходимо убедиться, что синхронизация сигнала I2S является строгой и точной, а преобразование между высоким и низким уровнями осуществляется с помощью программы задержки. Временная диаграмма I2S показана на рисунке 5.

    Тактовая частота широковещательного терминала широковещательной системы составляет 40 МГц, а время отправки каждого бита данных составляет 600 нс, рассчитанное на основе частоты дискретизации. LM3S8962 передает голосовые данные в MS6336 и осуществляет последовательную передачу через порт GPIO в соответствии с точкой выборки. Каждая точка выборки содержит четыре байта, и процесс отправки данных точки выборки показан на рисунке 6.

    4 Анализ результатов

    Размер пакета голосовых данных, передаваемого системой через Ethernet, составляет 1024 Байт. Чтобы избежать дрожания в сети, терминал начинает широковещательную передачу при получении 5 пакетов данных. Время задержки трансляции около 30 мс, что соответствует функциональным показателям. Серверная часть может контролировать работу 10 вещательных терминалов одновременно. Путем выбора соответствующего номера терминала на стороне сервера можно успешно реализовать функции широковещательной передачи всей области и локальной широковещательной передачи системы широковещания.

    Заключение 5

    Исходя из реальных потребностей, мы проектируем и внедряем систему цифрового голосового вещания Ethernet. Результаты экспериментов показывают, что терминал воспроизведения системы решает, выполнять ли голосовое вещание, чтобы реализовать региональное вещание, это простой и эффективный способ реализовать глобальное вещание и региональное вещание голосовых сигналов. Терминал системного проигрывателя использует программное моделирование порта GPIO для реализации функции I2S, которая может точно реализовать синхронизацию I2S, завершить передачу данных голосового сигнала и реализовать трансляцию голосового сигнала в реальном времени. Структура проекта разумна и позволяет легко реализовать расширение функций, таких как синхронизация, воспроизведение музыки, удаленное управление, мониторинг в реальном времени и т. Д. Эта конструкция имеет важное практическое значение и обеспечивает основу для решения больших и сложных задач Ethernet-вещания. системы.

     

     

     

     

    Список всех Вопрос

    Никнейм

    Эл. адрес

    Вопросы

    Наш другой продукт:

    Пакет оборудования для профессиональной FM-радиостанции

     



     

    IPTV-решение для отеля

     


      Введите адрес электронной почты, чтобы получить сюрприз

      fmuser.org

      es.fmuser.org
      it.fmuser.org
      fr.fmuser.org
      de.fmuser.org
      af.fmuser.org -> африкаанс
      sq.fmuser.org -> албанский
      ar.fmuser.org -> арабский
      hy.fmuser.org -> Армянский
      az.fmuser.org -> Азербайджанский
      eu.fmuser.org -> Баскский
      be.fmuser.org -> Белорусский
      bg.fmuser.org -> Болгарский
      ca.fmuser.org -> каталонский
      zh-CN.fmuser.org -> Китайский (упрощенный)
      zh-TW.fmuser.org -> Китайский (традиционный)
      hr.fmuser.org -> хорватский
      cs.fmuser.org -> Чешский
      da.fmuser.org -> датский
      nl.fmuser.org -> Голландский
      et.fmuser.org -> эстонский
      tl.fmuser.org -> Филиппинский
      fi.fmuser.org -> финский
      fr.fmuser.org -> Французский
      gl.fmuser.org -> Галицкий
      ka.fmuser.org -> Грузинский
      de.fmuser.org -> Немецкий
      el.fmuser.org -> Греческий
      ht.fmuser.org -> гаитянский креольский
      iw.fmuser.org -> Иврит
      hi.fmuser.org -> Хинди
      hu.fmuser.org -> Венгерский
      is.fmuser.org -> Исландский
      id.fmuser.org -> индонезийский
      ga.fmuser.org -> Ирландский
      it.fmuser.org -> Итальянский
      ja.fmuser.org -> Японский
      ko.fmuser.org -> корейский
      lv.fmuser.org -> латышский
      lt.fmuser.org -> Литовский
      mk.fmuser.org -> македонский
      ms.fmuser.org -> малайский
      mt.fmuser.org -> Мальтийский
      no.fmuser.org -> Норвежский
      fa.fmuser.org -> Персидский
      pl.fmuser.org -> Польский
      pt.fmuser.org -> португальский
      ro.fmuser.org -> Румынский
      ru.fmuser.org -> Русский
      sr.fmuser.org -> сербский
      sk.fmuser.org -> словацкий
      sl.fmuser.org -> словенский
      es.fmuser.org -> Испанский
      sw.fmuser.org -> Суахили
      sv.fmuser.org -> шведский
      th.fmuser.org -> Тайский
      tr.fmuser.org -> Турецкий
      uk.fmuser.org -> украинский
      ur.fmuser.org -> урду
      vi.fmuser.org -> Вьетнамский
      cy.fmuser.org -> валлийский
      yi.fmuser.org -> Идиш

       
  •  

    FMUSER Беспроводная передача видео и аудио еще проще!

  • Контакты

    Адрес:
    Номер 305, здание Хуэйлань, дом 273 Хуанпу, Гуанчжоу, Китай, 510620

    E-mail:
    [электронная почта защищена]

    Телефон / WhatApps:
    +8618078869184

  • Категории

  • Новостные рассылки

    ФИО ИЛИ ФИО

    Электронная почта

  • решение PayPal  Western UnionБанк Китая
    E-mail:[электронная почта защищена]   WhatsApp: +8618078869184 Skype: sky198710021 Общаться со мной
    Copyright 2006-2020 Powered By www.fmuser.org

    Свяжитесь с нами