ЛитМир - Электронная Библиотека
ЛитМир: бестселлеры месяца
Темные стихии
Сделай сам. Все виды работ для домашнего мастера
Проводник
Так случается всегда
Невозможное возможно! Как растения помогли учителю из Бронкса сотворить чудо из своих учеников
Не потревожим зла
Небесный капитан
Мастер клинков. Клинок заточен
Как быстро закончилась ночь
Содержание  
A
A

$ lame -b 256 audio.wav audio.mp3

Кодирование с постоянным битрейтом приводит к нерациональному использованию дискового пространства и потере качества в местах особенно насыщенной части мелодии, поэтому в последнее время практически все кодеки позволяют кодировать с переменным битрейтом (англ. variable bitrate – VBR), а проигрыватели, в том числе и аппаратные, уже различают такие файлы.

Примечание

Технология VBR впервые появилась приблизительно в 1998 году и была использована фирмой XingTech в кодеке собственной разработки, но качество этого кодека так и не достигло приемлемого уровня.

Для кодирования с использованием VBR используется параметр –v, и в параметре -V цифра дополнительно указывается качество кодирования. По умолчанию качество установлено в 4. Высшему качеству соответствует 0 (результирующий файл больше), а 9 соответствует низшему качеству (файл меньше). Альтернативно при помощи -b и -B указывается минимальный и максимальный битрейт соответственно.

$ lame -v -V 0 audio.wav audio.mp3

Кодек lame поддерживает еще один режим – average bitrate (ABR), это что-то среднее между constant bitrate (CBR) и VBR. При кодировании указывается среднее значение, и при необходимости программа сама увеличивает или уменьшает его. Для кодирования с использованием ABR используется параметр –abr битрейт (рис. 3.40).

$ lame –abr 224 -b 64 audio.wav audio.mp3

200 лучших программ для Linux - i_072.png

Рис. 3.40. Кодирование с ABR-битрейтом

Файл, закодированный такой строкой, получается на 10 % меньше, чем кодированный с постоянным битрейтом 256, а качество отличить трудно. По умолчанию на нижних битрейтах (до 160 Кбит/с) для кодирования стереосигналов lame использует режим Joint stereo, при этом левый и правый каналы кодируются вместе, но один канал кодируется полностью, а второй – как разностная информация, то есть как отличие первого от второго. Есть несколько стандартов представления информации Joint stereo, но всех их объединяет существенный недостаток – плохая передача стереоэффектов. Качество можно изменить, задав режим при помощи ключа -m, при этом возможны варианты: (m)ono, (s)tereo (кодируется два канала, но кодер может при необходимости выделить больше места одному из них; это оптимальный вариант) и (j)oin. На высоких битрейтах по умолчанию используется режим Stereo.

Для каждого битрейта применяется свой фильтр, но его можно изменить вручную с помощью -q , где  – число от 0 до 9. По умолчанию используется 5, рекомендуется –q 2 (эквивалент –h). Режим -f (-q 7) отключает психоакустические фильтры, что делает звук чище на высоких битрейтах, но существенно ухудшает на низких. Кстати, возможна компиляция lame с поддержкой Ogg Vorbis, для кодирования в этот формат следует использовать параметр –ogg.

В Linux можно объединять команды копирования и кодирования файла, выполняя их последовательно:

$ cdparanoia 1; lame cdda.wav file_name.mp3

или используя каналы (черта означает stdin – стандартный ввод команды).

$ cdparanoia 2 | lame – file_name.mp3

Кодирование в Ogg Vorbis

Сразу после появления формат MP3 стал объектом споров. Все началось с того, что компании Fraunhofer Institute и Thomson Multimedia, имеющие патент на данный формат, объявили, что он небесплатный, и потребовали отчислений за каждый кодек. В результате они остановились на отчислениях только с коммерческих программ и бытовых устройств. В странах, особенно тщательно следящих за соблюдением патентов, могут возникнуть проблемы при использовании MP3, именно поэтому в Ubuntu, Fedora и некоторых других дистрибутивах изначально нет поддержки этого формата.

В качестве ответа обществом OpenSource в июле 2002 года миру был официально представлен свой формат сжатия звука, именуемый Ogg Vorbis. Спонсором проекта на первом этапе была компания iCast, транслировавшая и распространявшая музыку через Интернет. В случае успеха и перехода на новый формат она могла сэкономить на отчислениях, но до выхода своего детища компания разорилась. Ogg Vorbis – это свободный в распространении формат. Все исходные коды полностью доступны. При сжатии звука кодек Ogg Vorbis использует свои психоакустичесие модели, причем более совершенные, чем в MP3, поэтому при одинаковом размере файлов музыка Ogg Vorbis звучит лучше. В Ogg Vorbis кодек изначально работает с переменным битрейтом, поэтому получившиеся файлы меньшего размера и качественнее сохраняют информацию. Здесь принята шкала качества в диапазоне от 0 до 10 с шагом хоть 0,01. Качеству 3 соответствует стандартное звучание для MP3 128 Кбит/с, битрейт же файла Ogg Vorbis составляет 112 Кбит/с, и получившийся файл на 20 % меньше. Качеству FM-радио соответствует 0, качество 10 приблизительно соответствует битрейту 400 Кбит/с.

Официальный сайт проекта находится по адресу http://www.vorbis.com/, где можно найти свежие версии библиотек и инструменты для работы с данным форматом. Дистрибутив Kubuntu, как и все остальные, изначально работает с этим форматом. Есть в репозитарии и пакет mp32ogg, позволяющий конвертировать файлы MP3 в Ogg Vorbis.

Для кодирования аудиофайлов в Ogg Vorbis предназначена утилита oggenc. Формат вызова в самом простом случае такой:

$ oggenc somefile.wav

Указать другое качество и название файла, отличное от оригинального, можно, использовав -q и -о (последний можно в большинстве случаев опускать).

$ oggenc infile.wav -q 9 out.ogg

Можно также указать битрейт, для этого существуют следующие параметры: -b устанавливает скорость приблизительно равную указанной, а -m и -М указывают соответственно на минимальный и максимальный битрейт.

$ oggenc infile.wav -b 128 -M 160 out.ogg

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

$ oggenc somefile.wav -t «Название_песни» -a «Артист» -l «альбом» -G «жанр» -c «остальные комментарии» -n «%a – %t.ogg»

После данной команды получившийся файл будет называться следующим образом: Артист-Название_песни.ogg.

Консольные фронэнды

Из консольных утилит в первую очередь выделим mp3c (рис. 3.41), которую можно найти на сайте проекта http://mp3c.wspse.de/ или установить пакет из репозитария Ubuntu.

200 лучших программ для Linux - i_073.png

Рис. 3.41. Программа mp3c

В последних версиях для кодирования mp3c использует кодек lame (ранее mp3enc); пакет, устанавливаемый в Ubuntu, настроен на кодирование в Ogg Vorbis. Для изменения настроек следует зайти в меню конфигурации, нажав клавишу F2. Здесь в полях (вход по Enter) нужно убрать все упоминания о серверах CDDB (вряд ли нужно, чтобы программа выходила каждый раз в Интернет, чтобы заполнить поля ID3-тега), указать каталог, в который будут помещаться готовые файлы, и образец для имени файлов и плейлиста, который программа создает автоматически. Новый кодек или параметры кодирования следует указать в поле Program for encoding (Программа для кодирования). Как вариант, можно выбрать одну из предустановок для кодирования в MP3 с использованием lame – Load Presets (MP3/lame) (Предустановки загрузки (MP3/lame)) или Ogg Vorbis – Load Presets (Ogg/oggenc) (Предустановки загрузки (Ogg/oggenc)).

Рекомендуется также включить режим encode on-fly as default (Кодировать на лету по умолчанию), иначе каждый полученный WAV-файл придется кодировать отдельно. Здесь же можно подкоректировать параметры для cdparanoia или CDDA2WAV (используется по умолчанию). После этого сохраните настройки, выбрав Save Config (Сохранить конфигурацию), и выйдите. Теперь нажатием V обновите информацию о вставленном диске и нажмите F3, чтобы кодировать весь диск; если операцию нужно прервать, нажмите F10.

28
{"b":"111586","o":1}