Проблемы с отправкой аудио через FFmpeg на Deva DB RX 90-91

Вопрос или проблема

Я хочу отправить аудио с помощью FFmpeg на приемник Deva DB90/91 по RTP.

Отправляемый файл – это mp3 файл битрейтом 128 кбит/с в стерео и частотой 48КГц.

Команда:

ffmpeg -protocol_whitelist file,rtp,udp -i <файл> -c copy -f rtp rtp://<IP DEVA>:<порт DEVA>

Я получаю что-то очень странное.

  • На DB90RX: работает 1 секунду, потом не работает 1 секунду и так далее…
  • На DB91RX: работает примерно 5 секунд, потом все.

Я не получил сообщений об ошибках от FFmpeg, но результат ужасен.

Ответ или решение

Чтобы решить проблему с отправкой аудио через FFmpeg на декодеры Deva DB90 и DB91 с использованием RTP, рассмотрим несколько важных аспектов.

1. Проверка исходного файла

Первым делом убедитесь, что файл mp3, который вы используете, корректен и его можно воспроизвести без каких-либо проблем. Попробуйте воспроизвести файл на локальном медиаплеере, чтобы убедиться, что он не поврежден.

2. Использование правильных параметров кодирования

Вы указали, что файл mp3 имеет битрейт 128 kbps, стерео и частоту дискретизации 48 KHz. Поскольку кодек mp3 не является оптимальным для RTP, рекомендуется использовать кодек, который более совместим с RTP, например, AAC или PCM. Попробуйте перекодировать файл следующим образом:

ffmpeg -i <file> -c:a aac -b:a 128k -ar 48000 -f rtp rtp://<IP DEVA>:<port DEVA>

Если ваш декодер не поддерживает AAC, вы можете использовать PCM:

ffmpeg -i <file> -f s16le -ar 48000 -ac 2 -c:a pcm_s16le -f rtp rtp://<IP DEVA>:<port DEVA>

3. Настройка RTP-параметров

Также стоит проверить, какие кодеки поддерживает ваш декодер. Декодеры Deva могут иметь определенные требования к порядку и формату пакетов RTP. Убедитесь, что вы используете правильный порт и IP-адрес, и проверьте, что между вашей машиной и декодером нет сетевых проблем.

4. Тестирование с другими форматами

Если проблема не решается, попробуйте отправить другой формат звукового файла, например WAV:

ffmpeg -i <file> -acodec pcm_s16le -ar 48000 -ac 2 -f wav rtp://<IP DEVA>:<port DEVA>

5. Отслеживание потоков RTP

Вы можете использовать инструменты анализа, такие как Wireshark, чтобы отследить RTP-поток и проверить, корректно ли пакеты передаются и принимаются. Это поможет вам выявить, если пакет теряется или выходит за временные рамки.

6. Проверка настроек на Deva DB RX

Убедитесь, что ваш декодер настроен на правильный кодек и параметры RTP. Проверьте документацию Deva для получения актуальной информации о совместимых кодеках и настройках сети.

Заключение

Попробуйте данные рекомендации, начиная с перекодирования аудиофайла и проверки настроек как на стороне отправителя, так и на стороне получателя. Если проблемы сохраняются, рассмотрите возможность обращения в техническую поддержку Deva для получения дополнительной информации о совместимости потоков RTP.

Оцените материал
Добавить комментарий

Капча загружается...