НАЗАД

 

 

Руководство начинающего грабителя

Классические проблемы любителя музыки: одному не нравится, что любимые произведения разбросаны по
разным альбомам, и приходится постоянно вставлять и вынимать диски, переключать дорожки; другому нравится начало и конец длинной композиции, но совершенно не нравится середина, и он каждый стремится ее “промотать”; третьему хочется сделать коллекцию любимой музыки на собственном диске… Сейчас, в эпоху распространения пишущих CD-ROM, стало возможным изготовление компакт-диска, не выходя из дома, и самым простым и быстрым способом будет, конечно же, составление сборников из уже имеющихся на CD музыкальных альбомов.

Как я уже когда-то писал, многие модели обычных CD-ROM и почти все – пишущих – позволяют считывать цифровой звук с компакт-диска прямо на винчестер, минуя промежуточное цифро-аналоговое и аналогово-цифровое преобразование, происходящее в случае обычной записи звука с CD через звуковую карту. Соответственно, при этом не происходит никаких потерь качества – разумеется, если чтение выполнено корректно. Сам процесс чтения звука с CD в английском языке называется grabbing, а наши соотечественники так и говорят – “грабить”.

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

Из моделей CD-ROM, успешно читающих звук, можно выделить Panasonic и Pioneer – с ними возникает меньше всего сложностей. Неплохо читают многие модели Sony CDU, Toshiba, LG (Gold Star), Hitachi, Plextor, причем у SCSI-моделей с этим обычно обстоит лучше, чем у IDE.

Из драйверов под DOS хорошо работают VIDE-CDD.SYS, CR-ATAPI.SYS, ATAPI-CD.SYS, а под Windows 95 – либо стандартный (ST506/ESDI или Dual PCI IDE Controller), либо, при работе на системных платах с наборами Intel FX/VX/HX/TX – драйвер Triones сам по себе, или драйвер Intel с установленным поверх мини-драйвером Panasonic MKEATAPI.MPD, который можно найти на http://www.panasonic.co.jp.

Теперь – собственно о программах чтения CD. Из того, что я видел, мне больше всего понравилась DAC для DOS и WinDAC для Windows 95 (http://members.aol.com/schmelnik/dac.html) – удобный интерфейс, возможность гибкой настройки режимов чтения, а также - возможность записывать в файл не только сам считанный звук, но и сжимать его при помощи механизма ACM.

ACM (Audio Compression Manager - диспетчера сжатия звука) – одна из стандартных подсистем Windows, заведующая упаковкой и распаковкой звуковых файлов. Под управлением этой системы работают различные виды преобразователей (Codec - Coder/Decoder, шифратор/дешифратор), через которые пропускается звук, считываемый из файла (распаковка) или записываемый в файл (упаковка). Благодаря тому, что система ACM стандартизована, ею может пользоваться любая Windows-программа - например, стандартный Фонограф (Sound Recorder), Универсальный Проигрыватель (Media Player), звуковые редакторы Cool Edit или Sound Forge. При использовании ACM Codec распаковка и упаковка данных в любом формате происходит прозрачно для программы – сама же программа работатет только со стандартным форматом звуковых данных. Существуют различные методы сжатия звука - ADPCM, a-law, u-law, однако наиболее перспективным сейчас считается MPEG-3, но о нем - чуть позже.

Программа CD Worx (www.tfh-berlin.de/~s570959/cdworx.html) в некоторых случаях удобнее в работе и надежнее читает, однако имеет весьма существенный недостаток – весь считанный файл она хранит в оперативной памяти, заставляя Windows постоянно использовать систему подкачки – в частности, мне на моих 32 Мб ОЗУ еще ни разу не удалось дождаться полной записи одной песни (50-70 Мб) из памяти на диск.

И наконец – как правильно “грабить”. Первая проблема состоит в том, что редкий привод компакт-диска умеет читать с точно заданного звукового блока – он наверняка ошибется на долю секунды вперед или назад. Это явление ошибочно называют джиттером (jitter – фазовое дрожание), в отличие от действительного дрожания фазы цифрового сигнала из-за неравномерности процесса чтения. Поэтому практически любая программа-граббер вынуждена читать блоки не последовательно, а с перекрытием – заодно считывая несколько предыдущих блоков и точно определяя место, куда “попал” привод. Однако из-за особенностей работы различных приводов одно и то же количество перекрывающихся блоков может быть недостаточным для одного и приводить к постоянным скачкам головки у другого – поэтому нередко этот параметр приходится подбирать вручную.

Вторая проблема заключается в скорости винчестера – он должен успевать записывать считанные блоки до того, как буфер CD-ROM переполнится запрошенными для следующего чтения блоками. При быстром винчестере на некоторых приводах можно использовать режимы непрерывного чтения (Normal или Burst в WinDAC), а при медленном (или при параллельном сжатии в MPEG) придется использовать режим синхронизации, который гораздо медленнее.

Третья проблема – надежность чтения. На звуковых компакт-дисках есть только два уровня защиты от ошибок, а не три, как на CD-ROM; к тому же, при прямом чтении привод не делает интерполяции искаженных в результате ошибок отсчетов звукового сигнала. Это может привести к тому, что звук, считанный с диска, великолепно звучащего в режиме проигрывания, немилосердно щелкает, а то и не читается вовсе. Однако относить это на счет диска можно только в том случае, когда большинство других дисков ваше оборудование и программы читают нормально – в противном случае нужно подбирать программы, драйверы, а возможно – и менять сам привод CD-ROM.

Если вам удалось все настроить правильно - после чтения дорожек с CD получаются звуковые файлы формата WAV, с объемом около 10 Мб на каждую минуту звучания. Теперь можно собирать коллекцию, а при желании - и дополнительно обработать композиции в редакторе звука: например, убрать чересчур длинное вступление или концовку, сделав плавный подъем или спад громкости, или объединить отдельные дорожки в одну, непрерывно переходящую от песни к песне. Если у вас есть пишущий CD-ROM - можно приступать к записи, если нет - винчестер с подготовленной коллекцией можно отдать в одну из фирм, делающих запись на компакт-диски. В результате получается обыкновенный звуковой CD, который можно слушать на любом проигрывателе - однако здесь нужно иметь в виду, что некоторые бытовые проигрыватели по ряду причин “не любят” записываемых дисков, и либо вообще не воспринимают их, либо некачественно воспроизводят.

У такого прямого копирования есть единственный недостаток - этим методом можно “запихнуть” на диск только стандартные 74 минуты звучания или чуть больше, а чтобы существенно повысить емкость диска - придется воспользоваться одним из методов сжатия звука. Наиболее популярен сейчас алгоритм сжатия Audio MPEG, имеющий три уровня (layer) - 1, 2, 3.

Первоначально алгоритмы MPEG (Motion Pictures Experts Group – группа экспертов по движущимся изображениям) использовались при сжатии видеороликов, затем те же принципы были применены и для сжатия звука. Это так называемое сжатие с потерями, не дающее полного восстановления оригинала при распаковке - оно базируется на сохранении субъективного восприятия звука, а не его объективных характеристик – уровня шума и искажений, динамического диапазона и прочих привычных параметров. Вместо этого используются результаты психоакустических исследований, которые показывают, что человек очень часто не замечает определенных частотных компонент, “замаскированных” под более яркими и заметными, и эти компоненты можно значительно ослабить или удалить совсем без заметных отличий в качестве звучания. Разумеется, если результат такого сжатия будет оценивать эксперт путем прослушивания на высококлассной аппаратуре – он чаще всего заметит различия, однако на обычной бытовой аппаратуре, которую и использует большинство слушателей, они практически незаметны. Тем более, что речь здесь пойдет в первую очередь об использовании для прослушивания обычного компьютера с приводом CD-ROM и звуковой картой, подключенной к наушникам или бытовому стереокомплексу.

Не вдаваясь в детали алгоритмов кодирования, рассмотрим кратко их характеристики. Известно, что при воспроизведении цифрового звука с компакт-диска образуется двоичный поток со скоростью 1.44 Мбит/с; это достаточно много – поэтому компакт-диск и вмещает не более 80 минут такого звучания. Три уровня сжатия по алгоритму Audio MPEG понижают скорость этого потока в следующих пропорциях:

    Layer 1: 384 кбит/с (сжатие 1:4)      Layer 2: 256..192 кбит/с (1:6..1.8)      Layer 3: 128..112 кбит/с (1:10..1:12)

Естественно, ничего не дается даром: если при скоростях свыше 256 кбит/с большинство слушателей вообще не в состоянии заметить различия, то 112 кбит/с – это тот порог, ниже которого уже явно начинают вылезать огрехи преобразования и считается невозможным сохранение “качества CD” – разрядности отсчетов в 16 бит на частоте дискретизации 44.1 кГц. Например, кодирование потока со скоростью 56..64 кбит/с (1:24) ограничивает полосу частот сигнала до 11 кГц (качество, примерно соответствующее ЧМ-приемникам), а 8 кбит/с (1:96) – до 2.5 кГц (телефонный звук). Соответственно, чем выше качество и чем ниже скорость потока – тем больше времени занимает процесс сжатия.

Восстановление же сжатого сигнала – дело гораздо более простое, и на достаточно мощном процессоре выполняется в реальном времени; для воспроизведения даже самого “плотного и качественного” Layer 3 достаточно 486DX4-133 или Pentium-90, однако выполнение других приложений может “тормозить” звук. С возрастанием мощности процессора степень его загрузки падает, и где-то на Pentium-133 уже можно спокойно работать во многих видах приложений, слушая параллельно звук в формате Layer 3.

Теперь – собственно о том, как все это использовать. Существует множество программ-компрессоров, сжимающих файл типа WAV с обычным цифровым звуком в файл типа MP3. Наиболее распространен компрессор L3ENC (Fraunhofer Institut, www.iis.fhg.de), сделанный в виде DOS-программы, однако наибольший интерес представляет его версия для Windows 95 – MPEG Layer 3 Audio Producer (Professional). Помимо визуального интерфейса, этот компрессор имеет режим Preview (предварительное прослушивание), демонстрирующий первые пять секунд сжатого звука – сжатие такого фрагмента занимает всего 10-15 секунд, и не приходится сжимать весь файл, чтобы оценить качество звука в выбранном режиме. Кроме этого, версия для Windows устанавливает в системе ACM Codec, позволяющий сжимать звук под управлением практически любой звуковой программы - хоть стандартного Фонографа. Достаточно открыть обычный звуковой файл, тут же выбрать “Сохранить как”, в диалоговом окне выбрать нужный формат данных и задать имя файла (его тип в этом случае тоже будет WAV). Однако сразу хочу предупредить - не стоит загружать в Фонограф файл большего объема, чем свободная физическая память системы – в лучшем случае это вызовет очень длительный процесс подкачки, а в худшем – завесит всю систему.

Таким образом, получить сжатые звуковые дорожки можно как минимум тремя способами:

    Вначале считать все дорожки на диск, затем по очереди сжать преобразователем;     Считывать по одной и тут же сжимать (например, WinDAC позволяет задать командный файл, выполняемый      после чтения каждой дорожки);      Задать в программе-граббере нужный ACM Codec - при этом сжатие будет идти одновременно с чтением,     однако в этом случае обязательна синхронизация секторов при чтении.

Получившиеся в результате сжатия файлы MP3 или WAV будут занимать уже гораздо меньше места (при параметрах 112 кбит/с, стерео, 44.1 кГц - около мегабайта на минуту) - на одном CD можно будет сделать сборник аж из 12 звуковых дисков, а то и больше. Однако это уже будут не звуковые диски, а обычные CD-ROM, и слушать их можно будет только на компьютере с CD-ROM и звуковой картой.

Hosted by uCoz