Добрый день, уважаемые читатели!
А вы когда-нибудь задумывались, что именно теряется при сжатии из lossless в mp3 128 kbps или 320 kbps?
Я проверил и результат показался интересным. В первую очередь предлагаю пройти опрос, чтобы понять для себя слышите ли вообще разницу. Если не уверены, что слышите или уверены, что не слышите, то предлагаю к вашему вниманию простую и изящную идею: надо взять и столкнуть лбом две звуковые волны одна из которых будет находиться в противофазе, соответственно при сведении двух треков будет преимущественно слышно то, что не погасилось. Интересные графики пока не обещаю, но зато вы сможете сами на своей системе услышать какие именно звуки потерялись при сжатии из flac в mp3 128\320 kbps, архив с примерами в конце статьи.
Опрос
Необходимо скачать и послушать 12 треков по 30 секунд. Затем указать для каждой из 4 композиций один из 3 вариантов (128 kbps, 320 kbps или lossless).Опрос анонимный, но можете указать уникальный хэш и сказать его мне, в крайнем случае опубликовать свое мнение здесь, но обязательно под спойлером. Опрос будет длиться до 25.02, после опубликую ключ и статистику.
Файлы на Яндекс Диске, зеркало на Дропбоксе (~80Мб).
Исходные данные
The Black Keys — Everlasting Light (flac, 44100 Hz, 24-Bit, 1613 kbps), ознакомиться можно на Youtube.Ludovico Einaudi — Drop (flac, 96000 Hz, 24-Bit, 2354 kbps), ознакомиться можно на Яндекс Музыка.
CC Coletti — Rock and Roll (flac, 192000 Hz, 24-Bit, 4845 kbps), ознакомиться можно на Youtube.
Annihilator — Ultra-motion (flac, 44100 Hz, 16-bit, 1022 kbps), ознакомиться можно на Youtube.
Софт
Audacity 2.1.2.Lame 3.99.3.
Параметры конвертации в mp3
44.1kHz, stereo, 128 kbps или 320 kbpsОписание эксперемента
Исходные файлы режутся на куски длительностью по 10 секунд, каждый из кусочков экспортируется в wav. После импортирования полученных треков в начало каждого добавляется 2 секунды тишины и секундный тоновый сигнал, затем конвертируются в mp3. После импортирования mp3 файлов выясняется, что относительно оригинала, полученный файл «ушел вперед». Это не баг, это фича. Производим синхронизацию относительно заданного тонового сигнала у оригинального (я пробовал для каждого файла mp3 несколько значений, которые впоследствии уточнял до наилучшего результата), избавляемся от тонового сигнала, тишины и полученные треки экспортируем в wav. Теперь осталось инвертировать треки, чтобы получились разнонаправленные пики, и свести с оригиналом.Результат
Не открою Америку… Да, разница есть. Да, особенно при сжатии до 128kbps. Да, зависит от музыки. Да, еще больше от аудиотракта.Сделать самостоятельный вывод и услышать разницу вы можете, скачав файлы на Яндекс Диске или Дропбоксе (~57Мб). В данном архиве содержатся треки с звуками, которые потерялись при сжатии.
Ключ.
Комментарии (131)
Putincev
25.02.2016 22:41Хочу обратить ваше внимание, что глобально данный опрос ничего не значит, так как ответившие были не в одинаковых условиях, тем не менее каждый человек, на основе своих результатов, может задуматься над тем, что же делать дальше.
В целом результаты голосования распределись следующим образом:
Что, еще раз подчеркну, ни в коем случае не подтверждает, что между mp3 128, 320 или lossless разницы нет.
Желающию построить свои красивые графики, ознакомиться подробней с результатами могут открыть файл на docs.google.com в который вошли все данные из опроса за исключением описания системы на которой люди слушали треки.gotch
25.02.2016 23:19Победитель конкурса twist_ua_losslEssMan. Бьет без промаха.
Putincev
26.02.2016 00:27Без промаха, да, но победителем его это не делает.
gotch
26.02.2016 11:01Это делает его человеком с самым тонким слухом? )
Putincev
26.02.2016 11:09Может быть да, а может быть нет, такой фактор как везение отрицать нельзя. ABX тест дал бы более объективную картину.
Foolleren
26.02.2016 11:14При наличии файлов любой человек знакомый с аудиоредакторами может без слуха, без ушей и даже вообще не проигрывая их определить сжатый он или не сжатый.
gotch
26.02.2016 13:00Честно прослушал два раза, в разное время, на разных наушниках, 1 и 4 трек — 100% попадание, 2 — ни одного, 3 — перепутаны lossless и 320. Можно сделать вывод, что на некоторых треках есть ощутимая разница. На других ее уловить сложнее. Но это не делает lossless бессмысленным и бесполезным, как считают "антиаудиофилы".
Для меня разница проявляется в следующем — на сжатых треках теряются удары тарелок, на 320 vs lossless хуже стереопанорама.Foolleren
26.02.2016 13:29+1Тарелки и кастаньеты самая сложная часть для MP3 потому что их спектр уходит за 18 килогерц, где даже у несжатого 44,1/16 наблюдаются проблемы в виде модуляции с появлением звуков которых не было.
Про панораму вообще отдельный разговор — компьютер не знает зависимости ФАЧХ ваших ушей от направления прихода звука, и как не старайся без этого знания панорама будет неестественной, хоть из кости мамонта делай оборудование.Putincev
26.02.2016 14:38Да, для меня звучание тарелок тоже является неким маркером, на 128 Kbps звук становится металлическим, менее детальным, нет послезвучий. Разницу между 320 и Lossless думал, что слышу уверенно, ощущение, будто звук более грязный, теряются некоторые послезвучия, или панорамная картина меняется, или басовая линия, особенно чувствуется, если слушаешь и тот и другой трек впервые за день. Правда, при ABX тесте, выяснилось, что вероятность угадывания равна вероятности выпадения "орла" монеты… Означает ли это, что заменю всё на mp3? Вряд ли, психоакустика может сыграть злую шутку.
Интересно было бы услышать мнения других людей о разнице звучания, особенно от профессионалов или людей тесно, связанных с музыкой, я отправлял приглашение представителю Аудиомании timshick принять участие в опросе, ему и его коллегам, и даже получил подтверждение, но к сожалению ответа не дождался...Foolleren
26.02.2016 14:56+1Eсть такой диск аудиодоктор (http://rutracker.org/forum/viewtopic.php?t=2093973), в нём для проверки "слуха" используются очень короткие отрезки потому, что звуковая память у подавляющего большинства людей очень и очень короткая, прослушав 15 секунд А и 15 секунд Б большинство людей уже не в состоянии их различить, хотя отлично слышат разницу на короткой нарезке.
Тестировал подобную методику на себе давным давно ещё (хоть это и не дважды слепой тест с большим количеством участников) но результат был такой при полном прослушивании трека отличить не зная что включил очень сложно если только не ниже 192 Kbps уже 256 от Lossless сложно отличить, при коротких нарезках характерных мест (тарелки например) определить становится куда проще, но всё равно 320 уже на грани.
Сейчас уже не парюсь и слушаю какую-то фигню с сервисов яндекса, хотя и могу различить разницу в конечном счёте дело не в разнице, а отношении к ней.
kosmos89
26.02.2016 18:12>где даже у несжатого 44,1/16 наблюдаются проблемы в виде модуляции с появлением звуков которых не было
Можете пояснить поподробнее?Foolleren
26.02.2016 20:13на пальцах
При сложении двух частот образуются ещё две частоты, (F1+F2)/2 и (F1-F2)/2 да там амплитуды маленькие, но уже слышимые.kosmos89
26.02.2016 20:28Какие частоты складываются, и при чем тут «44,1/16»?
Foolleren
26.02.2016 21:1444,1к и 18к
18к, 16к, и 12к — выглядит хуже чем на самом деле, в какой-то мере можно побороть интерполяцией sin(x)/x при ресемплинге, или специальным фильтром на выходе(вариант похуже) и применяется в звуковухах подешевле.
Звуковой редактор adobe audition в окне редактора сразу отображает результат восстановления.
на выходе получается вот так
Осциллограммы с встройки ALC 892
18 килогерц, тут результат сложения даже на взгляд не просто увидеть
21 килогерц
да эти ВЧ после 16 кгц не на всяком оборудовании и не всякий слышит, а вот результат их сложения с несущей (44,1к) уходит в слышимый диапазон, а в случае ультразвука(21кгц) с очень слышимой амплитудой.
Вот такая она проблема формата 44,1/16. Кстати говоря в виниловых пластинках хватает того самого ультразвука который может подпортить запись при рипе.
kosmos89
26.02.2016 22:02Так и говорите, что на каких-то звуковухах, где ядро свертки короткое, а частота среза слишком высокая…
Foolleren
26.02.2016 22:19Это проблема в первую очередь формата, а не длинны костыля для её решения.
и проблема не в частоте среза, а крутизне среза, что кстати говоря очень большая проблема потому что фильтровать при записи сигнал надо до оцифровки, а при воспроизведении это выливается в звон там где его не было на записи, и не в свёртке проблема, а в том что она нужна в принципе, и даже правильное ядро требует для точного восстановления сигнала в конкретный момент времени бесконечности в обе стороны от этого момента, которую мы не можем предоставить по той простой причине что звуковой сигнал не повторяется.kosmos89
26.02.2016 23:15Значит, вся проблема формата 44100 сводится к частоте Найквиста, все частоты [исходного сигнала] выше которой в лучшем случае превращаются в звон.
Но тут возникает вопрос: а нужно ли бороться со звоном? Может ли человек его воспринять? Согласно моим знаниям о слухе, звуковая волна превращается в частоты уже в улитке, т.е. в нервную систему идет сразу в частотном домене. Так так ли важна форма сигнала во временном?Foolleren
26.02.2016 23:36При переходе(превышении) через частоту Найквиста (22,05) сигнал как бы отражается (на анализаторе спектра выглядит так) и при восстановлении также воспроизводится с меньшей частотой что является проблемой в осциллографах (там с крутизной среза совсем плохо) тут же проблема в том что сигнал с частотой меньше частоты найквиста всё равно вызывает появление звуков которых не было.
И форма сигнала также важна меняя фазу некоторых диапазонов частот(при этом меняется только форма сигнала без каких либо других изменений с которыми отождествляют качество звукового тракта) можно добиться перемещения отдельных инструментов на сцене — судя по осциллограммам реалтека не более 10 градусов для лево / право, а вот для ближе / дальше уже сказать сложно, например поворот фазы частот ниже 400 гц у меня вызывал отчётливое ощущение перемещение контрабаса по сцене ближе/ дальше, хотя для уверенного "приёма" приходилось крутить более 90 градусов.kosmos89
27.02.2016 01:21— Я имею в виду что сигнал, где нет частот выше частоты Найквиста, захватывается и восстанавливается в пределе идеально. А там, где есть, приходится сначала обрезать спектр выше частоты Найквиста в результате чего появляется звон. Никакого алиасинга в данном случае не возникает.
— sinc не привносит сдвига фаз. Значит и у звона с фазой все в порядке.
На счет того, что влияет на локализацию звука, почитайте Алдошину «Основы психоакустики», например.Foolleren
27.02.2016 01:34На локализацию звука влияет ФАЧХ ушей семплы снятые с разных людей находятся в свободном доступе и при использовании в качестве фильтров (конвольвер) создают более менее внятное представление о направлении, основы это всего лишь основы.
Меняя фазу [Ф] мы вмешиваемся в работу ФАЧ фильтра под названием "Наружное ухо".
Проблема с обрезанием в том, что у не цифровых фильтров не все хорошо или с фазочастотной или амплитудно частотной характеристиками или с задержкой, все три параметра никак нельзя свести к идеалу. и при большой крутизне среза возле слышимой части спектра рябь от фильтра наползает на слышимый спектр.kosmos89
27.02.2016 02:22— У Алдошиной про это говорится. А вот пример применения, правда никто почему-то не замечает эффекта, кроме меня https://www.youtube.com/watch?v=hsCgaMeTVG0
— Напрашивается такой прием: применить пологий аналоговый фильтр выше частоты среза, оцифровать с существенно более высокой частотой, например 96кГц, а потом цифровым фильтром обрезать до ~22кГц.Foolleren
27.02.2016 15:24правда никто почему-то не замечает эффекта,
потому, что фачх ушей у каждого своя, вам повезло и разработчики применили что-то похожее на ваше.
2) Так и делают.kosmos89
27.02.2016 15:33На себе я пробовал несколько голов из БД IRCAM Listen, и эффект был слышен так или иначе на всех из них. отличия лишь в точности определения направлений. Все равно необъяснимо, почему я не нашел еще никого, кто бы сказал «ухуеть!»
Foolleren
27.02.2016 15:47дело не только в точности, но ещё и расстоянии, у меня панорама деформируется так что то что должно быть сзади на метр звучит как будто из головы, лёгкое отклонение по замыслу градусов 10 — 15 уходит чуть ли не в ухо.
kosmos89
27.02.2016 16:33Расстояние там не имитируется никак кроме громкости, потому что почти все HRIR в свободном доступе записаны только с расстояния примерно 1,5 метра. Это считается far field.
Foolleren
27.02.2016 22:46Кстати, AMD хотела устроить маленькую революцию в области озвучивания игр, но не взлетело. за кучей маркетингового булщита оказался тотже самый конвольвер, но с какими-то совсем "левыми" семплами, обещали чуть ли не построение импульсного отклика по геометрии, а оказалось как всегда, даже до EAX не дотягивает.
gotch
28.02.2016 17:04"Дяденька, а вы с кем сейчас разговаривали?"
Уважаемые господа, не могли бы удовлетворить любопытство — вы кем работаете?
Nikobraz
26.02.2016 12:57Эх, а я сначала косячил, а потом разогрелся и вслушался.
На 4 треке очень сильно разница слышна.
f1ac
Скопирую свой прошлогодний комментарий в подобной теме на другом сайте. Вкратце, разница есть, и если её слушать отдельно, то она слышна. А если слушать сам сжатый звук, то надо сильно постараться, чтобы её найти:
Я вот заинтересовался, сделал сам разность двух файлов в Audacity. Выложил оригинал и разницу его с тремя разными битрейтами в mp3, https://drive.google.com/folderview?id=0B433Andu0p_cWm15T0cxSTNOdGc&usp=sharing. В 128кбит/c можно слушать песню :) Для желающих повторить: берём песню в loseless, конверитим в wav (оригинал), потом конвертим в mp3 и из него тоже в wav (файл с потерями). Качаем Audacity, открываем оригинал, импортим файл с потерями вторым треком, выделяем его, Effect –> Invert, выделяем оба трека, Tracks –> Mix and render to new track. Экпортируем третий трек с разницей и слушаем.
PS mp3 от flac не отличаю на слух, изредка нюансы разве что
Nekit1234007
Не очень понимаю, что конкретно показывает подобная процедура? Очевидность изменения трека после прохождения через лосси энкодер?
Putincev
Данная процедура показывает какие именно звуки исчезли. Вы можете скачать архив с наглядной демонстрацией в конце моей статьи и послушать. В заархивированных файлах именно звучит именно то, что при сжатии из flac в mp3 потерялось.
Nekit1234007
Вот вы правильно ниже написали, вы уверены что в конверсиях ничего никуда не убежало? Интереса ради я провёл описанную процедуру, в результате получил примерно тоже самое только тише звучащее. Предлагаю эквивалентный эксперимент, сделайте действия предложенные f1ac’ом, только в качестве второго трека используйте не пережатый материал, а такой же что и первый, т.е. оба трека должны быть одинаковыми, и перед миксом сдвиньте один из них на 1–2 семпла.
Putincev
Уверен.
Для каждого трека я проводил 5 сравнений. В начале делал "грубую" прикидку на основании показателей тонового сигнала, а затем по семплу вперед, по семплу назад, и в зависимости от изменяющихся итоговых треков, становилось понятно, какой смещение наиболее точным было.
pwl
практически любой кодек прогоняет входной сигнал через один или несколько фильтров (например для исключения постоянной составляющей). Эти фильтры имеют далеко не идеальную ФЧХ. На слух фазовые искажения (в разумных пределах) не слышны. А вот разницы таким методом вы намеряете вагон с тележкой.
Кстати, дабы не искать задержку вручную можно воспользоваться такой утилиткой:
http://www.csee.umbc.edu/portal/help/sound/AFsp-V2R1/html/audio/CompAudio.html
вам нужна опция '-d'
Putincev
Всё новое — хорошо забытое старое…
А вы не помните, как боролись с тем, что после конвертирования в mp3 полученный трек убегает вперед?