WebSound.ru Home
    Главная | Комментарии | Архив выпусков | Форум и чат | AudioTag.info | Музоблог | reTracked | Авторский блог  



  Поиск:

Поиск по WebSound.Ru:
Поиск в Интернете:
Powered by




  Партнеры, реклама:




Audio watermarking
TrustedAudio.com



 

Аудио проигрыватель Foobar

(c)Тарас Бризицкий
sacrat@newmail.ru
12.Oct.2003

Все права в отношении данного документа принадлежат автору. Воспроизведение данного текста или его части разрешается только с письменного разрешения автора.

Несмотря на обилие всевозможных медиапроигрывателей, которые сейчас можно найти в Сети, немногие из них заслуживают внимания, и лишь единицы достойны того, чтобы стать той самой, единственной, программой, при помощи которой вы будете ежедневно слушать любимые мелодии. Одной из программ подобного рода является Foobar 2000.

Автором программы является Питер Павловски, разработчик большей части плагинов ввода-вывода для Winamp . После того, как контракт с Nullsoft закончился, Питер решил осуществить свою давнишнюю мечту, создать действительно качественный и удобный аудиоплеер. Детали ухода из команды разработчиков Winamp Питер предпочел не афишировать, ограничившись упоминаниями о том, что он попросту не мог больше продолжать работать с Nullsoft , которая всячески игнорировала его просьбы исправить те или иные ошибки (а ведь многие известные ошибки Winamp не исправлялись годами) или привести в порядок SDK .

Тем не менее, практически сразу же после своего ухода Питер представил общественности новый проигрыватель, Foobar . Рождаясь буквально на глазах участников форума hydrogenadio , Foobar 2000 довольно скоро превратился из гадкого утенка, способного воспроизводить лишь два-три вида файлов в один из наиболее «продвинутых» проигрывателей звуковых форматов, имеющихся сегодня.

Имя плеера, foobar 2000 образованное из названий двух переменных Foo и Bar , изначально породило немало догадок: кое-кто даже усмотрел в нем давно позабытый акроним времен Второй мировой войны, FUBAR ( Fucked Up Beyond All Recognition , раздолбанный до неузнаваемости). Все дело в том, что Питер, стараясь перейти к программированию как можно скорее, менее всего заботился о названии нового плеера, набрав в строке Project Name первое, что пришло ему в голову.

Разработка плеера идет семимильными шагами и нынешняя версия 0.7 уже вполне способна по своей функциональности соревноваться с лучшими коммерческими программами. Что же отличает данный проигрыватель от множества других? Ведь тот же Winamp 2. X по своим возможностям оставляет далеко позади большинство программ подобного рода, а по качеству звучания он давно уже способен тягаться с бывшими любимцами меломанов Apollo и NAD ?

Прежде всего это профессиональный подход к разработке. Например, в разработке программы и плагинов под нее принимают активное участие создатели кодека LAME , разработчики кодировщиков и декодеров различных форматов ( Musepack , AAC , WavePack , FLAC и т.д.), а передовые технологии тут же находят свое реальное воплощение... Как мне кажется, в будущем Foobar будет выделяться среди аудиоплееров так же, как и FAR среди файловых менеджеров: именно огромные возможности, способные удовлетворить потребности как новичков, так и искушенных пользователей, а не погоня за популярностью позволят ему остаться на плаву.

Перечислять все возможности Foobar можно очень и очень долго, я попробую останавливаться лишь на главных.

Прежде всего, в отличие от Winamp и его клонов, обычно понимающих лишь два-три основных звуковых формата, Foobar с самого рождения наделен способностью воспроизводить файлы форматов MP 3 ( Mpeg Layer III ), MP 2 ( Mpeg Layer II ), Ogg Vorbis , Musepack ( MPEG plus ), WAV E и т.д., причем путем установки соответствующих модулей (плагинов) данный список можно значительно расширить. Имея открытую архитектуру, Foobar поддерживает огромное число звуковых форматов, включая WMA , FLAC , Monkeys Audio , Speex , CDDA , MOD , XM , S 3 M , IT и многие другие, а такая небесполезная функция, как прозрачная работа с ZIP и RAR архивами, позволяет воспроизводить звуковые файлы без необходимости предварительной распаковки архива.

Многим любителям составлять сборники понравившихся мелодий наверняка придется по нраву «родная» поддержка технологии replaygain ( http :// replaygain . hydrogenaudio . org ), позволяющей выровнять уровень громкости нескольких композиций, а также избавиться от искажений, нередко возникающих при компрессии современной поп и рок музыки. Дело в том, что еще десятилетие назад аудио диски записывались, используя все возможности формата, позволяющего зарегистрировать даже неслышимые колебания воздуха в студии. При этом динамический диапазон одной композиции может быть достаточно большим, т.е. шепот звучит тихо, а симфонический оркестр, все инструменты которого задействованы одновременно, - достаточно громко на той же записи. К сожалению, в наш век радио при записи создании диска звукоинженеры часто сознательно понижают динамический диапазон записи, что может негативно отразиться на ней: и тихое пение и крик будут иметь практически одинаковую громкость. В результате фонограмма становится более подходящей для прослушивания по радио, а громкость музыки возрастает. Симфоническую музыку же, напротив, стараются записывать, сохраняя динамический диапазон композиции и стараясь не исказить замысел композитора. Поместив рядом трек двадцатилетней давности и современный хит вы наверняка услышите разницу в уровнях громкости. Причем в вашей фонотеке может быть множество самых разнообразных композиций. Не крутить же ручку громкости все время! Просканировав при помощи Foobar (впрочем, можно воспользоваться и консольными утилитами replaygain , vorbisgrain , mp 3 gain или wavegain ) нужные треки и добавив в заголовок файла данные о пиковой и средней громкостях композиции и альбома, вы навсегда избавитесь от данной проблемы, т.к. следующий раз плеер считает данные заголовка и самостоятельно «повернет ручку» за вас. Помимо выравнивания уровней громкости, replaygain поможет справиться с еще одной проблемой: искажениями, нередко возникающими при декодировании современной музыки из одного из lossy ( lossy compression - психоакустическое сжатие с потерями) формата в другой.

Еще одной интересной возможностью программы является работа с огромным числом форматов тегов ( tag ), - специальных «бирок», содержащих сведения об авторе, названии композиции и т.п. Причем, в отличие от многих подобных программ, Foobar старается придерживаться стандартов. Так, пользователи CoolPlayer, использовавшие его для работы с тегами файлов OGG Vorbis вскоре с удивлением обнаружили, что файлы после подобной обработки отказывались воспроизводиться в других плеерах. Все дело в том, что CoolPlayer помещал в Vorbis файлы ID3 тэги, не предусмотренные стандартом (родными для OGG остаются Vorbis comments), что и приводило к тому, что плеер, обнаружив «мусор» в заголовке файла, отказывался его воспроизводить. К сожалению, любимый всеми MP3 не имеет официального формата тэгов. У широко распространенного ID3 v 1.1 есть жесткие ограничения на количество и длину полей и он абсолютно нерасширяем. Его потомок, ID3v2, благодаря стараниям разработчиков как самого формата, так и проигрывателей, поддерживающих его, приобрел статус костыля и так и не смог развиться во что-либо стоящее. Появившийся чуть раньше Lyrics3, хоть и обладал возможностью содержать теги длиной более 30 символов и даже хранить текст песен внутри тегов, не смог завоевать достаточную популярность, что лишь усугубляло положение. Разрабатывая Foobar, Питер решил остановиться на двух основных форматах тэгов для MP3: ID3 v 1.1 и APE 2. И если ID 3 использовался в основном для сохранения совместимости со старыми программами или оборудованием, то APE 2, разработанный изначально для файлов Musepack , представлял из себя полноценный формат тэгов для повседневного использования. Имея поддержку юникода (о чем создатели ID 3 v 2 вспомнили относительно недавно), неограниченное число и размер полей, он способен удовлетворить потребности практически любого пользователя. Что же касается ID 3 v 2, горячо любимого «чайниками» за возможность хранить текст песен и обложку диска (а заодно и кучу другого мусора) внутри файла с композицией, то его поддержка в Foobar реализована опционально, при помощи сменного модуля.

Используя мощнейший движок TAG (изначально TAG создавался в виде консольной программы, не имеющей собственного графического интерфейса), Foobar способен корректно управляться с тэгами практически любого формата, причем чтением тегов возможности программы не ограничиваются: вы можете их редактировать, создавать новые поля или же вовсе убрать из файла. При необходимости можно произвести автоматическое заполнение тэгов в зависимости от названия файла и пути к тему, произвести заполнение тех или иных полей или переименовать файлы. Для этого достаточно лишь остановить воспроизведение: ссылки на переименованные файлы в плейлисте обновятся самостоятельно. Конечно же, встроенному теггеру недостает мощной «логики» Dr . TAG , но в большинстве случаев он с легкостью заменит программы уровня Tag & Rename . Сочетающий собственный язык форматирования (об этом чуть позже) текста с огромными возможностями TAG Foobar 2000 вполне можно порекомендовать в качестве бесплатной альтернативы любимой программе по работе с тэгами. И если на первых порах отображение тэгов вроде “ ARTIST = Bad Religion ” в окошке File info кажется непривычным, то вскоре начинаешь понимать, что все предельно просто и логично. Действительно, зачем отображать лишь пять-шесть полей, если заполненными являются десять? Ведь подавляющее большинство программ, способных работать с тегами формата ID 3 v 2 (возьмите для примера тот же Winamp ) было не в состоянии отобразить и десятую часть возможных полей. Foobar же, напротив, отображает все заполненные поля и их значения. Поверьте, это очень удобно.

Как и любой современный аудиоплеер, Foobar имеет DSP (digital sound processor ), модуль обработки сигнала. К сожалению, список имеющихся на нынешний момент модулей далеко не так велик, так у Winamp , но наиболее полезные ***

Про качество воспроизведения Foobar говорить можно долго. Вряд ли оно намного выше, чем у других современных проигрывателей, однако ряд улучшений, несомненно есть. Прежде всего пользователю предоставляется возможность самостоятельно выбрать метод вывода звука: WaveOut (наиболее подходящий для Windows NT /9x/ Me ), Direct Sound ( Windows 2000/ XP и выше) или Kernel Streaming . Последний позволяет воспроизводить звук «в обход» стандартного микшера Windows , что может быть полезно владельцам звуковых карт высокого класса . Качественный 18 полосный эквалайзер, созданный на основе небезызвестного меломанам модуля supereq наверняка вызовет искреннюю зависть пользователей Winamp (эквалайзер которого работает по известной лишь Nullsoft схеме и успешно «заваливает» верхние частоты). 64 битная обработка сигнала, пусть и влияет на финальный результат не так сильно, как хотелось бы, позволяет программе более аккуратно обращаться со звуковым потоком, а подключение программного ресемплера и использование псевдослучайного сигнала, дитеринга ( dithering ) позволит аудиофилам добиться чуть более высокого качества сигнала, правда, значительно повысив нагрузку на центральный процессор. Хотя вряд ли это остановит обладателей высококачественной аппаратуры (а среди пользователей Foobar немало тех, кто подключает компьютер к Hi - Fi компонентам стоимостью в несколько тысяч долларов ) и ценителей качественного звука.

Интерфейс программы может сначала показаться несколько непривычным: он представляет собой большой плейлист, содержащий кнопки управления воспроизведением, полосу прокрутки и компоненты меню. На самом деле все предельно логично: зачем программе, основной задачей которой является качественное воспроизведение музыки многооконный интерфейс со множеством бесполезных настроек? Значительным преимуществом Foobar перед остальными проигрывателями являются широкие возможности по настройке интерфейса. Так, при помощи меню Foobar 2000 a preferences a core можно полностью перенастроить как главное меню программы, так и контекстное меню, вызываемое при щелчке правой кнопкой мыши на файле или группе файлов, а также изменить или добавить «горячие» сочетания клавиш. Присвоить горячую клавишу можно практически любому действию программы или плагина, a при необходимости можно сделать сочетание «глобальным», что позволит использовать его даже в том случае, когда окно Foobar неактивно.

Вывод информации в плейлист, заголовок окна, статусную строку или вид подсказки в system tray можно задать ( foobar 2000 a preferences a display a title formatting ), используя достаточно мощный встроенный язык разметки, позволяющий визуализировать практически любую информацию о файле. Так, помимо простейших Artist - Title можно создавать и более сложные конструкции, вроде 14. Secret Garden - [ Mystic Legend ( compilation ) #14] - Elan ( MUSEPACK @216 TA ).3:09 ( воспроизводится композиция Elan группы Secret Garden со сборника mystic Legand , трек №14 и занимающая позицию 14 плейлиста. Помимо этого композиция имеет формат Musepack с битрейтом 216 килобит в секунду, а информация об общей громкости файла ( T , - track gain ) и альбома ( A , - album gain ) уже содержится в тегах). При необходимости, можно сделать так, чтобы вывод информации зависел от каких-либо условий. Например, при отсутствии тегов можно вывести имя файла, или в случае, если файл имеет определенный формат изменить цвет текста. В любом случае, потратив час-два на изучение и эксперименты с языком разметки вы без труда сможете настроить вывод информации в наиболее удобной и информативной для вас форме.

Возможно, не всем придется по душе плейлист Foobar . Тем более, что иногда необходимо иметь на экране лишь небольшое окно с названием композиции и элементами управления. К счастью, сейчас имеется возможность воспользоваться одним из доступных плагинов управления плеером, наиболее интересными из которых являются foo _ ufts и foo _ looks ( foo _ wsgui ). Foo _ ufts представляет из себя окно, которое можно расположить в любом месте экрана или свернуть в небольшую полоску, не занимающую много места. При всех своих достоинствах (а их немало, т.к. плагин создавался в те времена, когда Foobar не имел даже собственной полосы прокрутки) окно плагина в развернутом состоянии занимает слишком много место, а в свернутом крайне неинформативно. Foo _ looks же, напротив, предоставляет пользователю возможность создать любой графический интерфейс, используя собственный формат «скинов». В том случае, если у вас не окажется желания или возможности возиться с созданием интерфейса самостоятельно, можно посетить сайт плагина ( www . foobarlooks . tk ) и загрузить понравившуюся «шкурку» оттуда. Конечно же, в этом случае возможности по настройке внешнего вида программы будут значительно выше. Те, кто предпочитает сочетание компактности и высокой функциональности, могут найти на сайте плагина немало минималистских интерфейсов, занимающих минимум места на экране при сохранении основных функций управления воспроизведением. С версией 0.7 графических интерфейс программы полностью «отделился» от ядра, что позволит новым плагинам использовать движок программы, полностью заменив ее интерфейс.

Последние версии Foobar способны не только воспроизводить музыку различных форматов, но и производить декодирование аудиофайлов в wave при помощи функции Disc Writer . В этом случае вы получите возможность не просто получить декодированный сигнал в удобном для обработке формате Wave PCM (8-32 бит), но и применить к нему различные DSP эффекты или псевдослучайный сигнал ( dither ), повысив качество звучания результирующего файла. Помимо вывода звукового потока в wave файл, вы можете воспользоваться Disk Writer для компрессии имеющихся файлов или транскодирования (от анг. Transcode , преобразование формата) файла из одного формата в другой. Это достаточно удобно в том случае, если вы хотите «дожать» файл до размера, приемлемого для передачи через Интернет или использования в MP3 плеере с Flash памятью. Список доступных для преобразования форматов немал, a скачав необходимые плагины с сайта программы вы сможете превратить Foobar в кодировщик FLAC , Musepack , Monkeys Audio , OGG Vorbis (используя усовершенствованный кодер GT3), MP 3, Psytel AAC , WMA и т.д. Причем для того, чтобы запустить кодировщик, вовсе не обязательно прерывать воспроизведение музыки, сжатие неплохо работает и в фоновом режиме.

При желании прямо из Foobar можно записать Audio CD при помощи плагина, использующего движок программы Nero Burning ROM (разумеется, для этого потребуется сама Nero ). Для этого вам потребуется лишь выделить необходимые файлы, щелкнуть по ним правой кнопкой мышки и выбрать пункт “ Write Audio CD …” из контекстного меню. Программа самостоятельно декодирует сжатые файлы и запишет их на чистый диск.

Профессионалов может заинтересовать возможность проведения ABX тестов («слепое» тестирование на слух) при помощи программы. Для этого необходимо выбрать два трека в плейлисте, вызвать контекстное меню и воспользоваться пунктом “ ABX two tracks …”. В отличие от других методов сравнения качества работы lossy кодеков (т.е. использующих сжатие с потерями, отбрасывая часть информации) ABX тестирование сводит к минимуму «эффект пустышки». Так, при сравнении на слух двух файлов, сжатых при помощи разных кодеков, значительную роль в оценке результата могут играть личные предпочтения и предрасположенности пользователя, что исключено при проведении «слепых» тестов, когда пользователь лишен возможности узнать, какой именно файл он сейчас прослушивает. Сочетание в Foobar аудиоплеера, кодировщика и программы ABX тестирования позволяет проводить серии тестов при помощи одной программы, не отвлекаясь на набор дополнительных приложений.

При помощи сменных модулей функциональность программы можно значительно расширить. Помимо стандартного набора функций, присутствующих практически в любом современном плеере, плагины позволяют дополнить Foobar ***

Например, используя модуль OGGPreview ( foo _ oggpreview ) можно создавать версии альбома для предварительного прослушивания, при этом небольшой (обычно 30-60 секунд) фрагмент выбранной композиции транскодируется в формат OGG Vorbis . Таким образом, собрав коллекцию превью файлов, вы всегда сможете быстро найти нужный альбом, даже не зная его названия. С другой стороны, данный плагин также может быть полезен тем, кто выкладывает свои произведения в Интернет: скачав небольшой (100-200 килобайт) фрагмент произведения посетитель сайта может решить, есть ли смысл загружать полноразмерный звуковой файл целиком.

Модуль Recycler ( foo _ delete ) позволяет физически удалять файлы плейлиста, используя контекстное меню. Есть смыл воспользоваться данным модулем в том случае, если вам часто приходится иметь дело с большими массивами файлов, загруженных из Интернет: в случае, если та или иная композиция по каким-либо причинам вам не нравится, ее можно удалить, не переключаясь в файловый менеджер.

Text Writer ( foo _ text ) придется впору любителям открыто демонстрировать свои музыкальные пристрастия. Этот компонент записывает сведения о воспроизводимой в данный момент композиции в текстовый файл, содержимое которого потом можно автоматически вставлять в сообщения конференций, письма электронной почты и т.д. Причем вы сами можете***

На данный момент существуют два дистрибутива программы: официальный, который можно загрузить с сайта программы <http://www.hydrogenaudio.org> и альтернативный дистрибутив, созданный Case , активно принимающим участие в создании программы. Альтернативный дистрибутив, загрузить который можно с сайта его создателя, <http://www.saunalahti.fi/~cse/foobar2000/> включает в себя значительное количество дополнительных плагинов и регулярно обновляется, так что, загружая время от времени новую версию дистрибутива у вас окажется не только обновленная программа, но и полный комплект полезных плагинов.