Вопрос

У нас есть необработанный голосовой звук, который нам нужно распространить через Интернет.Нам нужно достойное качество, но оно не обязательно должно быть музыкальным.Нашей главной заботой является удобство использования потребителем (т.во что и где в это можно играть) и размер загрузки.Мой опыт показал, что mp3-файлы не обеспечивают наилучших показателей сжатия голосового звука, но я не знаю, какие альтернативы являются лучшими.В конечном итоге мы хотели бы автоматизировать процесс конвертации, чтобы позволить потребителю выбирать качество или качество.уровень размера, который им нужен.

Это было полезно?

Решение

Начало здесь.

Как вы правильно заметили, сжатие голоса отличается от обычного сжатия звука.Вы найдете множество кодеков, предназначенных для телефонных приложений, от PCM и ADPCM до более поздних пакетных кодировок, таких как CELP, используемых в сотовых сетях GSM.

Тем не менее, кодирование голоса VOIP немного отличается от используемого носителя.вы можете найти хорошую, бесплатную (неограниченную и с открытым исходным кодом (BSD)) библиотеку для кодирования/декодирования речи в Библиотека программного обеспечения Speex.

Опять же, выбор зависит от кодируемой вами речи и среды, по которой она передается.Также обратите внимание, что во многих библиотеках есть несколько алгоритмов, которые они могут использовать в зависимости от обстоятельств, а некоторые даже переключаются на лету в зависимости от условий звука и сети.

Чтобы получить дополнительную помощь, сузьте свой вопрос.

-Адам

Другие советы

Вам следует попробовать Opus . Пример командной строки сжатия:

ffmpeg -i x.wav -b:a 32k x.opus

Наиболее часто используемые форматы сжатия, используемые в живом голосовом аудио (например, VoIP-телефония), - это -Law (mu-Law / u-Law используется в США) и a-Law (используется в Европе и т. д.). .) который, в отличие от несжатого PCM, не поддерживает столь широкий диапазон частот (меньший диапазон возможных значений игнорирует звуки вне необходимого спектра и требует меньше места для хранения).

Для удобства использования проще всего использовать сжатие mpeg (mp2 / 3/4) для потоковой передачи на стандартные медиапроигрыватели, поскольку алгоритмы легко доступны и, как правило, довольно быстрые, и почти все медиаплееры должны их поддерживать, но для голоса вы можете попытайтесь указать более низкую скорость передачи битов или сделайте ваше преобразование из файла низкого качества в первую очередь (WAV может быть с несколькими частотами дискретизации, а голосу требуется гораздо более низкая частота дискретизации, чем музыке или эффектам, это в основном похоже на частоту кадров в видео ). В качестве альтернативы вы можете использовать Real Media, WMA или другие проприетарные форматы, но это ограничит удобство использования, поскольку пользователям потребуется специальное стороннее программное обеспечение для воспроизведения, хотя WMA имеет отличную степень сжатия, а также параметры сжатия, характерные для голосового звука.

Предполагая, что ваши пользователи будут использовать Windows, есть кодек сжатия речи WMA, который вы можете использовать с Windows Media Encoder SDK. В противном случае вы можете использовать ACM, чтобы использовать что-то вроде G723 / G728, ADPCM, mu-law или a-law, некоторые из которых установлены как стандартные в Windows XP & amp; выше. Они могут быть упакованы в файлы WAV. Вам нужно будет немного поэкспериментировать, чтобы найти правильный битрейт / качество (вероятно, не беспокойтесь о mu-law или a-law). С помощью голосовых данных вы можете получить довольно низкую частоту дискретизации - например, 16000 или 8000, так как в человеческом голосе не намного выше 4 кГц.

Я думаю, что AMR - один из лучших речевых кодеков. Я использовал его около года назад, и я помню, что качество было очень хорошим, а размеры были довольно маленькими.

Один недостаток, особенно в вашем случае, заключается в том, что, насколько я знаю, он не поддерживается широким спектром медиаплееров. QuickTime и RealPlayer - это два файла, которые я знаю для воспроизведения файлов .amr.

Попробуйте speex ... не обремененные патентами, с хорошей производительностью как в том же, так и в отношении процессорного времени. Мне повезло, используя его на iPhone.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top