ZXNet эхоконференция «music.zx»
тема: Вот блин, обещал производительный алгоритм запостить
от: Valery Grigoriev
кому: All
дата: 11 Jan 2006
Hello, GriV
а сам никак
В общем тут такая проблема есть.
У меня после кодирования получается почему-то очень грязный сигнал (для кодера
с регулируемым сжатием) - я как не пытался от "грязи" избавиться - ничего не
получается. Поэтому на данный момент времени лучшим остаётся кодер который
приведён выше - всего 9 секунд зато самого отличного звучания.
Пока нет времени, но обязон соберу программу для более производительного
(который в 1,5 раза быстрей) кодера.
И кстати, кто будет пользоваться дам совет - как повысить результат
конвертирования. Дело в том, что внутри кодера используется линейная
апроксимация, которая вообще то говоря даёт очень низкое качество интерполяции,
а в среднем кодер делает четыре отсчёта за 1 слово потока WAV. Потому откройте
нормальный звуковой редактор - например soundforge - и интерполируйте исходный
44кгц 16бит стерео сигнал (скорей всего такой у вас и будет) в 150кгц [именно
такая частота - при превышении возможны ошибки кодера] 16 бит стерео и только
после этого объединяйте каналы (150кгц 16 бит моно), а полученный файл
подсовывайте программе-кодеру. Звучание я сравнивал не раз, однако тут есть
такой нюанс - интерполированный сигнал программа сжимает с бОльшей ошибкой (там
есть оценка качества сжатия) чем неинтерполированный, хотя на слух наоборот -
качество звучания просто значительно улучшается. Метод вычисления ошибки я
менял, ничего не изменялось, короче оценку можно использовать только так - чем
меньше она для конкретного взятого файла тем лучше (-% ошибка аппроксимации
вообще параметр малозначимый - так что её можно смело выкидывать (-%.
|