Практика сжатия CD Audio в MP3

"Ноу-хау - знаю как"

Введение


Если у юзера нет никакого желания вникать в техники DAE (Digital Audio Extraction - цифровое извлечение аудио) аудио треков (а они непросты), он использует только новые диски (желательно фирменные), и хочется поскорее получить результат, то, наверное стоит обратиться к программам-jukebox'ам "все в одном", например, MusicMatch JukeBox, Creative PlayCenter 2, Microsoft Windows Media Player. Там все делается двумя щелчками. В общем случае такой подход не является надежным так как, извините за тавтологию, надежные методы экстракции там не используются, и стоит применять специальные CD Audio экстракторы.

Уже давно бытовало мнение, что наилучшим экстрактором является Exact Audio Copy (EAC). Мой детальный анализ показал, что это - действительно так. Поэтому весь излагаемый материал "заточен" под этот экстрактор (в части, его касающейся).

Основным отличием данной статьи (от многочисленных имеющихся) является то, что практическим методикам придана форма пошаговых процедур ("делай раз, делай два - и наколоты дрова") - самая удобная форма для юзера. Действительно, если ее нет, юзеру придется разрабатывать ее самостоятельно. Или в явном виде, что требует сил и времени, или в неявном, "на лету", что чревато ошибками...

Подготовка среды


Установка ASPI драйверов

Если используется ОС ветви Windows 2000 и ASPI драйверы не установлены, то без них не будут нормально работать CD-ROM приводы (для последних этот программный интерфейс в этой ветви ОС является родным).

В качестве источника драйверов лучше всего обратиться к пакету ForceASPI: Архив frcASPI17.zip свободен для скачивания и подходит для всех ОС (Win 95 / 98 / Me / NT / 2000 / XP). Для установки драйверов нужно распаковать архив, а потом из командной строки запустить файл INSTASPI.BAT. Эта процедура описана в файле INDEX.HTM, входящим в архив.

В результате будут установлены файлы версии 4.60 в составе:


WINASPI.DLL
WOWPOST.EXE
WNASPI32.DLL
ASPI32.SYS

Заметим, что этот же пакет драйверов "лечит" случай, когда драйверы установлены, но файлы имеют разные версии. От этого "разнобоя" отказываются работать утилиты от Nero, экстрактор EAC и другие важный софт. Разнобой же возникает как результат частичного обновления - ошибок пакета обновления aspi_v4xx от Adaptec (забавно, но этот же пакет содержит утилиту aspichk, позволяющую проверить версии всех файлов).

Также согласованность версий можно проверить CD-DA экстрактором ASPI Rip (v2.4.5 и выше; его можно установить временно). Тест запускается прямо по завершении инсталляции. Но его можно также запустить в любой момент через кнопку Input selection с изображением CD. Если обнаружен разнобой, то выводится HTML файл с рекомендациями вернуть все в исходное состояние посредством указанного пакета ForceASPI.

Распознавание возможностей ридера

Для целей DAE рекомендуются ридеры со следующими основными фичами (о второстепенных - см. статью про экстракторы):

Accurate Streaming
Без кэша
Декларирование передачи C2-указателей
Реальные C2-указатели
Поддержка линейки более низких скоростей.

Кроме того, для ридера должна быть также известна скорость безошибочной экстракции. Заметим, что для распознавания всех фич, достаточно всего двух приложений: EAC и DriveSpeed (сведения о средствах распознавания собраны в Приложении).

Эти же сведения для более-менее известных приводов можно получить из таблицы на специализированном сайте. При этом:

Приложение DriveSpeed используется только для получения набора скоростей.

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

Все остальные фичи находятся через EAC.

Рассмотрим как распознать указанные фичи...

Accurate Streaming

1. Запускается EAC
2. Через меню EAC \ Drive Options \ Extraction Method нажимается кнопка Detect Read Features
3. Через пару минут выводятся результаты
4. Далее следует нажать кнопку Apply.

Кэширование
Распознается тем же тестом, что и Accurate Streaming.

Декларирование C2-указателей
Распознается тем же тестом, что и Accurate Streaming.

Реальные C2-указатели
Заметим, что, к сожалению, декларация не всегда соответствует действительности. С такой ситуацией я столкнулся на уже снятом с производства и вообще неплохом 48x ридере Toshiba CD-ROM XM-6702B. Он бодро рапортует в тесте EAC, что поддерживает C2-указатели, реальный же тест дал отрицательный результат. Для проведения реального теста:

1. Запускается EAC
2. Вставляется достаточно поцарапанный музКД (здесь и ниже - музыкальный компакт диск)
3. Через меню EAC \ Drive Options \ Extraction Method нажимается кнопка Examine C2 Feature
4. Далее нужно ждать. Если будет сообщение о найденной ошибке (на первой же), то C2-указатели реально используются. Иначе - нет.


Если у вас нет поцарапанных музКД, то можно попытаться найти информацию на специализированной странице. В списке протестированных приводов нужно смотреть колонку C2-Error, в которой должно быть значение Yes.

Набор скоростей

1. Запускается приложение DriveSpeed
2. Смотрится выпадающий список Read Speed.

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

Пример
Я имел возможность сравнивать 3 CD ридера: Toshiba CD-ROM XM-6702B, Matshita CR 177 и TEAC CD 540E.
Сравнение возможностей приводов
 Свойства привода Toshiba CD-ROM XM-6702B Matshita CR 177 TEAC CD-540E
 C2-указатели (декларация) 0 1 1
 C2-указатели (реально) 0 1 1
 Кэширование 0 1 0
 Accurate Stream 1 1 1
 Скорости 48, 14 24, 20, 12, 8 40, 16, 8, 4
 Скорость error-free считывания ? ? 4

Согласно таблице, наилучшими свойствами обладает TEAC CD 540E. И это полностью подтвердилось на практике. С довольно поцарапанного фирменного музКД группы Queen экстрактор EAC на ридере TEAC безошибочно вытянул все треки, причем большинство - с качеством 100%. В то время на двух других получал ошибки экстракции.

Папка для музыкальных файлов

Рекомендуется использовать папку My Music ("параллельную" папке My Pictures). Это позволяет каждому юзеру, заведенному на компьютере, иметь свою папку песен. Эта папка является корневой для звуковых файлов. Далее могут идти подкаталоги с жанрами или именами музыкальных коллективов.

Установка кодера Lame.exe

Лучшим кодером для MP3 считается Lame.exe. Проект Lame находится в развитии, поэтому есть несколько версий кодера. Самая последняя версия обычно имеет статус alfa. В ней могут быть ошибки, так как время тестирования слишком мало. Поэтому предпочтительнее версии со статусом beta. Заметим, что еще есть stable - отлаженные версии, в которых только исправляются имеющиеся ошибки. Практика показывает, что можно выбирать последнюю beta-версию.

Вот один из сайтов, где можно взять скомпилированный Lame для Windows: ссылка. Для скачки нужно выйти web-браузером на указанный сайт, щелкнуть в левом столбце по ссылке beta version (она, впрочем, может вывести и на stable version) и скачать соответствующий ZIP файл.

Для установки кодера нужно:

1. Создать вручную папку, например \Program Files\Audio\Lame\
2. Распаковать архив в созданную папку.

Настраивать кодер не надо, так как это - утилита с управлением из командной строки.

Установка и настройка экстрактора EAC

Инсталляция
Скачать (последнюю версию) EAC можно с посвященного ему сайта. Для установки нужно просто запустить скачанный архив. Будет создана программная группа и соответствующий подкаталог в папке \Program Files.

Настройка Wizard'ом
Большим плюсом экстрактора является наличие Wizard'а (Мастера) настройки. Он проведет вас по настройкам основных параметров, а второстепенные параметры будут установлены правильно по умолчанию. Для тех, кто предпочитает все настраивать вручную, рекомендую подробную страницу по настройке. Ее русский перевод качественно выполнен Михаилом Розенштейном (за что ему ото всех юзеров большое человеческое спасибо).

Для настройки EAC Wizard'ом нужно:

1. Перенести Lame.exe в папку EAC. Тогда в окне меню \ EAC \ Compression Options \ Offset станет доступна опция Use LAME command line encoder/decoder for decoding MP3 files - использовать Lame.exe для декодирования MP3 файлов (вместо установленного в системе кодека от Fraunhofer; смотрите здесь). Это для тех, кто перегоняет MP3 на CD Audio, чтобы запускать на бытовых плеерах.

2. Запустить EAC (все аудио плееры должны быть выгружены).

3. Запустить Wizard через меню EAC \ Configuration Wizard.

4. Далее следовать инструкциям, дойдя до окна Feature Database. Использовать умалчиваемую опцию Use these values to configure this drive. Будут использованы значения, полученные ранее при опросе свойств привода. Наличие музКД не обязательно, так как кроме распознавания реального использования C2 он не нужен. Реальное использование C2 будет распознаваться отдельным тестом.

5. Дойти до окна Encoder Configuration. Если в поле Encoder Lame.exe будет найден не в домашней папке EAC, то:
а) удалить найденный кодер (для экономии времени в будущем)
б) через кнопку Browse сделать ссылку на кодер в домашней папке EAC

6. В следующем окне freedb Configuration ввести свой e-mail (лучше так называемый "мусорный", а вообще - любой).

7. В окне Done сменить выбор с I am beginner... на I am an expert... что даст возможность менять опции. Нажать на кнопку Finish.

Корректировка настроек Wizard'а

К сожалению, некоторые настройки нужно подкорректировать.

Откорректировать использование C2. См. раздел "Распознавание возможностей ридера", пункт "Реальные C2-указатели". Результат надо вручную записать в опции Drive is capable of retrieving C2 error information и Use C2 error information for error correction.

Отредактировать строку пресетов кодера. Вкладка EAC \ Compression Options \ External compression. Wizard ставит строку

%l--alt-preset 128%l%h--alt-preset standard%h %s %d

Это означает, что с опцией низкого качества (l - low) будет использоваться пресет с битрейтом 128, а опцией высокого качества (h - high) будет использоваться альтернативный пресет standard. Заменяем ее на следующую:

%l--alt-preset standard%l%h--alt-preset extreme%h %s %d

Теперь с опцией низкого качества будет использоваться альтернативный пресет standard, а с опцией высокого качества - альтернативный пресет extreme.

Выставить ориентировочный битрейт. На той же вкладке в поле Bit rate выставить битрейт для того альтернативного пресета, который будет чаще использоваться: 192 для standard и 256 для extreme. Это нужно только для того, чтобы EAC показывал в панели треков ориентировочный размер файлов. Если для разных треков будут использоваться разные пресеты, то можно вручную менять этот параметр, или использовать профили (см. ниже). Хотя в том, чтобы видеть ориентировочные размеры файлов, я не вижу острой нужды.

Корректировка других настроек

Минимально возможная скорость привода. Это уменьшит вероятность ошибок при экстракции. Скорее всего, она уже будет выставлена, но все же проверим. На вкладке меню EAC \ Drive Options \ Offset \ Speed использовать выпадающий список Speed selection. В нем скорости упорядочены. Нужно иметь в виду, что на месте минимальной скорости будет стоять Actual. Значит, ничего менять не надо. Actual означает ту скорость привода, которая была уже выставлена до старта экстрактора.

Схема имен файлов. Меню EAC \ EAC Options \ Filename На этой вкладке можно заменить умалчиваемую схему %T, например, на %D\%T. Это позволит автоматически создавать директории с именем исполнителя.

Папка файлов. Меню EAC \ EAC Options \ Directories. На этой вкладке нужно переключиться с верхней радиокнопки на Use this Directory и в поле через кнопку Browse указать на папку My Music.

Использовать ID3 v1.1 вместо старой v1.0. Меню EAC \ Compression Options \ ID3 Tag. Включить опцию Use ID3 V1.1 instead of ID3 V1.0 tags, если эту версию поддерживает также и ваш мобильный плеер.

Перерыв после 60 минут работы для охлаждения ридера и диска. EAC \ EAC Options \ Extraction. На этой вкладке включить опцию After each 60 mins of extraction, cool down the drive for 15 mins. Числа можно задавать и другие, например, уменьшить час на полчаса.

Особо отметим, что нормализация на этом этапе не нужна (меню EAC \ EAC Options \ Normalize \ опция Normalize). Дело в том, что нормализация по пиковому уровню, вообще говоря, ведет только к деградации песен и используется в крайних случаях. Тем более, что пиковые уровни у разных музКД альбомов различны и трудно угадать общий уровень, при котором у всех сжатых файлов в коллекции не будет клиппинга. В настоящее время есть более продвинутый метод выравнивания громкости для всей коллекции (когда она уже сформирована из нескольких альбомов и отдельных файлов). Он описан ниже.

Сохранение настроек в профиле
Если использовать все время только одну конфигурацию, то ничего запоминать не надо - все настройки хранятся в реестре. Однако если запустить Wizard заново, то изменятся те настройки, на которые он влияет (остальные настройки останутся без изменений). Поэтому есть смысл сохранить рабочую настройку в профиль. Кроме того, профиль нужен, если использовать одновременно различные ридеры. Другое применение - иметь несколько рабочих конфигураций (например для разных кодеров). Для сохранения текущей конфигурации в профиль нужно выполнить пункт меню EAC \ Profiles \ Save Profile и в открывшемся файловом диалоге выбрать подкаталог Profiles в домашней папке EAC. По умолчанию имя профиля - EACProfile. Профиль можно в любой момент подгрузить, и его установки тут же вступят в силу и запишутся в реестр. При следующей загрузке экстрактора будет загружен последний использованный профиль.

Установка MP3-Info Extension

При установке этого бесплатного плагина к Проводнику в последнем:

У MP3 файлов образуются симпатичные иконки с указанием битрейта, причем разные битрейты будут иметь и различные цвета (причем это - настраивается).

Можно просматривать метаданные просто подведя курсор мыши к файлу.

Можно просматривать и редактировать метаданные через контекстное меню.

Можно добавлять колонки в панели Проводника с такими атрибутами файла, как битрейт, тэги, версия ID3 и многие другие.

Можно производить пакетную обработку тэгов.

Все указанные возможности становятся потому, что тип MP3 в Реестре через строку mp3file связывается с описанием MP3 Format Sound. Если какой-нибудь "агрессивный" плеер подгребет под себя этот формат, надо восстановить указанную выше ассоциацию. Скачать дистрибутив драйвера можно по адресу www.mutschler.de/mp3ext/.

Процедура обработки музыкального CD


Рассмотрим общий случай, когда нужно обработать несколько музКД, принадлежащих одной авторской группе. Рекомендуем поместить все результирующие файлы в одну папку, одноименную с названием группы. Если нужно сохранить информацию о содержимом альбомов, то это делается посредством плейлистов. Если есть альбомы с пересекающимися песнями, то начинать надо с новых альбомов (бОльшая вероятность, что при выпуске использовалась новая аппаратура).

Полезно вести файл-описание коллекции в формате HTML. Этот файл следует поместить в ту же папку вместе с файлами песен.

Общая методика

Итак, после того, как выбрана последовательность обработки альбомов, нужно каждый музКД обработать так:

1. Вставить музКД. Если он вставлен в первый раз, автоматически производится обращение к глобальной CDDB и запоминание сведений об альбоме в локальной базе CDDB.DAT в корневой папке EAC. В следующий раз производится считывание с локальной БД, так что все делается автоматически. Как поступить, когда в CDDB нет сведений об альбоме, - см. ниже.

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

3. Желательно для самоуспокоения блокировать сеть на время обработки, и не выполнять других программ.

4. Последовательно выделять трек и обрабатывать так:

a. Если сессия начинается не с первого трека, то найти нужный трек по отсутствию записи в поле Read CRC

b. Убедиться, что такой трек еще не сжимался, просмотрев файл-описание коллекции

c. Определиться с качеством сжатия (low - standard, high - extreme) и выставить его через F11 (проверять каждый раз!)

d. Нажать кнопку MP3 и дождаться окончания обработки

e. Просмотреть уровень ошибок и если ошибки были, то принять решение об их исправлении методами самого приложения

f. Вписать песню в файл описания в формате песня (музыка/слова/год альбома первого появления) источник в коллекции например, Белым снегом (Е.Родыгин/Г.Варшавский/1995) CD "Печальный ветер". Учесть, что на обложках некоторых музКД порядок авторов музыки и слов перепутан.


Смена CDDB сервера

Если текущий CDDB сервер не содержит сведений об альбоме, то нужно сменить сервер и отправить запрос на другой. Доступ к списку серверов: меню File \ freedb / Database Options = F12, вкладка freedb. И из выпадающего списка Freedb server выбрать новый сервер, например, вместо http://freedb.freedb.org.80/~cddb/cddb.cgi можно перейти на http://fi.freedb.org.80/~cddb/cddb.cgi. Затем направить запрос через меню Database \ Get CD Information From \ Remote freedb = Alt + G или нажатием инструментальной кнопки с изображением CD.

Обработка альбома, о котором нет сведений в CDDB
Если в CDDB нет сведений об альбоме, то можно поступить так:

1. Заполнить вручную поля CD Title и CD Artist. Сохранить данные в файл %WINDOWS%\CDPLAYER.INI: меню Database \ Export CD Information To \ CDPLAYER.INI. Этот файл имеет простую текстовую структуру и его легко редактировать. Другие поля (Year, Genre) экспортировать не удается.

2. Открыть файл CDPLAYER.INI в текстовом редакторе. Сведения о текущем альбоме будут в конце файла. Изменить безликие TrackXX на названия песен. Сохранить файл.

3. Считать правильную информацию из файла: меню Database \ Get CD Information From \ CDPLAYER.INI.

4. Заполнить поля Year и Genre.

5. Через меню Database \ Edit CD Information выбрать в выпадающем списке General music style (общий музыкальный стиль).

6. Сохранить данные в локальной БД: меню Database \ Export CD Information To \ Local freedb.

7. Можно послать пополнение в freedb: меню Database \ Submit CD Information To freedb, чтобы результатом вашей работы воспользовались другие.

Заметим, что такой подход предпочтительнее чем редактирование отдельных тэгов: при повторной обработке музКД информация о нем уже лежит в БД.

Резервное копирование локальной CDDB

Очевидно, что локальная CDDB представляет собой несомненную ценность. Поэтому ее надо включить в список на резервное копирование (мне нравится для этой цели утилита Second Copy, сайт www.centered.com). Локальная CDDB находится в файле CDDB.DAT, который в свою очередь находится в домашней папке приложения Exact Audio Copy (EAC).

Устранение клиппинга, выравнивание громкости коллекции


Минимальным требованием является отсутствие клиппинга у всех песен коллекции (клиппинг - выход громкости звукового файла за максимальный уровень; этот пик будет срезан плеером, и образованный плоский участок амплитуды воспроизводится как артефакт). Несмотря на то, что у CD-DA треков клиппинга, естественно, нет, он может образоваться в сжатом файле (и чем больше сжатие - тем больше вероятность появления клиппинга).

Традиционным решением является небольшое понижение громкости в WAV файле. Однако подбор этого уровня является, очевидно, трудоемкой задачей. Эффективнее устранять клиппинг прямо в сжатых файлах. При этом снижение громкости всего файла приводит к тому, что снизится и динамический диапазон песни. Поэтому нужен "умный" срез пика, не трогающий остальные участки песни. Тем более, что временнАя продолжительность пика составляет доли секунды.

Далее желательно сделать одинаковую реальную громкость всем песням коллекции, чтобы не тянуться к регулятору громкости при проигрывании каждой песни. Как ни странно разброс уровней - не редкость на отечественных музКД.

С обеими задачами успешно справляется бесплатная утилита MP3Gain, являющаяся воплощением проекта www.replaygain.org. В этом проекте:

Реализован алгоритм подсчета реальной громкости MP3 файла.

Разработан метод локального удаления клиппинга, не изменяющего остальные участки песни. Метод позволяет, таким образом, не терять динамический диапазон песни.

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

Установка MP3Gain

Скачать MP3Gain можно с сайта www.geocities.com/mp3gain. Есть два варианта архива. В полном варианте (размером около 2.1 Мбайт) содержится библиотека VB. В компактном варианте (размером около 600 Кбайт) ее нет, и инсталлятор может потребовать дистрибутивные CD от MS Office для того, чтобы взять библиотеку VB оттуда. В утилите есть поддержка русского языка (опция инсталляции), но пользы от этого немного, так как хелп - все равно англоязычный. Для установки утилиты нужно просто запустить скачанный файл.
Утилита допускает несколько режимов обработки, например, выставления наибольшей громкости для каждого файла (когда еще не наступает клиппинг). Однако мы рассмотрим самый актуальный режим - выставление одинаковой громкости для всей коллекции.

Выставление одинаковой громкости для всей коллекции

Загрузить список файлов кнопкой Добавить папку, указав папку коллекции. Произвести анализ файлов по кнопке Анализ Радио. Обработка может занять несколько минут или даже десятков минут. Имена тех файлов, которые имеют клиппинг, окрасятся в красный цвет и еще в колонке Клиппинг появится Y.

Далее нужно постепенно снижать число в поле Норма громкости так, чтобы у всех файлов в колонке Клип(Р) отсутствовала Y. Пересчет при этом производится мгновенно. По умолчанию используется уровень 89 дБ. На этом уровне подавляющее большинство MP3 файлов не имеет клиппинга. Однако выставленный вручную бОльший уровень - лучше в смысле динамического диапазона. Следует иметь в виду, что уровень громкости, приводимый в этой утилите - реальный, а не пиковый. Так что не надо недоумевать, когда у файла с уровнем 94% присутствует клиппинг.

Результаты анализа можно сохранить для общей информации или для отложенного использования (через меню Файл \ Сохранить результаты анализа например, в папку коллекции). После выбора уровня для коллекции нажимается кнопка Тип Радио (Radio Gain). Обработка коллекции производится намного быстрее, чем анализ громкости.

Пакетная корректировка тэгов


Иногда встречается необходимость пакетной корректировки тэгов. Например, CDDB не выдал поле жанра, вы его ввели сами, получили коллекцию, а потом поняли, что ошиблись с жанром (то же самое могло быть с годом выхода). В этом и в других случаях сильно облегчают жизнь утилиты пакетной обработки тэгов. Давайте познакомимся с одной из них - симпатичной утилитой TagScanner.

Установка TagScanner

Утилита является свободно распространяемой, очень функциональна и к тому же имеет превосходный графический интерфейс, которым невозможно не залюбоваться. Скачать последнюю версию TagScanner'а можно с ее родного сайта xdev.narod.ru/tagscan_r.htm. Архив "весит" меньше мегабайта, распаковывается, и запускается setup.exe. Установка производится очень быстро.

Все возможности утилиты перечислены на сайте. В их числе, например, переименование файлов по информации из ID3 тэгов, и наоборот, формирование тэгов по имени файлов и содержащей их папки.
Ниже мы рассмотрим только задачу пакетного изменения отдельных полей тэгов.

Пакетное изменение отдельных полей тэгов

1. Запустить TagScanner.

2. Перейти в режим batch TAGer, щелкнув на соответствующей вкладке вверху.

3. Задать папку, в которой находится коллекция. Делается это через кнопку Browse, в результате чего заполняется поле Path.

4. В выпадающем списке Existing TAG выбрать Update. Динамическая подсказка тут же проинформирует, что если поле оставить пустым, то оно не изменится.

5. Выбрать версию тэга: ID3v1 в правом верхнем углу.

6. Заполнить только корректируемые поля. Например, выбрать правильный жанр из выпадающего списка Genre.

7. То же надо проделать, переключившись на другую версию или ID3v2, если надо внести изменения в обе версии.

8. Просмотреть ожидаемый результат по кнопке Preview и убедиться, что он правильный.

9. Выполнить пакетную корректировку, нажав кнопку Generate.

Редактирование тэгов у выборочных файлов

Производится по сходной процедуре:

1. Запустить утилиту TagScanner.

2. Выбрать вкладку TAG editor.

3. Через кнопку Browse выбрать папку с файлами.

4. Выбрать нужный файл в левом окне.

5. Отредактировать его тэги в правом окне.

6. Выбрать опцию Both - если нужны тэги обоих версий (иначе всё относится только ко второй версии).

7. Сохранить тэги в файле кнопкой Save.

Редактировать тэги можно также в других приложениях, например:

В EAC (меню Tools \ Edit ID3 Tags).

В популярном плеере WinAmp (выделить файл и в контекстном меню выбрать пункт File info). Кнопки Copy to ID3v1 и Copy from ID3v1 позволяют скопировать поля одной версии в другую.

Формирование тэгов

На основе имен файлов:

1. Запустить утилиту TagScanner.

2. Выбрать вкладку batch TAGer.

3. Через кнопку Browse выбрать папку с файлами.

4. Кнопкой Settings перейти в режим правил формирования тэгов.

5. Заполнить поля тэгов, используя подсказку в окошке Worksheets. В частности, %F - это имя файла.

6. Нажать кнопку Preview...

7. Просмотреть предложенные результаты на правильность. Учесть, что есть выпадающий список режимов как замещать существующие тэги.

8. Нажать кнопку Generate.

Скрипт пакетного удаления префикса

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

Нужно:

1. Создать текстовый файл, например, с именем RemovePrefix.txt.

2. Вставить туда приведенный ниже текст:

mpath = "C:\Program Files\Music" ' папка
pref = "Золотое Кольцо - " ' удаляемый префикс
' ----------------------------------------------
LZK = Len(pref)
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(mpath)
Set files = folder.files
For Each nfile In files
s1 = nfile.Name
If InStr(s1, pref) = 1 Then
s2 = Right(s1, Len(s1) - LZK)
nfile.Move (mpath & "\" & s2)
End If
Next


3. Отредактировать значения переменных mpath и pref.

4. Сохранить файл.

5. Поменять у файла расширение TXT на VBS.

6. Запустить файл.

Защита файлов от повреждения


После того, как коллекция сформирована, не лишним будет задать всем ее файлам атрибут "только для чтения". Делается это одной командой типа: D:\My Documents\My Music>attrib +R /S *.*

Приложение. Средства тестирования CD ридеров


Сводная таблица

Возможности программ
  Accurate Stream C2 declare C2 real Скорости Кэширование Версия микрокода
 CD Speed + - - - - -
 DriveSpeed - - - + - +
 EAC + + + - + -
 Feurio! CD-Manager + + - + + -
 Info Tool - + - - - +

ASPI Rip

Продукт доступен для скачивания с сайта www.birdcagesoft.com. Условно бесплатный. Способен выполнить проверку согласованности версий ASPI файлов ОС. Выполняется так: Option \ Test ASPI + CD-ROM. Одновременно проверяет саму возможность DAE. Требуется музКД.

EAC

Опознает следующие возможности привода ( \ EAC \ Drive Options \ Extraction Method \ Detect Read Features):

Кэширование
Accurate Stream
C2 Error Info

Кроме того, проверяет - действительно ли возвращаются C2 указатели. Для этого нужен музКД с ошибками, чтобы были C2 указатели. После этого нажимается кнопка Examine C2 Feature. Тестирование идет до первой ошибки. О результатах сообщается.

Feurio! CD-Manager

Страница продукта: www.feurio.com/English/. Это пакет состоит из нескольких приложений. Собственно экстрактор называется Feurio! CD-Manager. Интересной особенностью является наличие базы данных приводов.

Тест является комплексным и довольно длительным (его, впрочем, можно прервать в любой момент). Запускается через Program \ Program parameters \ Test device \ Start test. Постоянно ведется вывод отчета в окно. Его можно сохранить в текстовом файле (по умолчанию).

На первом этапе и очень быстро проверяются следующие возможности:

Accurate Stream
C2 Error Info
Размер буфера
Максимальная скорость
Другие (чтение RW и др.).

На втором этапе идет так называемый Read test на идентичность повторного считывания. Сначала без перекрытия (подавления джиттера). Если встречается ошибка, то производится перечитывание с подавлением джиттера. Считывание некоторой области производится 10 раз. Подсчитывается число несовпадающих секторов (в процентах) и делается вывод.

На третьем этапе идет так называемый Jitter test. Джиттер провоцируется чтением с прерыванием. Делается вывод. Далее идет Random access read operations. И смотрится, как точно позиционируется головка. Используется 500 мест.

Далее идет Cache test (для аудио данных). Для этого последовательно считывается все удлиняющаяся область, имеющая общее начало. Измеряется скорость считывания и по ней судится о кэшировании и о максимальной скорости.

Далее находится линейка скоростей. Это - самая долгая часть.

Nero CD Speed

Свободно доступна с сайта www.cdspeed2000.com и там через выпадающий список Software \ Download \ Nero CD Speed. Help скачивается отдельным файлом. В версии 1.00 уже недоступен тест Drive Check, который показывал все возможности привода. Интересен тест Run Test \ DAE Quality - показывает оценку DAE по 10-бальной шкале и наличие Accurate Stream. Считывает треки с различных областей и потом сравнивает с повторным считыванием.

Nero Info Tool

Свободно доступна с сайта www.cdspeed2000.com и там через выпадающий список Software \ Download \ Nero Info Tool.

Имеет вкладки:

Drive - информация о приводе, в том числе о C2 (музКД вставлять не обязательно) и версии микрокода.

Disk - информация о вставленном КД (число треков, объем данных).

Configuration - информация о канале подключения, DMA и режиме AutoRun.

Software - информация о софте прикладного уровня типа DirectCD.

Drivers - информация обо всех драйверах.

Nero DriveSpeed

Свободно доступна с сайта www.cdspeed2000.com и там через выпадающий список Software \ Download \ Nero DriveSpeed. Показывает все возможные скорости CD привода.