Блог Андрія Огороднікова Хто з мечем до нас прийде, від меча й загине.

Resampling

22.04.2021, 03:58

В первую очередь при кодировании в MP3, нельзя обойти важнейший вопрос — ресемплирование музыки «высокого разрешения».

Люди с планеты Теплая Лампа слышат частоты более 192 килогерц, но почему-то вынуждены жить на планете The Мля, где самый гениальный мутант не услышит звук выше 20 килогерц, а если услышит, то лишится слуха (ровно так же, как желающий увидеть, там, гипертемнокрасный цвет ослепнет, если выдать его волну с нужной для «разглядения» силой света). Однако, умное, индифферентное к проблемам физиологии оборудование позволяет создавать высокочастотные записи, даже если это просто один сплошной бесполезный шум.

[Нет, вообще!, если бы мы слышали высокие и низкие частоты и видели ультрафиолет и инфракрасъ — наше развитие как биологического вида было бы специфически усложнено. Понятие «тишины» и понятие «темноты» для нас бы не существовало. Сказалось ли это бы, за миллионы лет, на развитии «человека» в худшую или лучшую сторону, судить крайне сложно, но то, что это была бы иная цивилизация — совершенно очевидно. И не факт, что в принципе цивилизация бы сформировалась. Может, все инфраультраобезьяны взбесились бы еще на ранних этапах девелопмента, задолго до превращения в мальчиков и девочек из Турканы, и сигали бы в Великие Африканские разломы от неизбывного отчаяния… Или летали бы к звездам и управляли движением и наклоном планеты, во избежание наступления еще Днепровского оледенения.Ъ

Але, маємо те, що маємо.

Сейчас, в принципе, все сложнее и сложнее найти нормальный рип в 16 бит и 44,1 кГц, даже 24-96 канули в водовороты клозетов ламповиков — только 192 минимум. И с этим надо что-то делать — пользователю, после скачивания. (А еще лучше покупать музыку в таком виде, в каком хочется, но это тоже проблема при современном маркетинге: в угоду прибылям и трендам ВСЁ выкручивается на максимум, даже там, где это означает смерть авторского музыкального произведения, замученного коммерческим мастерингом… Но это совсем иная история, бес_просветная).

Так вот — я благодарен уважаемым ламповитяням, что они нам — грешным глухим убогим — достают и отдают шедевры, раритеты и прочие ценности высокого музыкального мира. Кроме шуток, спасибо вам за ваше сверхтеплое горение, даже если оно противоречит упрямой скромной забытой физике. Нет, можно только порадоваться, что у людей есть возможность покупать платиновые кабеля и лампы из красного дерева, и переплачивать тысячи и тысячи настоящих единиц за какой-нибудь мифический первопресс. Так выпьем же за кибер… ээ чтобы наши желания совпадали с возможностями.

Несколько лет назад я бухал разговаривал с одним приятелем-КПИшником, который собирался даже защищаться по каким-то радиотехническим проблемам… Я, конечно, с оказией, поинтересовался 100500 килогерцами. Он как настоящий профи в этом деле — яростный (даже чересчур) ненавистник всей этой.. неда.. близкой теплолампо-мегагерцной мишпухи. Мой осторожный вопрос вызвал цунами эмоциональной лекции, где он грохотал от Бореля до Шеннона, взывая к светлым духам Нюквиста и Котельникова…

Все это можно свести к двум тезисам: «сверх»высокие частоты мало того, что не слышны уху человеческому, их существование в записи при воспроизведении на стандартном оборудовании (даже очень распальцованном) дает наводку на слышимые частоты, искажая их! И, чтобы этого избегнуть, надо выводить высокие частоты отдельно, на специальное оборудование — на спецакустику, через спецусилители. Которое для человека будет просто стоять столбом, не издавая ни единого звука, но не внося «хаос» в само музыкальное произведение.

Я искренне надеюсь, что такие колонки из чистого иридиума на баобабовых ножках у всех труЪЪЪ меломанов есть. А что делать нам — напланетянам: и профессионалам, и аматорам, и дилетантам, которых объединяет любовь к музыке, а не к заатмосферным циферкам и ценникам?

Можно понадеяться на «передискретизацию», железно (в смысле, обязательно) осуществляемую звуковым чипом/картой «сколько они сами разумеют»…и могут..

Но прогрессивный метод — резать, не дожидаясь… теплового будущего Вселенной.

Sound eXchange

Есть отличная бесплатная штуковина, под названием SoX — консольная, но она прикручивается к фубару и есть в стандартных плагинах. Она много чего может делать, нескромно подразумеваясь как «швец. арм. нож в мире музики». Но нас интересует сегодня простой ресэмплъ.

В самом простом случае, скачивается *zip с программой (sox.exe + библиотеки и мануалы там) и пишется батник элементарный:

sox.exe "input_file_24-192.flac" -b 16 "output_file_16-44.flac" rate -v 44100 dither 
pause

Чтобы оно работало, порядок написания ключей оказался важен — сначала входной файл, затем изменение «битности» (-b 16), потом желаемый выходной файл, и за ним составной ключ rate (-v в пределах него означает «very high [quality]»; по умолчанию, без ключей — «high» или -h) ну и искомые человеческие с запасом 44 кГц — по 22 кГц в уши.

|0o|

[16-битное кодирование аудиоданных дает динамический диапазон, превышающий 120 dB, это больше, чем человек может осилить и не оглохнуть. Пока мы не отрастим себе новые уши в процессе эволюции (или генной инженерии) — 16-ти бит квантования будет достаточно с запасом. 16 бит и 44 кГц — это потолок, чтобы воспроизвести ЛЮБОЙ звук, который сможет услышать человек.

24 бита нужны для работы с исходниками в студии, когда есть необходимость сводить множество записей, гарантируя себя от переналожения и переумножения шумов. Это было и остается профессиональной фичей, бесполезной на готовом для продажи материале… Но ключевое слово тут продажи. Маркетинг… Под этим соусом массам всучить можно любую несусветицу, и таковая будет схавана — с требованием добавки погуще…]

|0o|

[+ dither конечно же! в пресете качества -h он, как написано, автоматом задействуется, я не знаю, может быть =high= и достаточно для ресемплинга в 16 бит? Работает, кстати, очень быстро..]

Пауза полезна: если что-то идет не так — sox.exe выдает в консольное окно «help» с параметрами — очень удобно. Если батник работает, можно убрать, окно закроется само, без нажатия аникея.

sox ресэмплинг

Это еще не 192, а только 88.2.

Помимо того, что снижается нагрузка на вычислительные мощностя-с, наблюдается еще и экономия свободного пространства на жестком диске. Это, как, ну, я не знаю, холодильник: вы покупаете огромный задорого во всю кухню, а всунуть в него можно только одну курочку, и ту спрессованную в фаршъ. Понравился бы вам такой холодильник? Или телевизор, занимающий всю стену и показывающий до гамма спектра включительно (гыгыгы) с 15-дюймовым видимым экранчиком где-то в уголочке.

Здравый смысл, о — если бы он главенствовал всегда и везде! А еще научный подход, но это уже немыслимые требования на сегодняшний день?

-_-

Если перекодировать 24-192 (и выше) напрямую в aac (посредством qaac.exe) или opus — там изначально в энкодерах есть хорошие ресемплеры. А вот в Lame мптришный он вшит гаденький — и может вносить слышимые искажения. И увы, по сети гуляет немало конвертов из «высокочастотного» лосслесса в mp3, произведенных без промежуточного или предварительного ресемплинга нормальным инструментом.

-.-

src resampler

(Да, это вот пресеты конвертера одного из моих «рабочих» фубаров, они — foobar2000 портативные, чтобы разные эксперименты не мешать в кучу и не загромождать одно другим… Потом подробнее..)

Чтобы выделить и альтернативу (это всегда полезно) — в foobar2000 можно поставить и ресемплер под названием SRC — «Secret Rabbit Code resampler» — собственно, ни в том, ни в другом случае никаких особенных настроек нет. Зачастую, это и не требуется. Ресемплеры (эти) свое дело знают.

настройки кролика

Работает чуть медленнее SoX — но это не то, чтобы сильно заметно. Важно, что качество обеспечивается отличное. Не теряется НИЧЕГО стоящего наших несовершенных, но драгоценных ушей.