Дисковый «грабеж» Автор: Анатолий Егоров.
Дисковый «грабеж»
Автор: Анатолий Егоров.
Классику можно любить, поклоняться ей или отрицать — дело вкуса. Старая добрая программа, сколь бы преклонным не был ее возраст, остается действительно классикой. В особенности, если речь идет о таких «несерьезных» продуктах, как рипперы или грабберы — приложения для извлечения звуковых дорожек с Audio CD и конвертации их в сжатые форматы.
Семь лет назад старый приятель, глядя на мои манипуляции с невероятно популярным в те времена граббером Audio Catalyst( http://www.real.com/accessories/index.html?prod=audiocatalyst amp;src=rca_xingmp3encoder ) ($30) 20 , высказался довольно сочно и категорично: «Забей!» Действительно, зачем нужен продукт для создания MP3-файлов, требующий денег, когда рядом неприкаянно бродил пока еще никому не известный софтверный альтруист по имени CDex…
Долго ли, коротко ли, но теперь эта программа от Альберта Фабера (Albert L. Faber) гораздо популярнее своего алчного конкурента. Приложение ведет себя довольно скромно и крайне редко обретает статус финального релиза — все больше «бета». Менялись и веб-адреса CDex: теперь это страница cdexos.sourceforge.net/index.html. Стабильный релиз имеет номер версии 1.51 (1,8 Мбайта); если же вам свойственен дух экспериментаторства, можете загрузить бета-версию за номером 1.70, однако не советую этого делать: новинка «страдает» некорректным отображением кириллицы в тегах, полученных с удаленных CDDB 21 .
Преимущества программы:
• бесплатность;
• не требует инсталляции — просто распаковываем загруженный zip-архив в нужную папку и начинаем работу;
• встроенные кодеки МР3 (от Lame), OGG Vorbis и WMA;
• возможность работы с переменной скоростью кодирования;
• конвертация аудиодорожки в сжатые форматы, минуя WAV-стадию;
• может работать как кодер WAV в MP3 и декодер MP3 в WAV;
• полная совместимость с Win95/98/ ME/2000/XP;
• поддержка русского языка.
Обязательно следует учесть маленькое, но досадное недоразумение, возникающее при использовании программы: не хочет CDex просто так работать, кричит, ругается. А нужно всего-навсего загрузить и установить ASPI 22 —менеджер. Хотя ASPI-менеджер и предназначен для обслуживания SCSI-устройств, но вполне уживается и с IDE-устройствами, а в случае работы под Windows2000/ХР он просто необходим для программ подобного класса. Загружаем архив( http://www.cdrom-drivers.com/drivers/81/81399.htm ), распаковываем и запускаем файл INSTASPI.BAT, после чего перезагружаем систему. Все приходит в норму: CD/DVD-привод благополучно опознан, а программа перестает возмущаться из-за отсутствия этого небольшого, но весьма нужного «менеджера». Впрочем в Windows 2000/XP программу можно заставить использовать встроенный в эти операционные системы менеджер: Опции · Параметры · Привод · Использовать NT SCSI библиотеку (Use Native NT library).
* Зверек по имени Джиттер
Чтение звуковой информации с диска выполняется блоками, содержащими определенное число звуковых кадров, заполняющих буфер устройства для чтения компакт-дисков и периодически передающихся читающей программе. Пока чтение идет непрерывно, без пауз (burst mode), все просто замечательно. Но если программа не успела забрать очередную порцию данных, они теряются. Причем «потеряшки» перекрываются следующим объемом информации, что приводит к повторному чтению тех же кадров. К счастью, большинство программ имеет возможность чтения с небольшим перекрытием данных с целью автоматической стыковки полученных кадров в нужных местах.
Часто для устранения таких ошибок используется алгоритм Jitter Correction (jitter-коррекция). Среди всех дисководов в обязательной jitter-коррекции нуждаются только модели фирмы Toshiba. Все остальные, как правило, требуют только достаточно высокой скорости чтения аудио, чтобы внутренний буфер дисковода не переполнялся при потоке данных с компакт-диска.
Иногда, при использовании очень быстрых приводов, система не справляется с высокой скоростью передачи данных и происходит переполнение буфера. В этих редких случаях потребуется включить jitter-коррекцию, чтобы компенсировать столь высокую загрузку. У некоторых дисководов функция jitter-коррекции реализована на уровне так называемой «прошивки» (микропрограммного кода или firmware). Явное включение jitter-коррекции не принесет вреда при использовании любого дисковода. Самое худшее, что может произойти, это снижение скорости чтения аудио из-за перекрывающихся операций ввода-вывода.
Русификация Cdex
Благодаря официальному модулю локализации, созданному Николаем Шахворостовым4, CDex умеет «говорить» по-русски. Правда, языковой файл запрятан довольно хитро: cdexos.sourceforge.net/lang/cdexv1.70. Загруженный файл русификации с именем russian.cdex.lang (27 кбайт) скопируйте в папку lang программного каталога, и запустите файл CDex.exe. В главном окне программы откройте меню Options · Select Language, где вас ждет пункт Russian: теперь интерфейс граббера станет донельзя родным (рис. 1).
Не уверен, что вам понадобятся итальянский, испанский и немецкий модули локализации, а следовательно эти файлы можно безболезненно удалить.
Программные настройки
Мы неоднократно рассказывали об анатомии формата MP3, назначении кодеков и других тонкостях сжатого звука. Часть такой информации вы найдете во врезках, сейчас же гораздо важнее обратить внимание на программные опции для создания качественного звукового файла. Для того чтобы наш будущий звуковой файл получился «чистым» и «гладким», зайдем в меню Опции · Параметры (клавиша F4).
На вкладке «Кодер», открывающейся по умолчанию, в списке «Кодер»5 выберем нужный тип, благо CDex весьма демократичен, и работает с массой кодеков. По умолчанию предлагается встроенный Lame MP3 Encoder (рис. 2),
дающий отличные результаты (хотя сколько слушателей — столько и мнений). Выбор величины скорости кодирования в списке «Битрейт» остается за вами: если размещение МР3-файла не планируется на просторах Рунета (за что можно схлопотать по первое число от правообладателей), можно рекомендовать эксперименты со значениями не ниже 192 Кбит/с — вполне приемлемое качество звучания при сносном размере выходного файла. Максимальную скорость кодирования можно выставить равной 320 Кбит/с, при этом размер сжатого файла будет самым большим, но и качество звучания окажется на высоте.
В группе «Режим» из четырех переключателей изначально выбрана опция «Стерео» (есть и опция «Моно»). Дополнительные параметры качества будущего МР3-файла задаются в списке «Качество»: например, для голосового сигнала существует своя настройка, но я бы советовал в данном случае проявить максимализм — параметр «Очень высокое», и никаких компромиссов.
* Еще раз про битрейт
Битрейт (bit rate), или скорость потока, есть не что иное, как величина, определяющая потребную скорость канала для передачи данных. Битрейт характеризует степень сжатия (компрессии) звукового потока, иными словами — это объем звуковых данных, передаваемых за единицу времени. Битрейт измеряется в килобитах в секунду (Кбит/с). Например, выбор при кодировании скорости, равной 128 Кбит/с, означает, что одна секунда сжатого звука будет содержать 128 Килобит или 16 Килобайт (1 байт=8 битам) информации. Таким образом, чем выше скорость, тем меньше степень сжатия, следовательно, тем более качественный звук мы получим. Правда, при этом увеличивается и размер создаваемого файла. Различают постоянную и переменную скорость:
CBR (constant bit rate, постоянная скорость) — такой способ кодирования исходного аудиопотока, при котором все его блоки кодируются с одинаковыми параметрами. Полученная скорость на всей протяженности результирующего потока постоянна;
VBR (variable bit rate, переменная скорость) — в этом случае отдельный блок кодируется с определенной скоростью. Выбор скорости, наиболее подходящей для кодирования данного блока, осуществляется самим кодером путем анализа «сложности сигнала» в каждом отдельном блоке, но не превышает заданную скорость.
***
Обратите внимание на список «Метод VBR» (метод переменного битрейта): по умолчанию программа будет кодировать звуковые файлы при постоянной скорости кодирования. Для включения переменной скорости в списке «Метод VBR» выберите один из методов такого кодированияи и не ошибетесь, остановившись на VBR Default. Параметры списка «Частота» (имеется в виду частота дискретизации) лучше всего оставить без изменений — 44 100 Гц.
На вкладке «Файлы» (рис. 3)
нужно указать, куда сохранять создаваемые сжатые звуковые файлы6: список WAV · MP3 предназначен для выбора каталога, в котором останутся извлеченные дорожки в формате MP3, а в списке «Дорожки» определяется директория для звуковых треков в WAV-формате. По умолчанию для обоих форматов предлагается папка CDex1.51my music. Пользователь, вовремя не изменивший «хранилище» для звуковых файлов, будет судорожно метаться в поисках утраченного…
Теперь несколько слов о назначении параметров списка «Формат имени» — как видите, там написана какая-то абракадабра: %1\%2\%7-%4. Однако стоит подвести курсор к данному полю списка, как все станет ясно из всплывающей подсказки: %1 означает имя исполнителя, %2 — название альбома и т. д. Именно в такой последовательности будут создаваться вложенные папки, где и сохранятся извлеченные дорожки. Чуть более подробная информация о структуре такой «китайской грамоты» доступна при щелчке по кнопке с вопросительным знаком.
На вкладке «Удаленная CDDB» господином Фабером заботливо указаны адреса серверов, на которых хранятся базы данных о компакт-дисках: имя исполнителя, наименование альбома, названия дорожек и другая информация. Нам же остается только ввести адрес своей электронной почты в поле «Ваш e-mail» и включить опцию «Автосоединение с CDDB» (рис. 4):
при запуске программы с загруженным Audio CD произойдет автоматический запрос данных о диске, которые тут же отобразятся в списке дорожек (рис. 5).
Есть и другой способ хранения данных о компакт-диске — создание локальной базы данных: вкладка «Локальная CDDB». Такая база будет храниться в программной папке CDex, причем, по умолчанию создание такой базы включено: «Сохранять в локальной CDDB». Если установить флажок в переключателе «Сохранять в CDPlayer.ini», то информация о диске будет записана в файл настроек системного «Лазерного проигрывателя» и при следующем воспроизведении отобразится в окне этого архаичного плеера. Но лучше сохранить информацию в локальную базу данных CDex, поскольку в этом случае набор данных будет более обширным, нежели при сохранении в CDPlayer.ini.
Что касается нормализации звуковых файлов (вкладка «Общие»), то при таком принудительном нивелировании уровня звучания разных дорожек неизбежно будут вноситься искажения в формируемый файл. Во всяком случае, опция «Нормализация» по умолчанию отключена.
Не забудьте заглянуть на вкладку «Привод»: если ваше устройство для чтения компакт-дисков не определилось программой (что бывает крайне редко), в списке «Тип привода» вы выбираете свою модель или используете функцию автоматического определения (кнопка «Определить»). Кроме того, вы можете приказать программе открыть лоток привода по окончании процесса извлечения, а также поменять местами каналы. Jitter-коррекция включена по умолчанию (почему-то переводчик решил назвать этот метод «Коррекция дрожания»). Ко всему прочему, в главном окне программы по умолчанию будут выделены все дорожки, подготовленные программой к конвертации. Если вас это не устраивает, снимите флажок в переключателе «Выделять все дорожки».
* Joint Stereo
Объединенное стерео (Joint Stereo) — наиболее оптимальный способ двухканального кодирования, когда левый и правый каналы преобразуются в их сумму и разность. Для большинства звуковых файлов канал с разницей получается намного тише канала с суммой, поэтому на сумму отводится бульшая часть битрейта. Таким образом, качество выходного файла разительно отличается в лучшую сторону от режима «Стерео» при одинаковом битрейте, особенно при низком. Бытует мнение, что данный режим не подходит для звукового стереоматериала, в котором в двух каналах воспроизводится субъективно абсолютно различный материал, так как он стирает различия между каналами. Это ошибочное мнение, так как в действительности MP3-кодек оперирует частотами, а определенные частоты в большинстве случаев пересекаются в обоих каналах, то есть идентичная информация все же присутствует, а различная кодируется отдельно. Особенно эффективен этот способ двухканального кодирования при использовании переменного битрейта.
Начинаем работу
После всех приготовлений загрузим в привод Audio CD и запустим программу. Если вы подключены к Интернету, и на вкладке «Удаленная CDDB» разрешено автоматическое соединение с информационным сервером, программа немедленно отправит запрос на получение информации о диске. Как уже говорилось, в главном окне по умолчанию выделены все дорожки диска, но достаточно щелкнуть в поле окна левой кнопкой, как выделение снимется. Еще раз посмотрите на рис. 5 — абсолютно все звуковые дорожки имеют свои, «родные» имена, а в полях «Артист», «Альбом», «Жанр» и «Год» уже указаны данные, необходимые для создания ID3-тегов — красота да и только.
Если же не удалось получить информацию с сервера CDDB, то все дорожки будут иметь безликий вид Track1, Track2, Track3 и т. д. При желании можно и здесь присвоить дорожкам подходящие имена, если выделить дорожку правой кнопкой мыши и в контекстном меню выбрать команду «Переименовать дорожку» (клавиша F2). Доступно извлечение как всех выделенных дорожек (Ctrl+A), так и нескольких: для этого при нажатой клавише Ctrl выделите мышью необходимые дорожки.
Теперь попробуем извлечь одну или несколько дорожек в WAV-формат. Выделив нужные, щелкнем на кнопке Дорожки · WAV в правой части главного окна, после чего будем наблюдать ход выполнения процесса извлечения в окне, показанном на рис. 6.
Возможно, кому-то не понравится медленная скорость, но как раз в этом случае неторопливость программы будет нам только на пользу: чем ниже скорость извлечения, тем меньше вероятность возникновения ошибок.
Преобразование треков происходит в абсолютной тишине, поскольку программа не обращается к звуковой карте. Если наша задача сводится к переводу звуковой дорожки в сжатый формат, минуя WAV-стадию, следует воспользоваться кнопкой Дорожки · Сжатые файлы. Окно выполнения процесса аналогично тому, что мы видели при извлечении дорожки в WAV-формат. Программа производит кодирование строго по порядку, определенному пользователем: пока CDex перерабатывает очередной трек, вы можете прослушать то, что умное приложение успело для вас изготовить.
Вам наверняка интересно, что скрывается под кнопкой «Часть CD»? Если выделить дорожку аудиодиска и щелкнуть по этой кнопке, в окне свойств дорожки можно задать извлечение не всей звуковой дорожки, а лишь ее части, задав временной отрезок в полях «Начальная позиция» и «Конечная позиция».
И еще об одной функции программы: CDex умеет переводить в сжатый формат не только аудиодорожки с дисков, но и WAV-файлы. Для этой процедуры достаточно воспользоваться кнопкой WAV · Сжатые файлы, выбрать в открывшемся окне нужную папку с WAV-файлами и щелкнуть Конвертация. Если у вас талант певца или же, к примеру, музыканта, то записав свое творчество в WAV-файл, вы без труда сможете перевести их в МР3-формат и гордо выставить в Интернет на радость сетевой публике. Причем для записи звука нет нужды использовать сторонние утилиты — у CDex имеется свой инструмент: меню Сервис · Запись с аналогового входа.
Что же касается перевода сжатых файлов в WAV, то я считаю данный метод форменным изуверством: дополнительные манипуляции с компрессированным звуком не прибавят качества. Правда, это не относится к случаю, когда необходимо извлечь из МР3-файла какой-либо фрагмент, чтобы сделать из него системный звук для операционной системы. Процесс перевода сжатых файлов в WAV-формат прост, как и все остальное в этом приложении: нажмите кнопку Сжатые файлы · WAV, в окне обзора найдите необходимые WAV-файлы и щелкните Конвертация. Обратите внимание на переключатель «Удалить оригинал»: если отметить эту опцию, исходный файл будет безвозвратно стерт с жесткого диска.
Разработчик встроил в CDex проигрыватель музыкальных файлов: меню Сервис · Проигрыватель. В окне проигрывателя с помощью кнопки «Выделить» следует в окне обзора найти желаемые произведения, отметить необходимые, нажать кнопку «Открыть» и наслаждаться воспроизведением. При этом автоматически создается список воспроизведения (плейлист), а командой «Сохранить» в меню «Список» плейлист сохраняется на жесткий диск.
*Формат OGG Vorbis
OGG Vorbis — относительно новый 23 стандарт сжатия по сравнению с МР3. Он распространяется по лицензии LGPL, то есть абсолютно бесплатно, а исходные тексты — как модуля кодирования, так и самого кодировщика — полностью открыты и доступны. Разработчик формата — некоммерческая организация Xiph Org Foundation( http://www.xiph.org/ ), она же осуществляет и его поддержку.
Помимо открытости исходного кода, следует отметить кросс-платформенность OGG. Кодировщик совместим почти со всеми имеющимися операционными системами. По утверждениям разработчиков OGG, в этом стандарте использована собственная психоакустическая модель (хотя злые языки уверяют, что она «позаимствована» у Fraunhofer IIS, разработчика MP3). Но, как бы там ни было, создание психоакустической модели требует очень серьезных исследований особенностей человеческого слуха.
Последняя версия формата носит имя OGG RC3( http://www.vorbis.com/ ). Данный кодер сжимает звук только с переменной скоростью кодирования (VBR), что позволяет существенно уменьшить размер файла при незначительной потере качества; поддерживает частоту дискретизации от 8 до 48 кГц, любое значения скорости потока в диапазоне от 8 до 512 Кбит/с и любое количества каналов — до 255, а не два, как обычно. Спецификация формата позволяет включать в файл комментарии и иллюстрации, причем заголовок комментария легко расширяется и позволяет включать тексты любого размера и сложности наряду с изображениями. Вот вам и бесплатный формат!