|
Передискретизация звука методом интерполяции, подскажите качественный алгоритм |
|
|
|
Nov 17 2011, 11:35
|
Группа: Участник
Сообщений: 14
Регистрация: 17-11-11
Пользователь №: 68 362

|
Стоит казалось бы банальная задача: Сигнал с опорной частотой 44.1 кГц преобразовать в сигнал с частотой 48 кГц. Алгоритмы с FFT по некоторым причинам не подходят, поэтому было решено использовать интерполяцию. Но коэффициент 1.088 и звуки вплоть до всеми любимых 20 кГц пока что ставят нас в тупик. Алгоритмы Lanczos, B-Spline, Mittchel, Sinc результат дают, но где-то гармоники зашкаливают, где-то частоты урезаются. В первую очередь интересуют минимальные гармонические искажения, задача вторая по степени важности - минимальный срез АЧХ. Может быть есть более подходящие для обработки звука алгоритмы? Подскажите, пожалуйста!
|
|
|
|
|
 |
Ответов
|
Nov 18 2011, 20:02
|
Группа: Участник
Сообщений: 14
Регистрация: 17-11-11
Пользователь №: 68 362

|
Цитата(Fast @ Nov 18 2011, 20:37)  да как-то не верю, что все хорошо и звона нет soolo, не хочу показаться назойливым, а можно теперь файл после Ланцоша 48к прикрепить ? в последний разок Остался на работе. В понедельник обязательно поделюсь
|
|
|
|
|
Nov 21 2011, 06:26
|
Группа: Участник
Сообщений: 14
Регистрация: 17-11-11
Пользователь №: 68 362

|
Цитата(soolo @ Nov 18 2011, 23:02)  Остался на работе. В понедельник обязательно поделюсь Как и обещал http://dl.dropbox.com/u/23094927/L7_44_48.wav
Сообщение отредактировал soolo - Nov 21 2011, 07:18
|
|
|
|
|
Nov 21 2011, 07:08
|
Местный
  
Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839

|
Цитата(soolo @ Nov 21 2011, 10:26)  после Ланзоша уровень уменьшился на 3dB а теперь посмотрите спектрограмму и мгновенный фурье-спектр в р-не 1млн отсчета (редактор CoolEdit 2.0) скрины bmp http://depositfiles.com/files/gkpvj1ujiфайл 44100.bmp - исходный файл 48000ce.bmp - resampling с помощью CoolEdit файл 48000lanczos.bmp - ваш Ланцош, с усилением в 3дБ p.s. т.е. если непонятно, то скажу вкратце - качество ужасно (особенно это заметно в области линейной прозвонки р-н 870тыс. отсчета, см. выше 20кГц)
|
|
|
|
|
Nov 21 2011, 07:35
|
Группа: Участник
Сообщений: 14
Регистрация: 17-11-11
Пользователь №: 68 362

|
Это не Ланцош понизил уровень, это я не мог записывать сигнал с той же амплитудой - так уж получилось =) Результат не так и ужасен, особенно если учесть результаты других алгоритмов. Шумы на уровне -85 дБ нас устраивают Зато алгоритм на 100% гибкий и позволяет преобразовывать в любую частоту без увеличения вычислительной нагрузки. (Мы ушли от алгоритма "сначала увеличиваем частоту, затем уменьшаем" идёт только прямое преобразование.) Вот результаты тестов
Неравномерность АЧХ (в диапазоне 40 Гц - 15 кГц), дБ +0.02, -0.04 Отлично Уровень шума, дБ (А) -95.2 Отлично Динамические диапазон, дБ (А) 94.4 Очень хорошо Гармонические искажения, % 0.061 Средне Гармонические искажения + шум, дБ(A) -60.6 Плохо Интермодуляционные искажения + шум, % 0.033 Хорошо Взаимопроникновение каналов, дБ -97.9 Отлично Интермодуляции на 10 кГц, % 0.048 Хорошо Общая оценка Очень хорошо
Боюсь что следующая ступенька качества возможна только с помощью Фурье
Сообщение отредактировал soolo - Nov 21 2011, 07:41
|
|
|
|
Сообщений в этой теме
soolo Передискретизация звука методом интерполяции Nov 17 2011, 11:35 petrov Полифазные фильтры + интерполятор Farrow. Nov 17 2011, 11:39 soolo Цитата(petrov @ Nov 17 2011, 14:39) Полиф... Nov 17 2011, 11:56 soolo Цитата(petrov @ Nov 17 2011, 14:39) Полиф... Nov 17 2011, 18:53  Самурай Цитата(soolo @ Nov 17 2011, 21:53) Попроб... Nov 17 2011, 19:02  Fast Цитата(soolo @ Nov 17 2011, 22:53) Попроб... Nov 17 2011, 19:08   soolo Цитата(Fast @ Nov 17 2011, 22:08) фрагмен... Nov 18 2011, 07:19    Fast Цитата(soolo @ Nov 18 2011, 11:19) Да, ко... Nov 18 2011, 08:31     soolo Цитата(Fast @ Nov 18 2011, 11:31) исходны... Nov 18 2011, 08:48      Fast линейность ФЧХ принципиальна ?
Цитата(soolo ... Nov 18 2011, 10:26       soolo Ну вот и свершилось!
Lanczos и степень полином... Nov 18 2011, 12:14  petrov Цитата(soolo @ Nov 17 2011, 22:53) Попроб... Nov 18 2011, 07:39   soolo Цитата(petrov @ Nov 18 2011, 10:39) Плохо... Nov 18 2011, 08:24    petrov Цитата(soolo @ Nov 18 2011, 12:24) Расска... Nov 18 2011, 08:57 SPACUM Цитата(soolo @ Nov 17 2011, 15:35) Сигнал... Nov 17 2011, 12:31 soolo Цитата(SPACUM @ Nov 17 2011, 15:31) А по ... Nov 17 2011, 13:18  SPACUM Цитата(soolo @ Nov 17 2011, 17:18) Пробов... Nov 17 2011, 16:16 thermit Не надо ничего изобретать. Все уже изобретено.
htt... Nov 17 2011, 13:27 Fast а зачем здесь к полифазному фильтру еще и лагранж(... Nov 17 2011, 13:44 soolo Забыл сказать в начале топика. Лишнего преобразова... Nov 17 2011, 13:50 petrov Цитата(Fast @ Nov 17 2011, 17:44) а зачем... Nov 17 2011, 13:57  Fast Цитата(petrov @ Nov 17 2011, 17:57) Хотит... Nov 17 2011, 14:16   petrov Цитата(Fast @ Nov 17 2011, 18:16) зачем ж... Nov 17 2011, 14:26    Fast Цитата(petrov @ Nov 17 2011, 18:26) Вы по... Nov 17 2011, 14:36     petrov Цитата(Fast @ Nov 17 2011, 18:36) да, при... Nov 17 2011, 15:04      Fast Цитата(petrov @ Nov 17 2011, 19:04) Какое... Nov 17 2011, 17:18 thermit ЦитатаFast:
и каким же образом up-samp на полифазн... Nov 17 2011, 18:11 Fast Цитата(thermit @ Nov 17 2011, 22:11) Бере... Nov 17 2011, 18:31 Самурай Цитата(soolo @ Nov 17 2011, 14:35) Стоит ... Nov 17 2011, 18:45 Eger Цитата(Самурай @ Nov 17 2011, 21:45) Я не... Nov 18 2011, 10:12  des00 Цитата(Eger @ Nov 18 2011, 04:12) скажите... Nov 18 2011, 10:22   Eger Цитата(des00 @ Nov 18 2011, 14:22) а что ... Nov 24 2011, 13:33 alex_os Цитата(Самурай @ Nov 17 2011, 21:45) Я не... Nov 18 2011, 18:15 thermit Задаетесь ошибкой интерполяции для гармонического ... Nov 17 2011, 19:07 Alexey Lukin soolo, наиболее распространённый для аудиосигналов... Nov 17 2011, 19:42 thermit Цитатаsoolo:
Lanczos и степень полинома 7 дали иде... Nov 18 2011, 12:25 Fast попробуйте протестировать не в среднем по больнице... Nov 21 2011, 07:50 soolo Цитата(Fast @ Nov 21 2011, 10:50) попробу... Nov 21 2011, 08:10 Fast для интереса, т.е. чистоты эксперимента, попробуйт... Nov 21 2011, 08:10 soolo Цитата(Fast @ Nov 21 2011, 11:10) для инт... Nov 21 2011, 08:37  Fast Цитата(soolo @ Nov 21 2011, 12:37) . Я уж... Nov 21 2011, 11:59   petrov Цитата(Fast @ Nov 21 2011, 15:59) не могл... Nov 21 2011, 13:19 petrov Цитата(Fast @ Nov 21 2011, 12:10) для инт... Nov 21 2011, 08:40 thermit Цитатаsoolo:
Зато алгоритм на 100% гибкий и позвол... Nov 21 2011, 08:17 petrov Цитата(thermit @ Nov 21 2011, 12:17) Да у... Nov 21 2011, 08:30 shkal Посмотрите это, может быть интересно.
ad1896 datas... Nov 21 2011, 12:48
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|