14 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Простая работа с видео в SolveigMM Video Splitter. Нарезка образов Medieval CUE Splitter’ом: где «порылась собака»? Как работать с программой

Нарезка образов Medieval CUE Splitter’ом: где «порылась собака»?

Этот пост создан по просьбе Mr. Merak’а, напомнившую мне довольно старую, но всё же актуальную тему.

Давно известно, что для нарезки образов Audio CD, особенно lossless, использовать Medieval CUE Splitter не рекомендуется. Об этом говорят тесты, показывающие, что утилита не сохраняет оригинальную продолжительность треков (как правило увеличивая её). Однако до сих пор не хватало детального исследования: что же действительно теряется при нарезке? Именно в этом я и решил разобраться.

Во-первых, если проявить сообразительность, а также вспомнить, что Medieval CUE Splitter режет без перекодировки, становится понятно, что режет он исключительно по фреймам. То есть, если, например, файл имеет 44100 семплов (1 секунда Audio CD), то при сжатии во FLAC с восьмым уровнем (блоками по 4096 семплов) кодер разобьет его на 11 независимых фреймов. Каждый такой фрейм самодостаточен и его декодирование не зависит от наличия предыдущих или последующих данных, однако сам по себе фрейм неделим. Таким образом MCS может разрезать файлы исключительно по границам фреймов, а в файле образа они, как правило, с началом и концом треков не совпадают, и потому результирующий файл обычно содержит не только нужный трек, но еще и фрагмент последующего трека (что подтверждается анализом в звуковом редакторе).

Это объясняет тот факт, что нарезанные MCS файлы продолжают играть без зазоров (т. к. проигрываются те же фреймы, в той же последовательности), однако не объясняет, почему суммарная продолжительность альбома после нарезки уменьшается.

Для проверки я скачал альбом Pink Floyd — The Endless River (2014), затем нарезал его в MCS со стандартными параметрами и полученные файлы склеил обратно в один. В результате продолжительность оригинального образа FLAC: 53:02.467 (140 346 780 samples), а полученного после нарезки — 53:01.192 (140 290 560 samples). Как видите, мы потеряли более одной секунды.

Читать еще:  Рисуем кляксу, создаем каплю, чернильная клякса в уроке фотошопа. Рисуем кляксу, создаем каплю, чернильная клякса в уроке фотошопа Кляксы для фш

Загрузив файлы в звуковой редактор и выполнив вычитание, я обнаружил, что примерно до 12:39 данные совпадают (полная тишина), а затем появляется микс двух треков с задержкой в одну секунду (то ест фактически один трек начинает отставать от другого).

Чтобы понять, почему так происходит, достаточно заглянуть в индексную карту (CUE) — оригинальную и результирующую. В оригинальном CUE мы видим наличие предзазора перед четвертным треком:

А в результирующем — PREGAP соответствующей длины:

Таким образом, становится ясно, что MCS фактически удаляет данные, содержащиеся в зазорах, а при воспроизведении их должна замещать тишина, создаваемая тегом PREGAP, то есть в данном случае используется формат CUE с удалёнными зазорами (Gaps Left Out). Тем, кто не знаком с синтаксисом CUE, советую почитать статью о CUE или RuTracker.

Формат c удалёнными зазорами в отличие от Gaps Appended совместим со спецификацией Cue Sheet, и потому поддерживается foobar2000. Единственное что — надо изменить кодировку CUE на UTF-8 и удалить текст, вставленный программой в начале файла, иначе плеер откажется его читать.

В альбоме есть еще один зазор длиной 30 фреймов (чуть менее половины секунды), и в сумме мы получаем те самые недостающие в результирующем файле семплы, с той лишь поправкой, что зазоры удаляются с точностью до фрейма.

Однако, всё меняется если перед нарезкой установить в Medieval CUE Splitter галочку Добавить зазоры. В этом случае программа создаёт набор файлов + CUE в формате Gaps Prepended, то есть зазор не удаляется, а присоединяется к последующему треку. Это единственный формат потрекового CUE с зазорами, указанный в спецификации — формат с зазорами, присоединенными к предыдущему треку, является нестандартным. Кстати, интересно, что при таком формате, если открывать трек в foobar2000 через CUE, плеер зазоры не воспроизводит.

Читать еще:  Почему телефон не отправляет ммс. Причины не отправки MMS с Android на Теле2

Теперь, когда зазоры не были удалены, суммарная продолжительность файлов на выходе максимально приблизилась к продолжительности исходного образа, однако всё равно осталась нехватка в 924 семпла. Далее я постарался выяснить, откуда она взялась.

Анализ показал, что порядок всех семплов в точности соответствует исходному, то есть 924 семпла потеряны в конце образа. Я проверил несколько дисков, и везде в режиме добавления зазоров, а также в режиме без зазоров (когда они изначально и так отсутствовали), в конце образа терялось около 1000 семплов. Похоже, будто программа просто отбрасывает последний фрейм.

Однако, эти результаты не совпали с результатами для других форматов – APE, WV. Здесь в режиме с добавлением зазоров данные оказались в сохранности.

Таким образом, можно сделать заключение, что Medieval CUE Splitter не годится для точной нарезки lossless образов в формате FLAC, так как в любом случае теряет информацию в конце последнего трека. Для других lossless форматов эта пробелма отсутствует, однако стоит учесть, что при снятой отметке добавления зазоров они будут удаляться.

Как бы там ни было, для правильной нарезки образов в любых форматах, включая FLAC, рекомендуется использовать исключительно CUETools.

Информация от спонсора

Оконщик: профессиональная установка окон и балконов. На сайте фирмы Вы можете заказать окна ПВХ в серии дома п-44т с установкой под ключ. На все изделия и работы распространяется гарантия. Действует система скидок для комплексных заказов.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: