Написано для сайта http://lnx.su/.
Ссылка на оригинал.
Вступление.
Давным давно, когда у Гейтса ещё не горели уши от вспоминавших его "фанатов", когда пингвинами называли только птиц с северного полюса... в подземелиях Xerox появился новый мир! Он был похож на старый, но в нём не надо было знать хитроумных "заклинаний", в нём могли существовать обычные люди, он открыл компьютерный мир внешнему миру...
Но оставались и "староверы", которые не хотели использовать для призыва приложений нечистого зверя "мышь". Они продолжали пользоваться старым, проверенным артефактом "клавиатура" для выполнения своих задач. Они читали "заклинания", чем приводили очевидцев в изумление... В конце концов 2 мира отгородились друг от друга, и лишь некоторые программки связывали один с другим...
Суть
Многие из нас знают популярные аудио плееры, например, winamp, RhythmBox, Banshe и т.д. Сегодня я хочу представить плеер, расчитанный на работу в консоли: XMMS2.
Он имеет серверную часть и клиентскую. Для запуска сервера нужно призвать его из консоли:
root@lnx:~# xmms2d PLEASE DON'T RUN XMMS2D AS ROOT! (if you really must, read the help)
И если бы я не имел привычки сидеть под рутом, что всё бы запустилось, но тут - "фигвам". Чтобы убетить, xmms2d в том, что мы уверены, что "нам оно надо", запускаем xmms2d со спец. ключиком:
root@lnx:~# xmms2d --yes-run-as-root *************************************** Warning! You are running XMMS2D as root, this is a bad idea! But I'll allow it since you asked nicely. *************************************** INFO: ../src/xmms/log.c:36: Initialized logging system :) INFO: ../src/xmms/ipc.c:950: IPC listening on 'unix:///tmp/xmms-ipc-root'. INFO: ../src/xmms/main.c:507: Using output plugin: alsa
Он выплёвывает свой PID и отдаёт нам консоль(но будет выплёвывать сюда информацию а ля "новая песенка!"). Поэтому, изменяем до
root@lnx:~# xmms2d --yes-run-as-root > /dev/null &Чтобы он выводил всё в "ничто"...
Теперь, кстати, можно закрыть и консоль, от куда он был вызван, и он не умрёт.
Итак, демон весит, теперь будем его "напрягать": посылать ему команды. Во-первых, хорошо бы ему закинуть директорию, из которой ему брать песни:
root@lnx:~# xmms2 radd file:///home/muzlo/ДДТ/
Теперь в нашем плей-листе весят по-порядку все песни из папки /home/muzlo/ДДТ/. Любителям слушать песни вразброс:
root@lnx:~# xmms2 shuffle
Глянуть список можно позвав всё тот же xmms2, но уже с параметром "list". Ну и так далее: play, next, prev.
Для того, чтобы увидеть все возможные команды можно просто набрать xmms2:
root@lnx:~# xmms2 Available commands: add - adds a URL to the playlist addarg - adds one URL with arguments to the playlist addid - adds a Medialib id to the playlist insert - inserts one URL at a specific position insertid - inserts one Medialib id at a specific position radd - adds a directory recursively to the playlist clear - clears the playlist shuffle - shuffles the playlist sort - sort the playlist; use a space delimiter for multiple properties remove - removes something from the playlist list - lists the playlist addpls - Adds the contents of a playlist file to the playlist play - starts playback stop - stops playback toggleplay - toggles playback status between play/pause pause - pause playback next - play next song prev - play previous song seek - seek to a specific place in current song jump - take a leap in the playlist move - move a entry in the playlist volume - set volume for a channel volume_list - list volume levels for each channel mlib - medialib manipulation - type 'xmms2 mlib' for more extensive help playlist - playlist manipulation - type 'xmms2 playlist' for more extensive help coll - collection manipulation - type 'xmms2 coll' for more extensive help browse - browse server file lists status - go into status mode info - information about current entry current - formatted information about the current entry config - set a config value config_list - list all config values plugin_list - list all plugins loaded in the server stats - get statistics from server quit - make the server quit help - print help about a command
Очевидно, что на такой простой протокол легко натянуть какую-нибуть оболочку... Как следствие существует куча и графических клиентов: Abraca, AlbumThing, Azrael, Blastwave, bluegroove, Camio, Esperanza. Можно использовать их...
Напоследок, ещё одна "феничка": можно добавить в файл /etc/rc.local строчки
xmms2d --yes-run-as-root > /dev/null & sleep 1; xmms2 play
И мы получаем при запуске системы сразу и запущенный плеер, причём с той песни, на которой и остановился. Мелочь, но приятно... Кстати, при выключении музыка будет играть почти до конца...


Комментарии
Re: XMMS2 - консольный аудио плеер
Здорово конечно. Но имхо MOCP поудобнее будет.
Re: XMMS2 - консольный аудио плеер
Вы не в курсе, случайно, AlbumThing с xmms2 0.5 работает? Просто ставил уже Abraca, отказывается добавлять файлы, говорят, из-за изменений в api ((
Re: XMMS2 - консольный аудио плеер
Хм... я с GUI не пользовал XMMS2, но, думаю, если разаработка не прекратилась - должно работать. ]]>http://ru.wikipedia.org/wiki/XMMS2]]> - пишут, что разработка идёт...
Отправить комментарий