LXF82:Сравнение 2

Материал из Linuxformat.

Перейти к: навигация, поиск

Содержание

Три патефона

Петр Семилетов представляет вашему вниманию обзор трех аудиоплейеров.

Лет сто тому назад, желая послушать пение Федорова Ивановича Шаляпина на дому, человек шел в лавку и покупал блестящий, будто отполированный самовар, граммофон. Тогда это было дорогое удовольствие – больше полусотни рублей за штуку, да пластинки по трешке. Дешевле было выучить ноты и играть на фортепиано, или на балалайке без всяких нот. Но – песни Шаляпина или Вяльцевой, исходящие из волшебной трубы чудо-машины, оставались уделом аристократии или купцов. Покрутил купец ручку граммофона, сел за стол, узорчатой скатертью крытый, и сидит слушает, чай из блюдца попивает. Сахарок – вприкус. А Федор Иванович Шаляпин басит, басит...

Вечно только искусство, а не технические средства его передачи. Граммофоны уступили место патефонам, а те – электрофонам. На пороге двадцать первого века наступила эпоха виртуализации. Печатные машинки превратились в текстовые редакторы. Музыкальные инструменты – в VST-плагины. Магнитофоны и проигрыватели компакт-дисков тоже перешли в цифровое измерение.

В Linux первыми появились консольные плейеры: cdp, mpg123. Справедливости ради отметим, что занимают они куда меньше места, нежели граммофон, да и легче его по весу. Но – не такие красивые. Думается, поэтому возникли в Linux плейеры с графическим интерфейсом. Одним из «первых ласточек» стал XMMS, созданный по образу и подобию Winamp. В самом деле, зачем изобретать велосипед, если уже готовы его чертежи?

Winamp предлагал удобную архитектуру плейера. Распознавание форматов обеспечивают подключаемые модули. Вывод звука на различные устройства – опять-таки посредством расширений. Визуальные эффекты – снова они. Наконец, механизм сменных «шкурок». Это же граммофон с бесконечным набором иголок и мембран.

Пользователь сам выбирает цвет «позолоты»! А ручку завода крутит таймер операционной системы.

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

В настоящее время среди плееров наметились две основные архитектуры. Первая – плейер на основе подключаемых модулей, «старая школа» а-ля XMMS. Ярким представителем таких плейеров является Audacious, о котором мы поговорим ниже. Второй архитектурный подход – монолитный плейер, использующий для ввода/ вывода звуковых данных один из популярных мультимедийных движков. Речь идет о таких решениях, как Xine и Gstreamer. По моим наблюдениям, Xine более популярен в качестве движка в проектах KDE/Qt, а Gstreamer – в плейерах Gnome/GTK. Хотя, никто не мешает использовать Xine в программе на основе GTK, а Gstreamer – в KDE, что некоторые плейеры и делают. Функциональность Xine и Gstreamer выходит далеко за пределы воспроизведения звуковых форматов – поддерживается еще и видео, однако это уже выходит на рамки нашей статьи.

Обычно «монолитные» плейеры отличаются друг от друга только интерфейсом и набором функций утилитного характера, к воспроизведению музыки отношения не имеющего. Большинство таких плейеров оснащены мощными функциями ведения коллекции композиций, хранящейся на жестком диске, и даже святая святых – окно плейера с элементами управления – играет в них второстепенную роль. Списки песен, составленные по различным критериям, быстрый поиск нужной композиции – вот конек «монолитных» плейеров.

Audacious

Представитель старой школы

  • Версия: 1.1
  • Web: [1]
  • Цена: Бесплатно по лицензии GPL

Плейер XMMS, как известно, написан под библиотеку GTK+1, то есть под «старую» GTK. Уже много лет как появилась GTK+2, с измененной архитектурой и более отвечающая требованиям современности. Но XMMS продолжал писаться под первую GTK, а со временем вообще практически перестал разрабатываться.

Время от времени предпринимались попытки портировать его на GTK+2, пока за дело не взялась команда разработчиков, поставившая себе цель создать на базе кода XMMS новый плейер. Плейер этот назывался Beep Media Player, который позже был переименован в краткое BMP. Вдоволь покритиковав код XMMS за запутанность, команда BMP ударными темпами начала портировать его на GTK+2. Затем произошло вот что – разработчики BMP решили, что плейер надо радикально переделывать. Дескать, довольно таскать за собой звуковой движок, надо использовать Xine или Gstreamer. Разработка BMP прекратилась, команда взялась за BMPx – вначале с движком Xine, затем – Gstreamer. BMPx имеет очень мало общего кода с BMP.

Между тем, от «классического» BMP отпочковался проект, который получил название Audacious. Этот плейер в лучших традициях продолжает архитектуру XMMS, то есть основан на подключаемых модулях: для ввода, вывода, визуальных эффектов. Audacious можно расценивать как преемника XMMS.

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

Число модулей в дистрибутиве с исходными текстами достаточно велико. Поддерживается MP3 (с алгоритмом декодера от mpeg123), Ogg, WMA, WAV, трекерные форматы (посредством движка Modplug), форматы музыки от игровых приставок Sega Genesis/Megadrive, NES (известна у нас как Dendy), аудио CD с цифровым считыванием, MIDI и некоторые другие форматы. Как видите, Audacious построен по принципу «все свое несу с собой».

Среди модулей, отличных от средств декодирования, хочется отметить Song Change, при помощи которого можно направить данные о текущей песне (например, ее название) во внешний файл. Также любопытен LADSPA host, который позволяет «навесить» на канал вывода один или несколько подключаемых модулей формата LADSPA. Их разработано огромное количество (только сотня штук лежит одним архивом на http://plugin.org.uk). Среди них всё – и эквалайзеры, и нормализаторы звука, и различные эффекты. Фактически, при использовании пакета таких расширений у вас отпадает нужда в каких-либо дополнительных средствах обработки звука в Audacious.

Кратко коснемся модулей вывода звука. Разумеется, в наличии и Disk Writer, позволяющий записывать воспроизводимый звук в WAV-файл. А среди современных драйверов вывода, помимо ALSA, присутствует также драйвер Jack – популярного звукового сервера, активно использующегося в программах обработки звука и создания музыки.

В плане «шкурок» Audacious совместим с Winamp 2, XMMS и BMP. Интерфейс большей частью русифицирован. А вот с поддержкой русских тэгов дело обстоит хуже. В версии 1.0 была нормально реализована возможность выбрать кодировку тэгов для MP3-файлов, и настраивалась она в опциях декодера MP3. А в новой версии плейера, функцию выбора кодировки перенесли на страницу «Список воспроизведения» окна настроек, и должен отметить, что задуманное разработчиками не работает (во всяком случае, на моем компьютере). Прописываю нужную мне кодировку – все равно русские названия отображаются «крякозяблами».

Модуль поддержки простых музыкальных CD в Audacious способен искать названия песен в базе данных CDDB (по умолчанию это www.freedb.org). Скачав названия дорожек диска один раз, в следующий раз плейер прочитает их уже с локального диска, то есть данные с CDDB кэшируются (в отличие от аналогичной функции доступа к CDDB в Amarok).

Однако, на момент написания этих строк, проект www.freedb.org остановлен из-за неких разногласий между его разработчиками. Хотя база данных по-прежнему доступна, неизвестно, сколь долго это будет продолжаться. В случае чего можете попробовать бета-версию нового сервиса на основе старой FreeDB – freedb2.org ([2]).

Итак, Audacious – плейер для любителей классического дизайна, подобного старому Winamp 2.x/XMMS, однако со множеством новых функций. С другой стороны, плейер может разочаровать тех пользователей, которые привыкли к тому, что их музыка всегда под рукой в виде автоматически составленной коллекции. Именно для таких пользователей я могу посоветовать два следующих в нашем обзоре плейера.

Gmusicbrowser

Написан на Perl и гибок в настройке

  • Версия: 0.953
  • Web: [3]
  • Цена: Бесплатно по лицензии GPL

Сразу признаюсь, что это мой основной плейер. После долгих душевных терзаний я перешел на него с Amarok. Gmusicbrowser написан на языке Perl и в качестве звукового движка использует Gstreamer, а если по каким-либо причинам это невозможно, то Gmusicbrowser будет воспроизводить музыку через консольные плейеры mpg321, ogg123 и flac123 (разумеется, консолей этих плейеров вы не увидите – все происходит скрытно, под сенью интерфейса на GTK+2). Обратите внимание на название первого плейера – именно mpg321, а не mpg123. mpg321 декодирует MP3, используя целочисленные алгоритмы библиотеки MAD, которая обеспечивает отменное качество звука. Если сравнивать его с звучанием MP3 у движка Xine, то в MAD звук получается более сочным, более живым. А в сравнении с mpg123 у MAD звук более, я бы сказал, теплый. Кстати, Gstreamer тоже декодирует MP3 через MAD-плагин.

У Gmusicbrowser на первый взгляд довольно неказистый интерфейс. Исключительно стандартные элементы управления GTK+2, никакой поддержки «шкурок». Есть несколько режимов внешнего вида плейера – настраиваются они в окне настроек, на вкладке Misc – там есть опция Player windows layout со списком доступных значений. Лично мне более удобным кажется режим «with browser» (смотрите иллюстрацию). Кстати, интерфейс плейера ни капельки не русифицирован.

Gmusicbrowser умеет воспроизводить только файлы, добавленные в его виртуальную библиотеку. Составляет он ее автоматически – вам надо лишь указать, в каких каталогах искать музыкальные файлы. При этом скорость сканирования выше, нежели у Amarok. Доступ к базе данных осуществляется через достаточно сложную систему списков. Ведутся динамические списки по таким категориям, как исполнитель, название альбома, жанр, дата, каталог расположения и флаги.

Что за флаги такие? В Gmusicbrowser вы можете помечать файлы разными флажками. Есть предустановленные флаги – например, бутлег (редкая, чаще всего концертная запись, не попавшая в официальные альбомы). Можно создавать и свои собственные флаги – скажем, «Любимые песни». Кроме того, каждой песне можно выставить рейтинг.

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

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

После некоторых изысканий обнаруживается, что плейер способен на многое. Например, он может отображать обложки к альбомам. Можете выбирать их сами из числа локальных файлов, а можете скачать из Интернета. Если Amarok вытягивает изображения обложек с Amazon, то Gmusicbrowser использует для тех же целей Google.

Кроме того, есть функция, отсутствующая в Amarok – можно задать картинку не только для альбома, но и для группы/ исполнителя. Далее, из пункта меню Main > Open Context window можно вызывать контекстное меню, где, при условии, если у вас включен подключаемый модуль Lyrics (входит к комплект плейера), будет отображаться скачиваемый из Сети текст текущей песни. К сожалению, текст этот не кэшируется, то есть не сохраняется для повторного отображения.

В списке альбомов могут отображаться обложки. А таких списков – несколько штук. Во-первых, один список есть на панели категорий, а второй доступен под кнопкой Choose album from this artist (которая доступна не в каждом режиме интерфейса).

Список песен оснащен удобным контекстным меню, из которого можно удалять, копировать, перемещать и переименовывать файлы, а также экспортировать их во внешний файл формата m3u. Из того же меню можно вызвать мощный редактор тэгов. Кстати, с его помощью можно редактировать тэги не только одного, но и множества файлов одновременно. Кроме того, если выделено два или более файлов, то в контекстном меню списка песен появится пункт Mass rename, предназначенный для массового переименования файлов по заданному образцу. И еще одно замечание о редакторе тэгов: разумеется, русские тэги поддерживаются.

Выводы по Gmusicbrowser: из-за довольно хаотичного интерфейса этот плейер может отпугнуть часть пользователей. Однако Gmusicbrowser понравится тем людям, которые любят настраивать каждую мелочь в программе – он предоставляет такую возможность в полной мере. Кроме того, если разобраться в этом плейере, то вы обнаружите, что рабочие его качества – на высоте, а в количестве функций (причем полезных) Gmusicbrowser дает фору многим другим плейерам.

Amarok

Мы с ним уже где-то встречались...

  • Версия: 1.4,1
  • Web: [4]
  • Цена: Бесплатно по лицензии GPL

Этот самый многофункциональный и популярный плейер для KDE еще не входит в саму среду KDE по той причине, что цикл разработки/выпусков у Amarok отличается от аналогичного цикла KDE. Вот такой технический момент. Разработчики обновляют Amarok весьма часто, и не всегда новые версии радуют пользователей – потому что добавляя новшества, разработчики почти всегда убирают что-то полезное из старого. Кроме того, с каждой новой версией Amarok все более зависим от внешних средств.

Например, в недавней версии 1.4.1 появилась зависимость от интерпретатора Ruby. Мало было поддержки скриптов на Python? Что такого не умеет Python, из-за чего надо было привязывать плейер еще и к Ruby?

Второй отрицательный факт. Кодировка тэгов. Жил-был не тужил Amarok, можно было в нем выбирать кодировку. Был такой список кодировок. И вот на каком-то этапе этот список исчез. Хотите русские тэги в Amarok? Только UTF-8, причем в тэгах ID3V2. У вас есть коллекция музыки, где русские тэги в кодировке Windows 1251? Конвертируйте кодировку тэгов, с помощью чего-то вроде EasyTag. Если, конечно, вы хотите видеть эти тэги нормально в Amarok.

Хотя я читал на форумах, что ситуация «лечится» также патчем для Taglib, однако я не пробовал. Я ведь на Gmusicbrowser перешел. Но вернемся к Amarok. Amarok заведует коллекцией музыки на вашем жестком диске. Кроме того, из Amarok можно открывать файлы с помощью встроенного менеджера файлов, а также воспроизводить музыкальные CD (чего не умеет делать GMusicbrowser). Amarok тесно интегрирован с «прожигателем» CD/DVD – популярной программой K3b.

Плейер может представлять коллекцию в нескольких видах сортировки, а также предоставляет довольно простой поисковик (с несколькими критериями поиска). По сравнению с GMusicbrowser в этом плане у Amarok функций довольно мало. Есть, как и в Gmusicbrowser, динамические/умные списки песен – например, список самых новых песен или наиболее часто воспроизводимых. Можно создавать и свои «фильтрующие» списки песен.

В начале я упоминал о скриптах. Да, функциональность Amarok расширяется с помощью скриптов, причем плейер предоставляет встроенный графический интерфейс для скачивания новых сценариев из Сети.

Что еще умеет Amarok? Скачивать и отображать тексты песен, обложки от альбомов, информацию об исполнителе (из Wikipedia). Умеет взаимодействовать с подключенными устройствами – например с iPod. Встроенный в Amarok десятиполосный, с предусилителем, эквалайзер поможет улучшить качество воспроизведения на старых звуковых картах. В Amarok можно задавать «глобальные» горячие клавиши – то есть такие, которые действуют и когда окно плейера не активно.

В качестве звукового движка Amarok может использовать несколько библиотек – Xine, GStreamer 0.10, Helix. Если плейер собран с несколькими движками, то они становятся доступными в списке установленных движков в настройках программы.

Amarok – отличный плейер для тех пользователей, у которых мощный современный компьютер и нет необходимости видеть русские тэги во вменяемом виде. Я еще не видел лучшего плейера для KDE. И в отличие от того же GMusicbrowser, в Amarok можно работать с файлами, которые еще не добавлены в коллекцию.

Вердикт Linux Format

Подведем итоги. В этой статье я рассмотрел наиболее, на мой взгляд, интересные и функциональные плейеры. Они не требуют каких-либо экзотических библиотек. Все три плейера проверены беспроблемной сборкой из исходных текстов в системе Mandriva Linux 2006 – насколько я помню, для сборки плейеров я обновлял лишь TagLib (того требовал Amarok), хотя не уверен.

Для меня важный критерий качества кода – это легкость его сборки. В этом плане описанные мною плейеры очень хороши даже на такой относительно старой системе, как моя. Ведь, как известно, требования многих других плейеров к версиям библиотек часто идут впереди тех версий, которые в наличии в текущих выпусках больших дистрибутивов Linux, а обновление по принципу «не навреди» не всегда удается. Audacious Amarok и GMusicbrowser - стабильные, обстоятельные плейеры, каждый из которых отлично справится с ответственной задачей быть «плейером по умолчанию».

Audacious Gmusicbrowser Amarok
Эквалайзер да нет да
Визуализация да нет да
Ведение коллекции нет да да
Движок Встроенный Внешний Внешний
«Шкурки» да нет В режиме браузера
Скрипты нет нет да
Плагины да да нет
Обложки нет да да
Тексты песен нет да да
Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию