Upsampling

Dmitry Stepin

In trance me trust
12 Янв 2004
16.465
12.115
113
40
Москва
t.me
Ребят! Много уже сказано и много тестов проведено на понижение частоты дискретизации у вав-файлов. А как обстоят дела с ее повышением? Все программы одинаково конвертируют, скажем, 44,1 кгц в 96 кгц? При понижении понятно, что звук может немного портиться фильтром с очень крутым спадом и от реализации этого фильтра многое будет зависить. А при повышении ЧД что-то может портиться в звуке?
 
В принципе, алгоритмы апроксимации возможны различные... А вот существенность итоговых различий действительно под вопросом.
 
Ну на глаз максимальная разница будет лежать на 22кГц, точнее на половине исходной. Но амплитуда - мелочь...
 
Это какие задачи стоят перед ТС, что возникает такой вопрос?

Задачи самые обычные. Я большинство проектов пишу в 96 к, остальные в 48 к. Хочу быть уверенным, что я ничего не порчу в семплах, когда конвертирую их при добавлении в проект кубейсом.
 
KOTOPES, Уши говорят, что иногда как будто что-то изменяется в самом верху спектра, но это едва уловимое и не постоянное ощущение. Поэтому мне нужна еще и сугубо техническая информация.)
 
Предполагаю, что ничего не портится. Потому что многие плагины априори делают апсемплинг. Или я совсем тупой?))

KOTOPES, Уши говорят, что иногда как будто что-то изменяется в самом верху спектра, но это едва уловимое и не постоянное ощущение. Поэтому мне нужна еще и сугубо техническая информация.)

И тут предположу, что - психология.
 
Потому что многие плагины априори делают апсемплинг.

Оверсемплинг в плагинах это вообще отдельная история. У меня есть ощущение, что один и тот же плагин в 44,1 кгц с 2х кратным оверсемплингом и в 88,2 кгц, но без оверсемплинга - не одно и то же по звучанию. Особенно это касается синтезаторов.

И тут предположу, что - психология.

Поэтому мне и нужна четкая математическая информация))
 
  • Like
Реакции: Elle
Оверсемплинг в плагинах это вообще отдельная история. У меня есть ощущение, что один и тот же плагин в 44,1 кгц с 2х кратным оверсемплингом и в 88,2 кгц, но без оверсемплинга - не одно и то же по звучанию. Особенно это касается синтезаторов.



Поэтому мне и нужна четка математическая информация))

Я делаю проекты в 88.2 для кратности 44.1, и отбрасываю психологию на этом этапе) Но я понял ваш "замут". Думаю, надо прогуглить по зарубежному инету. (это я про себя)
 
Я делаю проекты в 88.2 для кратности 44.1, и отбрасываю психологию на этом этапе)

Насколько я помню, кратность вообще не имеет никакого смысла в этих пересчетах. Где-то на форуме уже обсуждали эту тему кратности. Но могу ошибаться.
 
Любой ап - дописываются циферки, не более. Как часто-много , не знаю , не пробовал. Да и надо ли ? На хит не влияет...
Это вы с кассетника класса ЮНость пишете на Ростов, типа?
 
А сделайте апсемплинг, и потом назад. Сравните файл с исходником в противофазе (по уровню получившейся какашки можно посмотреть)). Самому лень - спать иду)) Но интересно))
 
А поедет ли троллейбус без рогов?
А снесёт ли курица яйцо, если нет петуха
А земля действительно круглая и Бога нет ?
Гайз , вы чо? Неокрепшие умы решили потестить?
пОлно!
Впору указать на дверь ( Google, Wiki и прочая...)
 
как раз курю тему ресемплинга.
при повышении ничего не теряется в зависимости от алгоритма.
при целочисленном (х1, х2, х3 ....) - тупо в лоб вообще ничего не теряется, при дробном - есть преобразование, при котором ничего не теряется. вопрос - реализовано ли все правильно, но скорее всего что да, там не индусы сидят.
при даунсемплинге - есть сложности и разные варианты с трудоемкими вычислениями, и с упрощеными.
 
  • Like
Реакции: Shad и Arlekin
при даунсемплинге

Мы используем FinalCD и имеем суперчистяк)) Единственный из всех конвертеров (причем бесплатный), который не портит звук. (Izotope 64 еще есть, но где используется этот алгоритм мне неизвестно)
 
Теоретически - либо алиасинг (т.е. зеркальное отражение части спектра), либо часть частот будет задавлена фильтром, ну или нобелевская:)
Но - на слух - это вряд ли сильно заметно:) Только если вы от 18 кГц чего-то реально слышите:)

К вопросу "потерь": естественно можно сделать пару неких up\down (или наоборот) фильтров - которая восстанавливает ОДИН И ТОТ ЖЕ сигнал сам в себя (т.е. в точках без интерполяции - всё совпадёт, но это НЕ ЗНАЧИТ, что алиасинга в целевом домене нет и он не будет проявляться при обработке. Т.е., как бы, идеальный вариант для теста, когда необработанные сэмплы должны восстановиться один в один, а вот для остальных случаев - вопрос открытый и даже нмв весьма сомнительный...
 
С математической точки зрения, для увеличения частоты дискретизации в целое число раз сигнал разбавляется нулями, а затем проходит через НЧ-фильтр, подавляющий копии спектра, возникшие на первом этапе. Чаще всего при этом используются фильтры с линейной фазой; их влияние на сигнал заключается только в завале ВЧ в переходной полосе. Если фильтр крутой, то переходная полоса начинается в районе 20 кГц. У простых же фильтров, используемых в некоторых секвенсерах, завал может начинаться и значительно ниже: см., к примеру, АЧХ у Ableton 7. Изредка могут использоваться фильтры с нелинейной ФЧХ, в этом случае даже в полосе пропускания будет слегка неодинаковая групповая задержка. Насколько это влияет на звук — вопрос открытый, но вроде бы почти не влияет.
У многих фильтров подавление спектральных копий вблизи (чуть выше) Fs/2 неполное. Некоторые считают, что это может привести к искажениям интермодуляции в случае нелинейности тракта. Другим наоборот нравится, что спектр сигнала плавно продолжается в ультразвук.

Думаю, самый простой способ проверить качество SRC на слух — это сгенерировать «плавающий синус» от 0 до Fs/2, сконвертировать его и послушать. Можно также взглянуть на спектрограмму. Если алиасинга не слышно, то его не будет и при конвертации музыки.

А сделайте апсемплинг, и потом назад. Сравните файл с исходником в противофазе (по уровню получившейся какашки можно посмотреть)).
Этот тест не всегда сработает, т. к. SRC (даже хороший, типа iZotope) может вносить в сигнал задержку (latency) на дробное число отсчетов, которая не влияет на качество, но может затруднить вычитание результатов.
 
Извините, если не по теме, но последнее время встречаю сессии эстрадных/рок песен 96kHz лишь на постсоветском пространстве.
Греция, Германия, Франция (хотя я может не с теми ребятами работаю) используют для сессий:
- если делаем для радио, то изначально 44.1kHz
- если делаем для TV broadcast, то только 48kHz
- ну а если уж это запись академического оркестра, скажем для какого-то blue-ray диска, то только в этих случаях используются частоты дискретизации выше.

По теме топика:
Для конвертации из 44.1kHz в 48kHz чаще всего использую один из вариантов:
- если у меня финальный, отмастеренный файл, то перегоняю его с одного компа на другой, используя режим DD конвертора PrismSound
- если это сумма или стэм, зашедший в пульт 44.1kHz, то оцифровываю из аналога уже в 48kHz

И еще вопрос, давно меня волнующий, если не для записи симфонического оркестра и если вы не делаете саунд-трек к Бэтмену-5, то зачем вам 96kHz или даже 192kHz? В чем собственно соль?
Помогите, просветите (я серьезно), может быть я неверно мыслю, и если найдется хоть одна весомая причина использовать в моей ситуации что-то выше 48kHz, с радостью перейду на 96 / 192.
Пока лишь повышенные частоты дискретизации лишь осложняют творческий, рабочий процессы, более требовательны к компьютерам, посему буду признателен за весомый аргумент, закрывающий эти недостатки.
 
если не для записи симфонического оркестра и если вы не делаете саунд-трек к Бэтмену-5, то зачем вам 96kHz или даже 192kHz?
нмв есть несколько технических моментов (сразу скажу - сам я НИКОГДА не использую больше 48 кГц в проектах, но я дилетант-любитель):
- некоторые эффекты и синтезаторы могут звучать заметно по-другому (некоторым кажется, что "лучше"), т.к. они не используют оверсэмплинг, а таким макаром появляется возможность форсировать этот вопрос
- в цепочке эффектов могут стоять плагины с оверсэмплингом, каждый из них внутри использует фильтр, по-крайней мере при даунсэмплинге (если синтезатор), а то еще и при апсэмплинге (если эффект), если таких плагинов в цепочке много, тем более если качество фильтров низкое - то самый верх может поплыть, на высокой частоте дискретизации - вопрос снимается автоматом.
Это, кстати, для электроники вопрос характерен, т.к. там больше любителей поставить десять допотопных эффектов на любимый синт, а в симфо и акустике - до такого издевательства редко доходят:)
 
Думаю, самый простой способ проверить качество SRC на слух — это сгенерировать «плавающий синус» от 0 до Fs/2, сконвертировать его и послушать. Можно также взглянуть на спектрограмму. Если алиасинга не слышно, то его не будет и при конвертации музыки.

Так и сделал. Результаты в аттаче, если кому-то интересно послушать. Получилось, что аццкий алиасинг появляется, когда мы предпрослушиваем в кубейсе через import audio файл 44.1 при ЧД проекта 96к (т.е. при конвертации на лету). Это большой привет тем, кто слушает музыку в таком режиме)) При добавлении файла в проект (соответственно, при оффлайновой конвертации из 44.1 в 96) никакого алиасинга нет и в помине. Но есть разница при последующей конвертации из 96 в 44.1. Я сравнил кубейс 7 с Final CD - файлы в архиве, каждый может сам посмотреть. На слух разницу не улавливаю, но картинки получившихся файлов отличаются по самому концу.

Пока лишь повышенные частоты дискретизации лишь осложняют творческий, рабочий процессы, более требовательны к компьютерам,

Если компьютер достаточно мощный, то разницы в комфорте творческого процесса между 44.1 и 96 нет. Разница от повышения ЧД, как уже выше сказали, проявляется в работе синтезаторов и вообще многих плагинов. Не могу сказать, что эта разница кардинально влияет на результат, но определенные небольшие изменения она все-таки привносит. Они могут быть по вкусу, а могут быть и нет. Это решение каждый принимает самостоятельно. Главный вопрос лишь в том, связан ли переход на 96к с потерей комфорта в работе? Если да, то это будет вредить творческому процессу и тогда нет смысла переходить. А если нет, и проблемы с вычислительной мощностью нет, то хуже точно не станет от перехода на повышенные ЧД. Ну и отдельная тема - это если половина работы делается в аналоговом домене. Тут мне сложно что-либо посоветовать, так как я пока полностью в цифровой коробке))
 

Вложения

Последнее редактирование:
  • Like
Реакции: imemine и deemah
Хотел создать тему, но думаю мои вопросы вхожи сюда.

Т.к. большинство файлов в проекте у меня идут изначально в 96 кГц, мне нужно файлы 44.1 поднимать до 96. Используя RX5 я столкнулся с выбором: линейно-фазовый фильтр или нелинейно-фазовый фильтр. Слышал, что теоретически второй вариант лучше, т.к. имеет только после звон. Что выбираете вы?
Если использовать крутой фильтр(прямоугольный) в линейно-фазовом режиме, то это повлияет на увеличение предварительного звона. А на что повлияет крутой фильтр при использовании нелинейно-фазового фильтра?
Также мне нужно максимально сохранить изначальную АЧХ файла 44.1 при повышении до 96. В таком случае фильтр нужно ставить выше 22050?

Сделал тест с одинаковыми настройками положения (Filter steepness) и среза (Cutoff shift) фильтра, но с линейной фазой и с нелинейной. При тесте с вычитанием фазы(null test) тишины не вышло, было слышно высокие частоты. Я так понимаю это из-за влияния на фазу нелинейного фильтра. Получается изменение им фазы как-то влияет на высокие? Или вычитание в ноль не происходит из-за того, что фаза немного сместилась и высокие не при чём?
 
Последнее редактирование:
А на что повлияет крутой фильтр при использовании нелинейно-фазового фильтра?
На количество после-звона (либо общее количество звона, если фаза где-то между линейной и минимальной).


Также мне нужно максимально сохранить изначальную АЧХ файла 44.1 при повышении до 96. В таком случае фильтр нужно ставить выше 22050?
Да, либо использовать более высокую крутизну фильтра.


Получается изменение им фазы как-то влияет на высокие? Или вычитание в ноль не происходит из-за того, что фаза немного сместилась и высокие не при чём?
Именно так: амплитуды остаются теми же, но фазы смещаются. Поэтому вычитания не происходит. Можете установить Pre-ringing где-то между 0 и 1, тогда фазы будут совпадать на более широком отрезке частот.
 
  • Like
Реакции: Alexander Yakuba

Сейчас просматривают