Программа OGMRip
OGMRip (http://ogmrip.sourceforge.net/) представляет собой приложение и набор библиотек для декодирования DVD в файлы AVI, OGM, MP4 или Matroska, поддерживаются кодеки Vorbis, MP3, PCM, AC3, DTS, AAC, XviD, LAVC, X264 и Theora. Для выполнения своих задач требует наличия mplayer, mencoder, ogmtools, mkvtoolnix, oggenc, lame и faac. Умеет извлекать субтитры в форматах SRT или VobSub, поддерживаются внешние субтитры во многих форматах. Имеет приятный интерфейс HIG (Human Interface Guidelines – Рекомендации по разработке пользовательского интерфейса), интерфейс на библиотеках Gtk 2 (рис. 3.38).
Рис. 3.38. Интерфейс OGMRip
Кроме графического, есть и консольный вариант, запускающийся при помощи команды shRip. На сайте проекта доступны исходные тексты и ссылки на пакеты для дистрибутивов Gentoo, openSUSE, FreeBSD и Fedora. В репозитарии Ubuntu нужного пакета нет, но его можно найти на сайте getdeb (http://www.getdeb.net/release.php?id=841). В случае автора во время установки дополнительно потребовались пакеты mkvtoolnix и faac. Лучше установить пакет ogmrip при помощи dpkg -i, а затем ввести sudo apt-get -f install, чтобы доустановить все зависимости. Затем нужно вставить диск, выполнить команду File → Load (Файл → Загрузить) и в появившемся меню указать нужный привод (если их несколько). Пройдет некоторое время, пока будет прочитана структура диска. Далее все просто. Отметьте нужные дорожки, выберите аудиопоток и нажмите кнопку Extract (Извлечь). Как и предыдущие две программы, OGMRip умеет самостоятельно рассчитывать битрейт кодирования, чтобы результат поместился в файл определенного размера. Для настройки выполните команду Edit → Параметры. В General (Общие) выбирается каталог, в который будет скопирован диск, и каталог для временных файлов, в списке File Name (Имя файла) выбирается имя файла. В поле Targets (Объект) указываете контейнер, а в Number of Targets (Количество объектов) и Size of Targets (Размер объектов) – количество и размер файлов. Чтобы перед декодированием DVD сначала был скопирован на жесткий диск, устанавливаете флажок Copy DVD on hard drive before encoding (Скопировать на жесткий диск перед декодированием). Настройки видео– и аудиокодеков производятся на одноименных вкладках. Здесь можно выбрать кодек, предустановки качества, количество проходов при кодировании и некоторые фильтры. Все просто и понятно.
В репозитарии Ubuntu есть еще одна программа, предназначенная для этих же целей, – DRIP (http://drip.sourceforge.net/). К сожалению, ее интерфейс, построенный на библиотеках Gtk+ первой версии, не поддерживает Unicode, поэтому после запуска разобраться с назначением меню невозможно.
Программы для копирования Audio CD
В Linux, как принято в большинстве приложений, используемых на данной платформе, процесс кодирования аудио разбит на два этапа: собственно «сграбление» Audio CD, то есть снятие с него дорожек, и сохранение их на диске в формате WAV, а затем конвертирование в любой из имеющихся форматов. Имеющиеся фронт-энды являются только надстройками над консольными утилитами.
Снятие дорожек в консоли
Наиболее популярной программой, позволяющей снять дорожки с аудиодиска, является консольная утилита со смешным названием cdparanoia (http://www.xiph.org/paranoia/). Она появилась как набор патчей к другой утилите – CDDA2WAV (сайт http://www.cdda2wav.de/), предназначенной для этой же цели. Только с 1998 года cdparanoia начала существовать как самостоятельная программа, и с тех пор эти приложения практически ничего не связывает. В репозитарии Ubuntu и других дистрибутивов Linux одноименный пакет есть, поэтому искать в Интернете и самостоятельно компилировать ничего не нужно. В самом простом случае необходим всего один аргумент – номер дорожки, которую планируется скопировать с диска (рис. 3.39):
Рис. 3.39. Снятие дорожки с Audio CD
В результате через некоторое время в текущем каталоге появится файл cdda.wav, который будет содержать нужную мелодию.
Чувства юмора у разработчиков хватило не только на название, обо всем происходящим при перегоне диска можно судить по так называемым OUTPUT SMILIES. Так, рожица :-) означает нормальный ход процесса, :^D – его окончание, а описание остальных смотрите в документации man cdparanoia. При необходимости в последней позиции можно указать название выходного файла, чтобы результат был понятней. В большинстве случаев «грабят» весь диск, для чего используется параметр -В (–batch). После этого при необходимости можно указать ряд дополнительных параметров, не забыв поставить два тире, означающих весь диск. Так, например, можно захватить мелодии, начиная с 20-й секунды первой дорожки до 30-й секунды четвертой.
$ cdparanoia -B – 1:[20.35]-4:[30.35]
Получившиеся файлы будут иметь следующие названия: track01.cdda.wav, track02.cdda.wav и так далее.
Кодирование звуковых файлов
У вас есть файлы в формате WAV; чтобы они не занимали много места, их необходимо перекодировать в подходящий формат. Раньше выбор у пользователя был невелик – бал правил MP3, однако с появлением его открытого конкурента Ogg Vorbis появилась альтернатива. Кроме того, имеется ряд кодеков, позволяющих сохранить максимальное качество при меньших, чем WAV, размерах, например FLAC (http://flac.sourceforge.net/).
Кодирование в MP3
С MP3 ситуация интересна тем, что стандарт не определяет точного принятого математического алгоритма кодирования, его разработка целиком и полностью остается на совести создателей кодеров, поэтому существует несколько кодеков, с помощью которых можно перекодировать файл. Все они отличаются условиями лицензирования, психоакустической моделью (что, в свою очередь, влияет на качество звучания полученного выходного MP3-файла на различных битрейтах), дополнительными возможностями вроде поддержки кодирования с переменным битрейтом. На первых порах для Linux (и также других систем) предлагалось несколько кодеков, позволяющих кодировать в MP3: lame (Lame Ain't an MP3 Encoder – Lame – не кодировщик MP3) (http://lame.sourceforge.net/), gogo (http://www.marinecat.net/free/windows/mct_free.htm), bladeenc, mp3enc, xingmp3enc, l3enc и другие. В Интернете можно найти статьи, в которых сравниваются результаты, полученные при помощи этих кодеков. Со временем большинство проектов прекратило развитие, и сейчас в репозитарии Ubuntu из всего разнообразия предлагаются только lame и gogo. Кстати, последний берет свое начало от lame, но написан на языке assembler и по скорости кодирования немного обходит lame.
Остановим выбор на lame. Для его установки в Ubuntu достаточно ввести sudo apt-get install lame. Параметров, которые можно установить при кодировании, эта утилита имеет множество, все они описаны в документации, узнать о них также можно, набрав lame -? (–help – для короткого варианта). Остановимся на наиболее интересных. Поддерживается кодирование с постоянным и переменным битрейтом от 32 до 320 Кбит/сек. Самым простым вариантом использования будет набрать в командной строке lame audio.wav. В результате на выходе получится файл audio.wav.mp3, закодированный c постоянным битрейтом 128 Кбит/сек. Музыку, записанную с таким качеством, можно слушать только на компактных проигрывателях, в любом другом случае лучше указать больший битрейт, воспользовавшись параметром -b; заодно вторым параметром лучше указывать и имя выходного файла: