Обновить

Комментарии 28

Крутейшая статья. Жаль, у меня кармы не хватает дать вам плюсик. Жаль, что не осветили поподробнее то, как появился МDCT! Бранденбург не сам это изобрел, но он дал название. Не будь этого изобретения, все форматы на спектральной трансформации были бы с щелчками, по 5 щелчков в секунду. Я смотрел лекцию Бранденбурга, где он это показывал на примерах классической музыки. В общем, спасибо за такую интересную статью! Я вообще фанатею с DCT и всем, что с этим связано. Будет здорово, если напишете что-то в таком духе про историю жпег, как все смеялись над Насиром Ахмедом, мол, слишком простой у тебя алгоритм, чтобы быть правдой

Я смотрел лекцию Бранденбурга, где он это показывал на примерах классической музыки.

А можете ссылкой поделиться, пожалуйста?

MP3 нужен был в свое время, когда оборудование было слабым, и объем памяти и сети передачи данных иные чем сегодня. Это стюардессу давно пора как бы закопать.

Сети передачи данных до сих пор не везде оптоволоконные и гигабитные для конечного пользователя.

Да и просто так жрать лишние мощности оборудования и памяти - непонятно, зачем надо. Просто потому, что можем - отвратительное оправдание.

Чаще всего mp3 320kbps хватает за глаза: в произведении часто попросту нет тех тонкостей, ради которых нужно больше трафика гнать/обрабатывать. А ради редких исключений перегонять всех в lossless смысла нет.

А это не важно, все крутые современные форматы используют тот же подход: перевести в спектр, разделить на частотные подгруппы и удалять инфу в соответствии с психоакустикой. Опус даже, хоть и у них все более прогрессивно и даже футуристично. Но мп3 был первым, за это ему честь и хвала.

Наверное проблема таких кодеков в том, что точно выделить спектр не получается. Звук ведь не периодическая функция по времени, а преобразование Фурье применимо для периодических функций. Кроме ряд Фурье хорошо приближает гладкие функции (гласные звуки, скрипка, флейта), а для разрывных функций (согласные звуки, барабаны) приближение будет плохое и не поможет при сжатии. Я сам занимался сжатием звука и у меня получился хороший кодек, который сжимает в 4 раза и звучит как исходник (хотя, может быть, это только кажется - нет ведь способов объективно сравнивать звучание, но если сжимать в 8 раз, то уже слышно снижение качества музыки). Сжатие не использует БПФ и основано на относительной амплитуде звука, тогда как PCM кодирует абсолютную амплитуду. Наверное есть ещё такие кодеки, вряд ли до этого никто раньше не додумался.

Так он вполне актуален. Отчислений уже не нужно, поддерживается практически везде. С развитием технологий битрейты около 128, на которых у него реально выигрывало следующее поколение типа AAC, стали уже не актуальны, а на 256/320 надо очень постараться разницу на слух найти, возможно ее и нет.

Так он вполне актуален

Для чего актуален? Не для аудиодорожек, не для Spotify и подобных сервисов, не для локальных коллекций (если есть, то пусть лежит, не будем вносить потери перекодированием), не для игр*...

Есть факт, что на фоне битрейта видео остальное теряет значимость. Но он не придаёт актуальность.

* там он аж две опасности несёт: "кодируем в 128kbps, все так делают", "надо уложиться в ____, режем звук" (история с переизданием Skyrim и 48kbps).

не для Spotify и подобных сервисов, не для локальных коллекций

Вот здесь подробнее - по какой причине?

У Spotify есть исходники, он может спокойно пожать всё для раздачи в распоследний опус 168kbs и сэкономить 50% всех расходов на железо по сравнению с mp3.

Они отдают звук в AAC и Vorbis или Opus* и для них всё равно найдётся место, если трафик экономить (отдельный режим, допустим).

Если файл откуда-то скачивать, то к MP3 доверия меньше, чем к другим вариантам. Если кодировать самостоятельно - почему MP3? Совместимость - но проводя параллель с видеокодеками - это как опускаться ниже H.264 и VP8 ради совместимости. Причина может быть, но специфическая.

* ну, про Яндекс Музыку в 2024 на хабре писали:
aac - 71%
mp3 - 2%

Если файл откуда-то скачивать

То там, если это lossy, в 95% случаев MP3 и будет.

Если кодировать самостоятельно - почему MP3? 

Тут вопрос почему НЕ MP3. Просто кодируешь с -V0 или 320 в LAME и не заморачиваешься. Что даст переход на OGG или AAC (у которого еще найди хороший кодер). С видеокодеками параллель не вполне корректная, между H264 и XVID разница куда больше.

aac - 71% mp3 - 2%

Ну тут может быть, попереключал треки и качество, посмотрел логи - мне вообще в веб-версии попались только AAC или FLAC, в зависимости от качества. Видимо чтобы жать все lossy одним кодеком, т.к. на 192 и тем более на 64 AAC уже заметно выигрывает.

То там, если это lossy, в 95% случаев MP3 и будет.

Если это редкость, которая где-то ещё лежит в AAC или Opus, то они вполне могут оказаться исходником для того MP3. Лишнее преобразование из lossy в lossy просто чтобы файл не выделялся.

Тут вопрос почему НЕ MP3. Просто кодируешь с -V0 или 320 в LAME и не заморачиваешься.

Так ведь можно сказать и про Opus. Может, здесь что-то вроде ошибки выжившего - человек, который не выберет на автомате MP3, вероятнее передумает трогать lossless-оригинал?

С видеокодеками параллель не вполне корректная, между H264 и XVID разница куда больше.

Но интересно, что

  • поддержка H.264 и VP8 на устройстве в качестве "самых базовых" видеокодеков автоматически означает поддержку аудио новее, чем MP3

  • Xvid до сих пор популярен даже для новых раздач

Если это редкость, которая где-то ещё лежит в AAC или Opus, то они вполне могут оказаться исходником для того MP3. Лишнее преобразование из lossy в lossy просто чтобы файл не выделялся.

Это маловероятная ситуация, сравнимая с тем, что в AAC исходником окажется какой-нибудь MP3-128.

Так ведь можно сказать и про Opus. Может, здесь что-то вроде ошибки выжившего - человек, который не выберет на автомате MP3, вероятнее передумает трогать lossless-оригинал?

Так нет же, в софте для перекодирования чаще встретится MP3, особенно по умолчанию. И он проверенный. А Opus это из разряда "где-то что-то слышал, но как оно звучит это надо еще проверять". Насчет передумает трогать - так у lossy и lossless разная сфера применения. Я например перекодирую для магнитолы/смартфона.

  • поддержка H.264 и VP8 на устройстве в качестве "самых базовых" видеокодеков автоматически означает поддержку аудио новее, чем MP3

Так это разные устройства. С видео обычно затык в телевизорах, которые могут долго не обновляться. С аудио - в браузерах, у кого-то может старый стоять, который что-то не поддерживает. Но в целом я считаю, что у MP3 фактор совместимости не решающий. Реальные факторы я назвал выше - он много где по дефолту и предсказуемый. Видео я понимаю, зачем мне конвертировать в H.264 - размер действительно на практике изменится раза в два. С аудио - реальная экономия будет не видна, потому что я не пойду конвертировать в 160 то, что обычно кодирую в 320.

сравнимая с тем, что в AAC исходником окажется какой-нибудь MP3-128

Нет, MP3 продолжает жизнь в конце цепочки, а AAC/Opus мог взяться из магазина, стриминга, видеохостинга, онлайн-радио.

___

Ладно, всё равно выглядит как ленивая традиция. 2.5 раза нужны*, 4 не нужны** и лучше в это не углубляться (*снова кивает в сторону Xvid и его широкой популярности в узких кругах*).

* FLAC 800 kbps → MP3 320 kbps
** MP3 320 kbps vs. Opus 192 kbps

на фоне битрейта видео остальное теряет значимость.

Я иногда развлекаюсь, пытаясь уместить весь фильм целиком в 50Мб. Получается качество сравнимое с VHS. Так вот под звук приходится оставлять до 18Мб из них, иначе становится совсем сложно понимать речь персонажей. При том, что я перевожу в mono и обрезаю высокие частоты.

уместить весь фильм целиком в 50Мб

Что там можно ещё придумать? Выбрать проприетарную реализацию xHE-AAC вместо exhale... не забыть про 10 бит в AV1... попытаться облагородить артефакты, пользуясь генерацией зерна в кодеках?

10 бит, шуморезка, интерполяция кадров. Звук в опусе у меня. Сейчас пытаюсь освоить автоподбор параметров по VMAF между сценами, вместо CRF.

Но у меня складывается эмпирическое ощущение, никак не подтверждённое пока что, что при таком экстремальном сжатии AV1 хуже чем x265. VMAF лучше, а на глаз вроде хуже.

Больше всего на VVC + xHE-AAC достигали
https://old.reddit.com/r/VVC/comments/1gj98hg/vvc_xheaac_vs_av1_opus_at_extremely_low_bitrates/

С AV1 тогда задача превращается в "приблизиться к результату VVC (и не опоздать сделать это до юзабельности AV2)".

Интересно, как устроено сжатие звука PAC? В MP3 используется преобразование Фурье и сжатие преобразованного массива. В PAC другой принцип сжатия?

В принципе интересны любые подробности, впервые слышу об этом формате, а тут он так описывается. Интересно, например, были ли хотя бы использованы его наработки или нет.

Может я совсем отстал от всего...

Но точно этот PAC существует, а не галлюцинация? Я в нулевые работал с дофига разными кодеками, но этот вижу впервые!

Нагуглил статью в англоязычной Вики (созданную в 2006) и статью „The Perceptual Audio Coder (PAC)”, среди авторов которых числится James D. Johnston.

Видимо, всё же существует.

Странные претензии, больше похожие на реваншизм. Если в 88 году Бранденбург заканчивал свой PhD, то начал он работать над этой темой в 83 или 84 году. Поэтому фигурирующий в судебных решениях 87 год или тем более ничем не подтвержденный и известный только со слов Джонстона 86й год - это не основание считать его исследования приоритетными. А ещё более странными являются набросы вида "Томпсон Батькович считал, что PAC лучше MP3". Вообще, всю статью читателя пытаются брать на эмоции, что уже заставляет относится скептически к её посылу.

Большое спасибо за перевод! Очень интересная статья получилась.

Заходите ещё)

Опять маркетинг победил инженерию

Я помню, как в нулевых реально спорили MP3 vs AAC, потом пришли плееры, а дальше всем стало без разницы, лишь бы играло
А за кадром там войны стандартов, патентов и компаний на десятилетия

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds