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

|
Стоит казалось бы банальная задача: Сигнал с опорной частотой 44.1 кГц преобразовать в сигнал с частотой 48 кГц. Алгоритмы с FFT по некоторым причинам не подходят, поэтому было решено использовать интерполяцию. Но коэффициент 1.088 и звуки вплоть до всеми любимых 20 кГц пока что ставят нас в тупик. Алгоритмы Lanczos, B-Spline, Mittchel, Sinc результат дают, но где-то гармоники зашкаливают, где-то частоты урезаются. В первую очередь интересуют минимальные гармонические искажения, задача вторая по степени важности - минимальный срез АЧХ. Может быть есть более подходящие для обработки звука алгоритмы? Подскажите, пожалуйста!
|
|
|
|
|
 |
Ответов
|
Nov 17 2011, 13:57
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Fast @ Nov 17 2011, 17:44)  а зачем здесь к полифазному фильтру еще и лагранж(или фарроу) ? тогда уж upsampling в 2 раза с помощью ФНЧ КИХ-фильтра, а там уже и Лагранж 6-8 узлов (Lanczos, B-Spline) для понижения 88.2->48 Хотите умножайте нули после upsampling, обычно это полифазной структурой КИХ фильтра делают. Цитата(soolo @ Nov 17 2011, 17:50)  Лишнего преобразования частоты тоже хотелось бы избежать. Ничего лишнего и нету с помощью полифазного фильтра промежуточные отсчёты вычисляются для нормальной работы дробного интерполятора Лагранжа(Фарроу).
|
|
|
|
|
Nov 17 2011, 14:16
|
Местный
  
Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839

|
Цитата(petrov @ Nov 17 2011, 17:57)  Хотите умножайте нули после upsampling, обычно это полифазной структурой КИХ фильтра делают. зачем же нули умножать в 21м веке.. смысл исключительно расширении полосы, чтобы не "накрыть" полезные составляющие спектра сигнала неравномерной частью АЧХ фильтра Лагранжа в этом случае Лагранж можно успешно применять как на up- так и на down- sampling на любую дробную частоту полифазные фильтры же мне кажутся громоздкими, но правда, не знаю , насколько они удобны в FPGA-реализации
|
|
|
|
|
Nov 17 2011, 14:26
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Fast @ Nov 17 2011, 18:16)  зачем же нули умножать в 21м веке.. смысл исключительно расширении полосы, чтобы не "накрыть" полезные составляющие спектра сигнала неравномерной частью АЧХ фильтра Лагранжа в этом случае Лагранж можно успешно применять как на up- так и на down- sampling на любую дробную частоту полифазные фильтры же мне кажутся громоздкими, но правда, не знаю , насколько они удобны в FPGA-реализации Вы понимаете что Цитата(Fast @ Nov 17 2011, 17:44)  тогда уж upsampling в 2 раза с помощью ФНЧ КИХ-фильтра это и есть полифазный фильтр, если нули не умножать, а поменять местами upsampling и КИХ ФНЧ?.
|
|
|
|
|
Nov 17 2011, 14:36
|
Местный
  
Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839

|
Цитата(petrov @ Nov 17 2011, 18:26)  Вы понимаете что это и есть полифазный фильтр, если нули не умножать, а поменять местами upsampling и КИХ ФНЧ?. да, при упрощении. Но up-samp в 2 раза и re-samp на произвольную частоту с помощью полифазного фильтра все же разные вещи.
|
|
|
|
|
Nov 17 2011, 15:04
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Fast @ Nov 17 2011, 18:36)  да, при упрощении. Какое нафиг упрощение? О чём вы? Это есть натуральный полифазный фильтр. Цитата(Fast @ Nov 17 2011, 18:36)  up-samp в 2 раза И не обязательно в 2, в зависимости от необходимого качества может и больше потребоваться. Цитата(Fast @ Nov 17 2011, 18:36)  re-samp на произвольную частоту с помощью полифазного фильтра все же разные вещи. Про это речи вообще не было.
|
|
|
|
Сообщений в этой теме
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 soolo Забыл сказать в начале топика. Лишнего преобразова... Nov 17 2011, 13:50      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 да как-то не верю, что все хорошо и звона нет
sool... Nov 18 2011, 17:37 soolo Цитата(Fast @ Nov 18 2011, 20:37) да как-... Nov 18 2011, 20:02  soolo Цитата(soolo @ Nov 18 2011, 23:02) Осталс... Nov 21 2011, 06:26   Fast Цитата(soolo @ Nov 21 2011, 10:26) Как и ... Nov 21 2011, 07:08    soolo Это не Ланцош понизил уровень, это я не мог записы... Nov 21 2011, 07:35 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
|
|
|