Почему при преобразовании 16-битного WAV в 8-битный WAV появляются шумы, как этого избежать?

6210
LiuYan 刘研

У нас есть файлы формата 16 бит / 8000 Гц / моно / PCM .wav, которые необходимо преобразовать в 8 бит для использования в нашей телефонной системе.

Но после преобразования мы обнаружили, что в 8-битных файлах .wav появилось много шума, даже если все исходные звуки безмолвны. (Вы можете использовать Audacity для генерации тишины, экспортировать ее в 16-битный Microsoft WAV, а затем экспортировать в 8-битный Microsoft WAV (другие несжатые файлы), чтобы прослушать, что произошло).

Я пробовал AudacitysoxCoolEdit ( пробная версия ), чтобы сделать такое преобразование, все они производят шум после преобразования.

Как это случилось? И есть ли способ избежать этого?

3

2 ответа на вопрос

5
Yetanotherjosh

Возможно, шум, о котором вы говорите, является дизерингом . Многие алгоритмы преобразования битрейта добавят к сигналу сглаживание, то есть низкоамплитудный, часто частотный шум, до преобразования. Этот шум фактически увеличивает слышимое качество преобразования в большинстве случаев. Если вы не хотите сглаживания, надеюсь, настройки вашего приложения позволят вам отключить его.

3
Paul R

Не слыша 8-битные звуки, трудно сказать, о каком шуме вы говорите, но есть ряд возможных проблем:

(1) при преобразовании из 16 бит в 8 бит всегда будет происходить общая потеря качества - в конце концов, вы выбрасываете информацию.

(2) если 16-битные выборки не нормализованы (т.е. если они используют только небольшую часть полного 16-битного диапазона), то они будут иметь очень низкое качество при преобразовании в 8-битные - вам следует сначала выполнить нормализацию, чтобы убедиться, что вы используя полный 8-битный диапазон после преобразования.

(3) есть два общих, но разных 8-битных аудио представления: со знаком (дополнение двух) и без знака (смещение), причем последнее является более распространенным. Если вы используете неправильный формат, то есть конвертируете в один формат, но затем пытаетесь воспроизвести в другом формате, звук будет распознаваемым, но звучит довольно плохо.

(4) для телефонных (речевых) приложений обычно используется нелинейное (логарифмическое) кодирование для 8-битного звука, а не линейное - наиболее распространенными из них являются A-law и µ-law . Однако ваш преобразованный 8-битный звук является линейным. Если вы пытаетесь использовать линейный PCM в приложении телефонии, которое ожидает A-закон или µ-закон, то это будет звучать как искаженный беспорядок.