Другие языки программирования и технологии

работа со звуком, алгоритм изменения дискретизации Wav файла? (статйку хотя бы :)

у меня задача на С++ написать конвертер из Wav файла в тот же Wav но с другой дискретизацией и битностью.
причем с меньшей частоты дискретизации в большею.

Может кто сталкивался с этой темой?
какой алгоритм, формула получения промежуточных занчений между 2мя сэмпалми входного файла для получения например 4х сэмплов выходного. .

-----------
уже отчаялся, что проще wav формата, и задача тривеальная - изменить частоту дискретизации wav в большею сторону.
но уже по таким дебрям матлаба прошелся что голова кругом
Импульсно-кодовая модуляция; Квантование; Теорема Котельникова; Экстраполятор первого порядка; ряд Фурье; ЦОС и алгоритмам. я уже молчу про сторонние статьи "не в тему" пришлось прочитать типо как про кривые бизье.
Да, с помощью любой интерполяции (в том числе и Котельниковской) Вы можете получить решение и по частоте дискретизации и по битности. Другое дело зачем Вам это надо, для какой цели? Если для совместимости с каким либо плеером - то имеет смысл. Качество при этом не увеличится. Шумы, конечно могут появиться при неправильном выборе интерполяции (кстати интерполяция по Котельникову как раз лучше здесь подойдёт) , но это не то, о чём можно говорить, если у Вас не очень музыкальный слух. Но желаемых истинных верхних частот корректируемого музыкального произведения точно не будет!
Викулов Александр
Викулов Александр
76 473
Лучший ответ
wav по сути это просто поток амплитуд с определенной дескретизацией.
Для перехода к другой дескритизации достаточно синтерполировать значения не другие временные отсчеты.
В принципе, любым способом, но лучший результат, скорее всего, даст интерполяция 3-й степени.
Кстати, Фурье в данном случае бесполезен, т. к. достаточно интерполировать только близлежащие отсчеты, а не весь период гармоники.
Задача абсолютно ТРИВИАЛЬНАЯ и описана в куче учебников (как по программированию, так и по по математике) .
Вопрос в другом.
На сколько я знаю, плееры воспроизводят wav только с определенными (заранее заданными) частотами.
В любом случае, это легко узнать, прочитав спецификацию wav-файлов.
ZO
Zero One
80 500
Ты знал что от компа мозги протухнуть могут, так что ты давай это, завязывай с этим!
Я тебе открою страшною тайну за окном есть жизнь и она кипит. Выкинь ту уже комп займись спортом гуляй, найди женшину, начни ценить каждый день!