Показать сообщение отдельно
Старый 01.11.2013, 12:10   #15
Каток
Старейшина
 
Аватар для Каток
 
Регистрация: 16.03.2009
Адрес: Киев
Сообщений: 2,301
Вы сказали Спасибо: 306
Поблагодарили 565 раз(а) в 236 сообщениях
Репутация: 1023
По умолчанию Re: Музыкальная компиляция с HD исходников специально для Autozvuk.org

Цитата:
Сообщение от juris.sq Посмотреть сообщение
есть масса программ, как вы и говорили, надо сравнить. а то с soundforge сложно ИМХО
Сложно, говорите?
Но ведь не все йогурты одинаково полезны.
Понятно что программ конвертации есть масса, как и программных аудио-плееров. Но никто же не спорит, что воспроизведение встроенным в Винду майкрософтовским плеером радикально отличается от звучания той же записи через Фубар? а ведь задача казалось бы совсем простая. Никакой конвертации, считывай из файла отсчёты да запихивай их в звуковуху - делов-то! Тем не менее, даже тут, оказывается, у разных программ качество получается разным.

А даунсемплинг в некратные частоты дискретизации и разрядности - задачка посложнее, чем воспроизведение. Легко сделать даунсемплинг, если частоты и разрядности кратные. Например, 24/192 перегоняется в 24/96 простым выбрасыванием каждого второго отсчёта: первый сохраняем, второй выбрасываем. Третий сохраняем, четвёртый - в урну. ...и так далее. При этом оставшиеся отсчёты пересчитывать каким либо образом не нужно. Точно так же и при даунсемплинге 88.2 в 44.1кГц.
А вот при перегонке например 24/96 в 16/44.1 задача намного сложнее. Из-за некратных частот дискретизации отсчёты в исходном и результирующем файлах крайне редко совпадают по времени, чаще всего отсчёт записи 44.1 будет находиться по времени между двумя соседними отсчётами 96кГц. Причём не посередине, а немного ближе к одному их них.
Из-за этого возникает задача экстраполяции, вычисления какой должна бы быть амплитуда сигнала в это мгновение. Но поскольку сигнал у нас музыкальный, то есть с точки зрения математики - практически случайный, то экстраполированное значение всегда будет немного отличаться от реального значения. Это называется ошибкой экстраполяции, и её величина зависит от того, насколько "умный" алгоритм восстановления применён в программе.
А то что не все программы одинаковые, это мы уже выясняли...
Кстати, кроме экстраполяции по времени, есть ещё экстраполяция по разрядности. Ведь вычисленная амплитуда нового отсчёта будет вынужденно округляться до ближайшей "ступеньки" 16-битного ЦАПа.

Из этого можно сделать два вывода:
- желательно, чтобы фонограмма от микрофона до ЦАПа прошла через экстраполяцию как можно меньше раз;
- если и приходится делать экстраполяцию, то для получения максимально качественного результата, желательно брать самую продвинутую математику.

А в таком случае, может стоит один раз разобраться с Sony SoundForge и въехать, как им рулить?
Каток вне форума   Ответить с цитированием Вверх