Как так? (кодек mp3 без обрезания верха)

  • Автор темы Автор темы Unm
  • Дата начала Дата начала
В принципе, при сведении или мастеринге срезают выше 20кГц. Почему?[/quote

С чего вы взяли что все срезают выше 20кГц ? Из собственной практики ?

1. Не каждая акустика выдаст выше 20 кГц. Вернее - редкая акустика выдаст выше 20кГц.
Очень многие профессиональные мониторы, вернее, практически все.
2. Люди в большинстве не слышат выше 20 000 Гц.
Это спорно, но абсолютно точно, что они воспринимают сотни кГц.
3. Выше 20 кГц практически нет полезной информации.
Ещё в 70-годы были попытки синтезировать звучание рояля, с помощью многочисленных тестов было установлено, что для достаточно достоверной имитации при аддитивном синтезе необходимо как минимум 49 обертонов. На эту тему было получено авторское свидетельство. Лично читал в те же годы в Патентной библиотеке.
49 - не так уж много, посчитайте какие это частоты.
 
С чего вы взяли что все срезают выше 20кГц ? Из собственной практики ?
Не из своей. Я выше писал.
этому учат практически все обучающие курсы и видео от профессионалов по сведению и мастерингу (которые я видел). Они ведь так и говорят, что акустика не воспроизводит эти частоты, значит они и не нужны.
Ну и речь конечно не о студийных мониторах, а акустических системах для целевой аудитории. Например среди моих знакомых, не связанных со звукозаписью, нет ни одного, кто имел бы дома студийные мониторы для прослушивания музыки. Зато слушателей flac через затычки за 5$ через одного...
Rarr, я думаю, что мы с вами хорошо понимаем о чем тут говорим, и вы и я. Понятно, что обрезать частоты личное дело каждого. Я например, низ обрезаю до 30 Гц, а верх когда как. Или обрезаю или нет, обрезаю скорее как дань просмотренным видео, впрочем не находя для себя никаких других причин этого не делать...:blink:
Но в этой теме речь идет о мп3 формате. При ковертации в мп3 теряется СТОЛЬКО полезной информации, что о информативном восприятии выше 20 кГц говорить и не приходится. По крайней мере там настолько мал её уровень, что от неё останутся скорее лишь артефакты.
Ещё в 70-годы были попытки синтезировать звучание рояля, с помощью многочисленных тестов было установлено, что для достаточно достоверной имитации при аддитивном синтезе необходимо как минимум 49 обертонов.
В итоге, сделали семплы размером в килобайты, что бы всунуть в синтезаторы-ромплеры. Вобщем не стали заморачиваться и решили ограничиться математикой на бумаге.
Чета не пошло видать, раз за 40 лет так и не синтезировали ничего путнего... Насколько я знаю, более-менее стОящие рояли в синтах всеравно используют сэмплирование, а не синтез.
 
Последнее редактирование:
Как так? Битрейт mp3 всего 192Kbps, а верха не порезаны и звучит не хуже 320Kbps?
Если есть здесь те, кто разбирается в mp3-кодировании, объясните, пожалуйста.

Мне нравится как это делает самплитуда от мэйджикс ) ,очень качественно...хотя это может мои какие заморочки ) ...но для себя ничего лучшего или такого же пока не открыл )
 
Уменьшение спектрального диапазона еще не самый большой недостаток кодирования, как мне представляется. Если бы мп3 звучал просто со срезанными верхами, как старый магнитофон, было бы замечательно.. Вот, эффект "расфазировки" спектра, размывание чёткости картинки, трансиентов куда более неприятны на мой слух. Хотя, возможно, это всё признаки одного процесса выпаданий в спектре...
 
тут главное понять как работает эм-эр-зе и все остальные системы пожатия с потерей данных.

физика примерно такова. есть разложение в ряд фурье, которое дает частотное представление сигнала.
вообще при помощи корелляции раскладывать сигнал можно в любой ряд, НО ряд фурье дает т.н. ортогональность преобразований. то есть при помощи обратного преобразования мы получим исходный сигнал. ряд фурье определяется длиной преобразования. допустим если мы преобразовываем 1024 семпла сигнал с семплрейтов в 44100Hz, то самая нижняя частота будет 44100/1024=43Hz, следующая - в два раза больше (86Hz), следующая в 3 раза больше (129Hz) и т.д. половина частот будет находится выше частоты нойквиста и образовывать "фантомные частоты". их можно отбросить...

не суть. в результате мы заместо 1024 семплов получим 512 пар коэффициентов для набора частот 43, 86, 129, 172, 215, 258, 301 и т.д. это коэффициенты принято обозначать как Re и Im. Re - амплитуда на частот, Im - фаза на частоте. тут нужно заметить, что количество информации для кодирования сигнала не изменилось. как было 1024 значений, так и осталось. НО для битрейта в 128kpps нам надо оставить всего то 10% (!!!) процентов исходной информации. а как это сделать?

мягкий ход конем N1:
как мы уже знаем, частоты в ряду фурье идут линейно. соответственно максимальное разрешение мы получим именно на ВЧ. вот кусок ряда фурье для 1024 точек для ВЧ - 18189Hz, 18232Hz, 18275Hz, 18318Hz, 18361Hz и т.д. памятую, что что частота нойквиста для 44100 = 22050Hz и как правильно сказал Юрий Иванович что человек редко слышит выше 16-18kHz, да и нефих там случшать (в этом мире ничего не может колебаться с такой частотой) можно сделать вывод, что если мы просто отсечем все что выше 16kHz то треть информации (16-22.05khz) будет излишней и просто обнулив ее мы экономим дисковое пространство не затрагивая при этом "рабочий диапазон".
причем увеливая размер выборки (допустим 2048 или 4096) количество "отсекаемой информации" увеличивается.

жесткий ход конем N2:
но нам мало! 30% сжатия - это ниочем! надо жать 90%. а как? в этом случае мы лезем в "рабочий диапазон" (20-16000). в данном случае нам поможет такая особенность слуха как "слуховая маскировка". смысл этого явления в том, что если один сигнал перекрывает другой по спектру и громче его, то мы не слышим первый сигнал. это когда ты разговариваешь с собеседником и мимо проходит поезд. ты перестаешь слышать что говорит собеседник, так как шум поезда маскирует его голос. то есть, если на какой то частоте мы имеем большую амплитуду сигнала, а на соседних - малую, то мы можем просто отсечь соседние частоты (обнулим значения Im и Re) опять сьекономив место на диске.
то есть кодек берет допустим 24 идущих подряд частоты, выбирает из них 2 с максимальной амплитудой, а остальные - просто херит. само собой, что алгоритм чуть сложнее, но смысл его именно в этом.

жесткий ход конем N3.
есть еще один способ сьекономить дисковое пространство. это понизить разрешающую способность. допустим вы имеете изначальный битрейт 16bit. то есть каждая частота в ряду будет кодироватся двумя значениями по 16 bit каждое. из этих значений мы можем точно вычислить амплитуду и фазу нужного синуса. НО можно уменьшить битность значений допустим до 8 bit. но при этом точность фазы и амплитуды сильно пострадает. НО нам больше важна амплида, нежели фаза. поэтому можно пересчитать коэффициенты так чтобы амплитуда вычислялась максимально точно, а фаза - как получится. не знаю, применяет ли кто нибудь этот способ для кодирования аудиоданных, он больше нашел применение в сжатии картинок.

ИТОГО: зачем же я писал всю эту научную хрень? собственно, чтобы дать ответ на самый первый вопрос. если посмотреть методы сжатия, то я бы предпочел порезанный до 16kHz сигнал прореженному или с пониженной разрядностью. ИМХО само собой.
 
Последнее редактирование:
для достаточно достоверной имитации при аддитивном синтезе необходимо как минимум 49 обертонов. На эту тему было получено авторское свидетельство. Лично читал в те же годы в Патентной библиотеке.
49 - не так уж много, посчитайте какие это частоты.
обертонов или гармоник? не любые обертоны гармонические, так что "посчитать" тут не получится. Дак про что был патент? Про то, что при 49 гармониках форма волны будет более похожа на исходник? Я открою секрет страшный - а при 149 еще больше. Обычный курс ТОЭ. "необходимо" для чего? чтобы слушатель не услышал разницы? Дак это недоказуемо. Потому что потребует для доказательства, как минимум, систему воспроизведения, которая в состоянии излучить эту самую 49-ю гармонику. Какие методики были использованы при анализе исходного эталонного звука? Нашли систему записи, записывающую 49-ю гармонику? Пока ерунда получается. Не таким корявым языком пояснить можно? Как бэ профессиональный разговор, не? Дак что там было в патенте?
 
НО нам больше важна амплида, нежели фаза. поэтому можно пересчитать коэффициенты так чтобы амплитуда вычислялась максимально точно, а фаза - как получится. не знаю, применяет ли кто нибудь этот способ для кодирования аудиоданных, он больше нашел применение в сжатии картинок.
Это применяется в алгоритме SBR синтеза высоких частот в форматах mp3PRO и HE-AAC: там при кодировании сохраняются приблизительные амплитуды ВЧ-сигнала, а фазы полностью отбрасываются. В стандартных же алгоритмах mp3 и AAC такого нету; там используется косинусное преобразование, которое дает действительные (а не комплексные Im и Re) субполосные сигналы. Кстати, в сжатии картинок я тоже не знаю случаев отбрасывания фазы, там она даже важнее амплитуды.
 
"необходимо" для чего? чтобы слушатель не услышал разницы? Дак это недоказуемо. Потому что потребует для доказательства, как минимум, систему воспроизведения, которая в состоянии излучить эту самую 49-ю гармонику.
Скорее всего, 49 гармоник нужно для достоверного воспроизведения именно басовых нот фортепиано (напр., 40 Гц * 49 = 1960 Гц). А для верхних нот хватит и нескольких гармоник (учитывая, что у них основной тон уже выше килогерца).
 
> там используется косинусное преобразование, которое дает действительные (а не комплексные Im и Re) субполосные сигналы.

DCT type 4 по сути тот же DFT. формально там не Re и Im, но значения те же :)

> Кстати, в сжатии картинок я тоже не знаю случаев отбрасывания фазы,

sorry имел в виду принцип понижения разрядности. насколько помню а jpg RGB переводится в другую систему (LAB?) и в одном из каналов понижается битность...
 
Последнее редактирование:
формально там не Re и Im, но значения те же
Из Re и Im легко получить амплитуду и фазу. А разные коэффициенты DCT соответствуют разным частотам; как их перевести в амплитуду и фазу — неясно (да и не нужно).
 
Скорее всего, 49 гармоник нужно для достоверного воспроизведения именно басовых нот фортепиано (напр., 40 Гц * 49 = 1960 Гц).
Ну там сложнее тембр, там кроме гармоник есть и негармонические составляющие, которые сильно выше.
 
> А разные коэффициенты DCT соответствуют разным частотам;
> как их перевести в амплитуду и фазу — неясно (да и не нужно).

не совсем так ИМХО. если мы умножим сигнал на какой то косинус или синус и сложим получившие значения то получим амплитуду этого косинуса в сигнале. НО эта амплитуда будет справедлива только для той фазы в которой был исходный косинус. и эта информация нам абсолютно ничего не дает. чтобы найти реальную амплитуду этого косинуса в сигнале надо умножить его на косинус и синус или косинус смещенный по фазе на 90гр. только в этом случае мы сможем получить реальную амплитуду. докучи и фазу :) если посмотреть что из себя представляет косинусное преобразование, то там можно найти и косинусы и синусы (косинусы повернутые на 90) ...
 
если мы умножим сигнал на какой то косинус или синус и сложим получившие значения то получим амплитуду этого косинуса в сигнале. НО эта амплитуда будет справедлива только для той фазы в которой был исходный косинус. и эта информация нам абсолютно ничего не дает.
Что-то я не понял: мы на один косинус умножаем или на все косинусы из DCT? Вы сначала про одно, потом про другое.


если посмотреть что из себя представляет косинусное преобразование, то там можно найти и косинусы и синусы
Я этого не вижу. Вижу только косинусы, и все — с различными частотами. Если бы частоты совпадали, то можно было бы говорить о сдвиге фаз. А так — нет.
 
> Вижу только косинусы, и все — с различными частотами.

sorry, сейчас глянул - так и есть. еще раз sorry, с DCT не работал никогда за ненадобность.
ну тогда с эм-эр-зе все еще проще. можно только херить частоты ...
 
вообще интересно, а почему именно DCT взяли за основу а не DFT? да, считать быстрее, но с FFT можно более сложно слух обманывать ...
хотя, хрень это все. обман слуха он и есть обман слуха. с современными бендвисами и емкостью носителей надобность эм-эр-зе сводиться к минимуму.
 
Для изображений DCT взяли потому, что оно прилично аппроксимирует разные значения функции на левой и правой границе отрезка. Посчитали статистику: какое из быстрых преобразований (DFT, DCT, DST) наилучшим образом компактирует энергию сигнала (т.е. будет эффективным для сжатия). Оказалось, что DCT. Сейчас есть более современные быстрые преобразования с перекрытием, достигающие более эффективной компрессии (ELT, GenLOT, Wavelets). Но стандарт JPEG уже устоялся, и его не будут менять из-за 20% выигрыша в битрейте.

Для аудиосигналов используют вариант DCT (MDCT) как единственно известный (на тот момент), позволяющий перекрывать окна по времени и не увеличивать от этого количество коэффициентов. Перекрытие окон важно, чтобы на стыках окон не было щелчков (в JPEG от этого видна блочность). Можно брать и другие преобразования с перекрытием окон, большой разницы не будет. Но стандарты уже устоялись.
 
  • Like
Реакции: greennoise
> перекрывать окна по времени и не увеличивать от этого количество коэффициентов

блин, точно! с FFT после изменений окна не сойдутся, а перекрытие добавит информации в два раза ...

> Но стандарты уже устоялись.

аминь!
 
Там используется Fraunhofer.
Стыдно сказать , но я использую самплитуду редко , в качестве конвертера в мп3 , когда требуется низкий битрейт (192кб/сек) и мягко говоря не совсем легально ) ...Кто то может посоветовать более дешёвую альтернативу или даже бесплатную ) , с этим кодеком ? Был бы очень , очень благодарен ....смотрел на сайте производителя , но как понял Fraunhofer делиться им, как LAME , не хотят )) ...
 
  • Like
Реакции: AL.L
насколько помню а jpg RGB переводится в другую систему (LAB?) и в одном из каналов понижается битность...
применяемый для видео M-JPG в системе YUV - при той же битности она имеет больший диапазон - но только яркостную Y оставляют без изменений, а цветоразностные U & V прореживают по частоте выборки вдвое или вчетверо, тем самым в итоге уменьшая суммарную битность
или даже бесплатную
ПРО версия фраунхоферовского кодека уже встроена в винду c:\Windows\System32\l3codecp.acm - нужен только фрон-энд к нему или софт умеющий им пользоваться. Напр. http://gx.germanixsoft.de А по умолчанию этим кодеком пользуется виндовый медиа-плеер для рипа компакт-дисков…
 
Последнее редактирование:
  • Like
Реакции: AL.L
greennoise
Вот спасибо вам друг !! Я и не знал , что есть бесплатная версия !! ))

ПРО версия фраунхоферовского кодека уже встроена в винду c:\Windows\System32\l3codecp.acm - нужен только фрон-энд к нему или софт умеющий им пользоваться. (по умолчанию этим кодеком пользуется виндовый медиа-плеер для рипа компакт-дисков)

в этом вся и проблема , но спасибо , не знал что там такой кодек !
 

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