Audiophile's Blog
Логин:Пароль:


Забыл пароль | Регистрация (убрать всю рекламу)
О сайте | Ликбез | Словарь | Audiophile's Testroom | Поддержать | Контакты
Разделы
Поиск по сайту
Популярное
Персональная настройка
Настройка звука онлайн (foobar2000, драйвера, Windows), создание персональных сборок foobar2000.

Контакты

Случайный опрос
Какой lossless кодек вы предпочитаете?
Всего ответов: 3438
Полезный софт
Opera QIP 2010 Download Master µTorrent
Ace Utilities AIDA64 SpeedFan 7-Zip
ESET NOD32 FileZilla Media Player Classic Home Cinema Paint.NET
Sony Sound Forge VirtualDub Unlocker Punto Switcher
Похожие проекты
Сейчас на сайте
Онлайн всего: 3
Гостей: 3
Пользователей: 0
» »

Преобразование аудио высокой разрядности в 16 бит/44.1 кГц стерео [foobar2000 v1.1.2]


10 Января 2011, 14:41

Copyright (C) 2014, Taras Kovrijenko

Полное или частичное копирование текста допускается только с письменного разрешения автора.

ВВЕДЕНИЕ

Сегодня я хочу рассказать Вам о том, как правильно понижать частоту дискретизации и разрядность музыкальных файлов, таким образом чтобы это не привело к серьезным потерям качества. Об этом уже упоминалось в статьях Системы понижения разрядности в мастеринге и Конвертеры частоты дискретизации (из журнала "Звукорежиссер"), там же Вы можете найти подробную информацию о принципе работы описываемых здесь алгоритмов.

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

И так, допустим, у Вас есть музыка в формате 24/96 (24/48, 24/192 и т.п., главное что разрядность выше чем для стандарта Audio-CD) и Вам надо проиграть его на устройстве не поддерживающем таковую разрядность/частоту дискретизации, или же записать на аудио-компакт. Если вы просто загрузите его в звуковой редактор, а потом сохраните в формате 16 бит/44.1 кГц, это внесет достаточно большие искажения. Не верите? Вот Вам пример.

Оригинальный спектр тона частотой 1 кГц с уровнем -90дБ в формате 24/96 (надо отметить, что этот звук не сложно услышать на звуковой аппаратуре среднего и высокого качества при условии небольшого уровня шумов):

Original Spectrum

как видно на графике, паразитные гармоники примерно на 60 дБ ниже уровня полезного сигнала и не должны быть слышны даже при повышении громкости аудио.

А вот спектр полученный загрузкой/сохранением в 16 бит/44.1 кГц программой Sony Sound Forge 10:

Simple 16-44.1

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

Тут на помощь приходят технологии Dithering и Noise Shaping, о которых уже не раз говорилось в статьях на этом сайте. Выше мы рассматривали вариант сохранения аудио в нужном формате с помощью программы Sony SoundForge, это никоим образом не доказывает что программа "не умеет" правильно понижать битность, просто я хотел бы описать более простой способ, чем использование специальных функций Sound Forge'а (а если еще учесть что программа является платной...).
Так вот, эти технологии, да еще в сочетании с качественным ресемплером и микшером каналов, поддерживает и foobar2000.

А теперь о настройке


Настройка конвертера

Нам понадобятся:

foobar2000 (установленный в режиме Full или Normal)

Плагины сторонних разработчиков:

SoX Resampler (foo_dsp_resampler.dll) - понижение частоты дискретизации
Channel Mixer (foo_channel_mixer.dll) - преобразование количества каналов
DVD-Audio Decoder and Watermark Detector (foo_input_dvda.dll) - декодирование DVD Audio, удаление "водяных знаков"
HDCD decoder (foo_hdcd.dll) - декодирование HDCD слоя (если таковой имеется) в Audio CD, WAV, FLAC, WavPack

Плеер и плагины можно скачать на странице foobar2000 + plugins.

Подробное описание настроек конвертера смотрите в соответствующей инструкции. Ниже я приведу только основные моменты настройки со скриншотами.


Для удобства создадим специальный пресет конвертера. Добавим в плейлист любой трек и в контекстном меню выберем конвертер:

Converter Setup


Теперь мы находимся в главном меню конвертера:

Converter Setup

Справа можно увидеть 4 ссылки, каждая из которых ведет к соответствующей группе настроек. Рассмотрим их по порядку.


Converter Setup

Тут необходимо выбрать формат WAV (по сути это несжатый PCM WAV), глубину квантования 16 бит и включить Dithering (для качественного преобразования аудио с глубиной >16 бит).


Converter Setup

Эта вкладка содержит настройки пути выходных файлов. На скриншоте выбрана выходная папка 16_44.1 (которая будет находиться в папке с источником) и формат имени файлов "<номер> <исполнитель> - <название>".


Converter Setup

Здесь нас ждет самое главное - параметры обработки. Параметр Enable decode postprocessing отвечает за включение постпроцессоров, таких как HDCD декодер.

Для DVD Audio в цепочку DSP следует добавить детектор "водяных знаков", далее надо поместить ресемплер и настроить как на скриншоте ниже:

Converter Setup

Следующим поместим Channel Mixer и опять же, настроим для сведения каналов в стерео:

Converter Setup

Converter Setup

В конец цепочки на всякий случай поставим Advanced Limiter (для предотвращения клиппинга).


Converter Setup

На последней вкладке оставим стандартные параметры и вернемся в главное окно конвертера.


Converter Setup

Убедитесь, что все важные параметры установлены правильно, после чего сохраните пресет с помощью кнопки Save.


Заключение

После создания пресета, далее всё очень просто. Надо загрузить файлы, предназначенные для конвертирования в foobar2000, выделить их, нажать на выделении правой кнопкой и выбрать наш профиль:

Conversion

И что же мы получаем в результате? Вот спектр результирующего файла (исходным является тестовый файл о котором говорилось в начале статьи):

Results

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

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

Напоследок хочу сказать, что стандарт 16 бит/44 кГц является вполне достаточным для получения хорошего звучания, но при условии правильного мастеринга (с высокой разрядностью и частотой дискретизации) и преобразования в конечный вид с использованием качественных алгоритмов ресемплирования, а также технологий Dithering и Noise Shaping.


Информация от спонсора

Darvin Studio: футболки и seo оптимизация продвижение сайта. Главная цель - результат. Вы стопроцентно получаете реальный эффект от продвижения.

 
   
Категория: Авторские статьи | Автор: | Добавил: Audiophile ()
Просмотров: 98508 | Комментарии: 49 | Теги: 24bit, dither, noise shaping, channel mixer, dithering, resampler | Рейтинг: 5.0/5, голосов: 5
Всего комментариев: 491 2 3 »
[47] Acuna   (22 Февраля 2016 20:25)
И кстати, работали ли Вы когда-нибудь с программой Burrrn, которая все конвертит прямо перед записью на диск? Дак вот там дизернг, если его в ключить в настройках, применяется всегда, или только когда нужен? Спасибо.

[46] Acuna   (22 Февраля 2016 20:23)
Приветствую! Большое спасибо за статью! А можно узнать какой прогой Вы создаете сии графики спектров? Заранее благодарен!

[48] j7n   (26 Марта 2016 02:16)
RightMark Audio Analyzer

[49] Acuna   (27 Апреля 2016 07:19)
Благодарствую) А с консольными версиями существуют? Я просто пользуюсь SoX для создания спектров, написал батник для него, теперь достаточно просто открыть в нем нужный трек, и картинка со спектром появляется в папке с этим треком. Очень удобно, и никаких лишних телодвижений. Хочется теперь еще анализ проводить помимо спектров. Спасибо.

[43] vladmpl   (10 Января 2016 14:58)
Здравствуйте! Спасибо за лигбез. Я работаю с файлами в формате Flac, Ape, WavPack. Мне нужно перевести аудио из 24/192 в аудио 24/96 или
24/48. Весь исходный материал - Vinyl Rip - записан в стерео. Я так
понимаю, что в настройке "Dither" мне надо выставить "never" вместо
"always"; убрать из настроек "Chanel Mixer", "DVD-Audio Decoder and Watermark Detector", "Enable decode postprocessing"; остальное оставляю без изменений. Всё правильно? Спасибо.

[42] ART777   (17 Декабря 2015 00:11)
Доброго времени суток! Такой вопрос: Нужно перевести 24/44100 в 16/44100, в этом случае делать всё как в статье, но без добавления Resampler'а?
Ответ: Да.

0  
[41] Audiophile   (29 Ноября 2015 11:14)
Сравнительное качество ресемплирования, как правило, не зависит от режима ресемплирования.  Что касается о SSRC X - я о нём написал в выводах к тесту ресемплеров.
Те различия, над которыми вы "трясетесь", никто даже с микроскопом не отыщет, так что используйте SoX или SSRC - без разницы.

[40] NewUser   (18 Ноября 2015 21:49)
Здравствуйте,благодарю за статью.Но появились вопросы о качественной конвертации из 24/88.2 , 24/96 и 24/192 в формат 24/48 через foobar2000, пользуясь вашей инструкцией из данной статьи.
Вопросы такие:

Вопрос №1:Так нужен дизеринг или нет?
С одной стороны, вроде как нет, т.к. нет смены конечной битности и т.к. он добавляет немного лишнего шума,но с другой:

1.1)Происходят-ли при ресемплинге(в частности- при снижении частоты) автоматические преобразования битности 24->32 float->24 требующие дизеринга?
1.2)Происходят-ли искажения при ресемлинге (гармонические и причие), которые требуют дизеринга?

Вопрос №2:
Нужно-ли в настройках ресемплера SoX менять значения Passband(95%) и Allow aliasing (выкл.)

Вопрос №3:
Можно-ли убрать Chanel Mixer если конвертирование происходит из стерео в стерео?

[44] Rollinnn   (14 Января 2016 17:21)
№1 Не нужен
1.1. Происходят. Дизеринг не требуются.
1.2. Искажения, конечно, возникают. Дизеринг не требуется.
Это всё в случае, если конечная разрядность - 24 бита.

№2 По желанию.
№3 Можно

[39] TAIFUN   (19 Апреля 2015 05:46)
Большое спасибо за статью! Раньше ресемпил только SoX`ом.

[36] kit   (28 Февраля 2015 16:52)


Уважаемый Audiophile, конвертил из ape в wav фубаром, чтобы потом во флак загнать, а спектр стал иным (Делал всё по инструкции). Я что-то не так сконвертил? На слух разницы при этом не заметил абсолютно никакой.

Я забыл выключить дитеринг, поэтому была такая петрушка. В общем, когда конвертим из одного lossless в другой (ape-flac, в моём случае) промежуточно кодируем в wav; при этом нужно отключать дитеринг и битность, а также отключить все фильтры в processing, чтобы не привнести искажений в файл.
Спасибо.

0  
[37] Audiophile   (01 Марта 2015 11:35)
Зачем промежуточный WAV? Если foobar2000 налету кодирует из любого формата в любой.

Читайте последний пункт: http://audiophilesoft.ru/publ/my/delusions/11-1-0-80

[38] kit   (02 Марта 2015 01:42)
Спасибо, а то, что спектр иногда меняется при понижении разрядности, как на тех скринах, это на что-то влияет?

[34] Shargaas   (28 Сентября 2014 12:15)
А можно ли из цепочки DSP исключить Advanced Limiter, а вместо него использовать ReplayGain? Спасибо.

0  
[35] Audiophile   (01 Октября 2014 10:51)
Нет, т.к. RG стоит сразу после декодера, а клиппинг возникает позже.

[33] sanya_kharkov   (02 Июня 2014 01:56)
Подскажите пожалуйста, как при преобразовании + ещё увеличить громкость трека? Спасибо.

[32] Shargaas   (16 Апреля 2014 20:24)
А если нужно понизить только разрядность (44.1/24 → 44.1/16). Делаем все вышеописанное? Спасибо!

[31] Daffy   (26 Февраля 2014 01:00)
А что это за расчудесный дизер с нойсшейпингом у Фубара? Хотелось бы изобразить такой же в Саундфорже.

[29] Kolen1423   (09 Января 2014 23:56)
Здравствуйте !
Я режу CUE файлы 24/192 000  (потреково) на выходе у меня тоже 24/192 000.Так после того как я выбрал "Flac" мне в "Dithering" поставить "всегда" или "никогда" ?
Дело в том что вы описывали в этой статье для Wav и на "16 бит".,а у меня "Flac" и 24/192000.
Спасибо !!!.

[30] Audiophile   (10 Января 2014 04:07)
Дезеринг нужен только при понижении разрядности.

[28] Killjoy   (15 Декабря 2013 19:17)
Скажите можно ли создать Audio CD из хай рез материала без предварительного преобразования Если конкретно то какой плагин добавить для изменения битности в 16? Спасибо

[27] lexchz   (25 Ноября 2013 13:02)
Есть образ SACD, для преобразования в 44.1/16 делал так: установил для фубара Super Audio CD Decoder Input PlugIn, в его настройках поставил: ASIO Driver Mode - DSD, PCM Volume +0dB, PCM Samplerate 44100, DSD2PCM Mode - MultiStage (float point). Ну и далее в настройках конвертации поставлена битность 16 и включен Dithering.

Правильно ли я делал, или такой способ к искажениям приведёт?

1-15 16-30 31-38
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Авторские статьи
Сообщество
Последнее на форуме
Кодеки
TAK FLAC APE WV
MPC OGG AAC/ALAC MP3
WMA TTA OFR LA
Теги
Follow me
Twitter YouTube
Google+ Facebook
Полезные ссылки
Copyright Taras Kovrijenko © 2009–2016