Главная » Микроконтроллеры
Призовой фонд
на октябрь 2017 г.
1. Термометр Relsib WT51
Рэлсиб
2. 1000 руб
PCBWay
3. Регулируемый паяльник 60 Вт
Паяльник
4. 100 руб.
От пользователей

Передача звука по радиоканалу с использованием кодека Speex

Описание применяемого кодека

Speex это свободный кодек для сжатия речевого сигнала, который может использоваться в приложениях «голос-через-интернет» (VoIP). С высокой вероятностью он не имеет никаких патентных ограничений и лицензирован под последней версией лицензии BSD (без третьей статьи). Сжатые кодеком Speex данные можно хранить либо в формате хранения звуковых данных Ogg, либо передавать напрямую с помощью пакетов UDP/RTP.

Разработчики противопоставляют свою разработку другим открытым кодекам, например, кодеку Vorbis, утверждая, что именно кодек Speex лучше всего подходит для передачи голоса по сети с ненадёжной доставкой пакетов данных. При этом авторы разработки специально подчёркивают, что кодек подходит для использования в сетях с ненадёжной передачей пакетов, то есть либо пакет пришёл, либо нет. При этом возможность искажения содержимого пакета должна быть исключена, поэтому Speex не подходит для передачи голоса, например, в радио- и сотовой связи.

Speex относится к классу так называемых Code Excited Linear Prediction (CELP)-кодеков, то есть кодеков, построенных на основе так называемого Линейного Предсказательного кодирования ЛПК. ЛПК использует для аппроксимации отрезка речевого сигнала цифровой фильтр только с обратными связями (т. н. «авторегрессионный фильтр»). Коэффициенты этого фильтра «подгоняются» под отрезок сигнала с помощью процедуры Левинсона (в западной литературе — Левинсона-Дурбина). CELP-модификация ЛПК предусматривает наличие т. н. «кодовой книги», которая содержит предопределённые наборы возбуждающих ЛПК-фильтр единичных импульсов.

Речевой сигнал в кодеке Speex разбивается на неперекрывающиеся отрезки длительностью 20 мс (160 отсчётов при 8 КГц). При этом, для оценки возбуждающего набора вышеуказанный отрезок разбивается на четыре подотрезка длительностью 5 мс соответственно. На каждом из подотрезков отыскиваются возбуждающие наборы импульсов как текущего подотрезка (из кодовой книги), так и двух предыдущих подотрезков. В отличие от других кодеков, с целью избежать патентных ограничений, Speex не использует алгебраическое кодирование, а только векторное. Возбуждения двух предыдущих подотрезков складываются с переменными весами, в отличие от ряда других кодеков, где используются переменные положения по времени.

По заявлению разработчиков, Speex оптимизирован для получения высококачественного речевого сигнала при низких скоростях. Кодек Speex также позволяет использовать переменную степень сжатия сигнала и поддерживает сигналы с различной шириной полосы: сверхширокополосный (англ. ultra-wideband, частота дискретизации 32 КГц), широкополосный (англ. wideband, 16 КГц) и узкополосный (англ. narrowband, 8 КГц). Направленность на системы «голос-через-интернет» (VoIP) предопределяет, что Speex должен быть устойчив к потерям пакетов данных, но не к повреждению их, так как UDP/IP-протокол, в отличие от TCP/IP, не гарантирует доставку пакетов потребителю. Но, при этом, вероятность повреждения данных в UDP/IP-пакете в проводных системах связи крайне мала. Следует отметить, что можно использовать для передачи данных, сжатых кодеком Speex и TCP/IP-пакеты. В последнем случае, вероятность порчи данных становится мизерной. Эта особенность определяет отсутствие в формате данных кодека Speex каких-либо средств защиты от ошибок.

Основные характеристики кодека:

  • Свободное и открытое программное обеспечение, не имеет патентных ограничений;
  • Интеграция широко- и узкополосного канала в одном потоке данных;
  • Динамическое переключение скорости и переменная скорость (англ. Variable bit-rate, VBR);
  • Обнаружитель речи (англ. Voice Activity Detection, VAD, объединён с VBR);
  • Настройка степени сжатия.

Принципиальная схема устройства

Схема устройства

Данная схема является универсальным решением для построения приемника и передатчика. В случае построения приемника исключается входные цепи, а для передатчика исключаются выходные цепи. Возможно использование данного устройства в виде приемопередатчика. Частота дискретизации речевых сигналов 10 кГц, тактовая частота ядра микроконтроллера составляет 72 МГц, модуль приемопередатчика работает на частоте 868 МГц.

По выше приведенной принципиальной схеме была спроектирована печатная плата в Sprint-Layout:

Фото устройства:

АЧХ системы:

Проект создан в IAR 6.4.

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
IC1 МК STM32
STM32F103C4
1 Поиск в LCSCВ блокнот
IC2 МикросборкаRFM231 Поиск в LCSCВ блокнот
OP1 Операционный усилитель
MCP602
1 Поиск в LCSCВ блокнот
VR1 Линейный регулятор
LD1117V33
1 Поиск в LCSCВ блокнот
С1, С14, С21 Конденсатор1 мкФ3 Поиск в LCSCВ блокнот
С3 Конденсатор2 мкФ1 Поиск в LCSCВ блокнот
С5, С13, С16, С19, С22 Конденсатор22 мкФ5 Поиск в LCSCВ блокнот
С15 Конденсатор470 пФ1 Поиск в LCSCВ блокнот
С17, С20 Конденсатор47 пФ2 Поиск в LCSCВ блокнот
С18 Конденсатор100 нФ1 Поиск в LCSCВ блокнот
С23-С25 Конденсатор0.1 мкФ3 Поиск в LCSCВ блокнот
С26-С28 Конденсатор68 нФ3 Поиск в LCSCВ блокнот
С29-С30 Конденсатор20 пФ2 Поиск в LCSCВ блокнот
R1, R6, R10, R12 Резистор
100 кОм
4 Поиск в LCSCВ блокнот
R2 Резистор
47 кОм
1 Поиск в LCSCВ блокнот
R5, R20 Резистор
20 кОм
2 Поиск в LCSCВ блокнот
R7, R16-R19 Резистор
470 Ом
5 Поиск в LCSCВ блокнот
R8 Резистор
10 кОм
1 Поиск в LCSCВ блокнот
R9 Резистор
150 кОм
1 Поиск в LCSCВ блокнот
R11 Резистор
470 кОм
1 Поиск в LCSCВ блокнот
R13-R15 Резистор
100 Ом
3 Поиск в LCSCВ блокнот
Z1 Кварц8 МГц1 Поиск в LCSCВ блокнот
LED1, LRD2 Светодиод2 Поиск в LCSCВ блокнот
in, out Разъем2 Поиск в LCSCВ блокнот
S1-S3 Кнопка3 Поиск в LCSCВ блокнот
Ант Антенна1 Поиск в LCSCВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 1
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.8 Проголосовало: 1 чел.

Комментарии (2) | Я собрал (0) | Подписаться

0
raxp #
С высокой вероятностью он не имеет никаких патентных ограничений...
Вероятность штука тонкая. Так есть или нет ограничения?
Ответить
0
taras #
Здравствуйте, долго искал что-то подобное. Меня интересует как микроконтроллер STM32F103 формирует пакеты для передачи? С контроллера выходят уже готовые UDP/RTP пакеты?
Хочу сделать передачу в локальную сеть по кабелю ethernet. Как быть с настройками TCP/IP? Что для этого проекта порекомендуете?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
Конструктор: DDS генератор сигналов Солнечная панель 10Вт 12В поликристаллическая
вверх