Kraplax 27.09.2009 22:49
Жизнь в консоли — Консольный vim-образный плеер cmus
Казалось бы, столько уже этих консольных плееров есть, но я, как и обещал, расскажу о еще одном - cmus.Как и другие его собратия cmus распространяется под лицензией GNU GPL и, благодаря библиотеке ncurses, имеет псевдографический интерфейс. Для приверженцев редактора vim этот плеер будет особо интересен из-за особенностей управления и настройки.
cmus (C Music Player) умеет работать с медиабиблиотекой, которую, однако, не нужно добавлять через файлы конфигурации - для этого достаточно переключиться на обзор папок и одним нажатием добавлять в библиотеку целые папки с музыкой. При этом хочется отметить что cmus абсолютно неважно сколько различных папок вы решите добавить - ограничения просто нет. Я не мог проверить на своем настольном компьютере, где лежит вся моя музыка, сколько времени требуется для индексирования музыки, однако этот процесс на Eee 900 происходил буквально мгновенно - я просто пробежался по папкам с музыкой и она тут же оказалась в медиатеке.
Интерфейс
Навигация в cmus основана на переключении между видами. Если быть точнее, то это скорее напоминает вкладки в браузере, хотя самих вкладок вы не увидите. Для переключения между видами используйте ряд цифровых клавиш.
<1> - Основной вид (Tree view) Это основной вид плеера, именно он и будет приветствовать вас при каждом запуске. Слева находится древовидный список исполнителей. При нажатии на пробел появляется список альбомов, принадлежащих данному исполнителю. Справа будет выдан список песен в выделенном альбоме. Все просто и понятно. Воспросизведение можно запустить как клавишей Enter, так и специально назначенными клавишами управления воспроизведением.
<2> - Медиатека (Library) Медиатека не представляет собой ничего особенного - список файлов. Сверху вы увидите количество треков в медиатеке и порядок сортировки файлов. Для каждого элемента в медиатеке с первого взгляда можно сказать исполнителя, номер трека в альбоме, название трека, год исполнения и длительность.
<3> - Список воспроизведения (Playlist) Фактически список воспроизведения ничем не отличается от медиатеки. Он может быть вовсе пуст - музыку можно играть прямо из медиатеки. Однако, все же есть некоторые отличия. Например, в список воспроизведения можно добавить несколько раз один и тот же файл, тогда как в медиатеке будет отображаться только один. Внимательный читатель заметил, что на скриншоте медиатеки текущий трек подсвечен желтым, тогда как в плейлисте этот же трек ничем не отличается от других. Просто сейчас музыка играет из всей медиатеки, полностью игнорируя непустой список воспроизведения.
<4> - Очередь воспроизведения (Queue) Сразу говорю - на этом снимке экрана у меня ничего интересного. Я, как, наверное, и многие другие, хоть и пользуюсь этой функцией, но редко и это, увы, не тот случай. Очередь воспросизведения повторяет вид плейлиста и медиатеки, за тем лишь исключением, что те треки, которые уже отыграли попросту удаляются из очереди и список сдвигается наверх.
<5> - Проводник (Browser) В режиме проводника вы можете перемещаться между директориями вашей системы и нажатием горячей клавиши добавлять файлы в медиатеку. Можно добавлять как по одному файлу, так и целыми папками (рекурсивно).
Ничего премудрого, но удобно и функционально.
<6> - Фильтр медиатеки (Library Filter)
Фильтр позволяет настраивать отображение элементов медиатеки. С помощью него вы можете с большим комфортом управлять вашей музыкальной коллекцией. В стандартной поставке cmus идут несколько фильтров. Чтобы воспользоваться фильтром, необходимо выделить необходимое правило фильтрования, затем нажать на пробел. Слева от правила появится отметка, означающая следование правилу (метка <*>) или его отрицание (метка ). Если изменить метку на пустые квадратные скобки, то правило просто игнорируется. По окончании настройки правил необходимо ввести их в действие нажатием клавиши Enter. Пример использования - на скриншоте. Я попытался выбрать из медиатеки музыку девяностых годов, которая не была бы в формате mp3. Так как фильтр уже работает (строки правил подсвечены желтым цветом), я остался без музыки - файлов, попадающих под выбранное мной описание не нашлось. Возвращаем все назад - убираем метки с правил и жмем Enter.
<7> - Настройки (Settings) Окно настроек хранит в себе самое сокровенное для тех, кто предпочитает полный контроль. Здесь вы можете настроить действия на нажатие любой клавиши, определить свои собственные команды и изменить цыета интерфейса. Функции всех клавиш имеют довольно странное название и далеко не сразу становится понятно что они означают. Еще сложнее искать необходимый функционал - эти названия слабо коррелируют с тем, что крутится в вашей голове при поиске, например, клавиши добавления музыки из медиатеки в плейлист. Однако, позже сноровка появится сама собой и все будет гораздо легче.
Горячие клавиши
Горячие клавиши в cmus работают в стиле редактора vim. Кроме того, что выход осуществляется по горячей клавише q, можно также вручную ввести команду :qТеперь, когда мы научились выходить из плеера (он, конечно, не будет "пищать и портить файлы", но выходить надо уметь правильно) можно попробовать и поизучать его свойства.
Я приведу схему, которая позволит вам легче сориентироваться в горячих клавишах.
Синим цветом обозначены функции клавиш в нижнем регистре, зеленым - функции с зажатой клавишей Shift.
Здесь, конечно же, не все функциональные клавиши, однако это тот минимум, с которым вам прийдетсястолкнуться. Как видно, управление незамысловатое.
Форматы файлов и другие возможности
В отношении форматов cmus, наверное, не выделяется ничем - играет многое, самое популярное. Полный список можете посмотреть на странице проекта.
Также, уважаемый cyrus, начав пользоваться этим замечательным плеером после моего упоминания о нем в комментарии, подсказал мне однин полезный скрипт - last-cmus.py. Этот скрипт позволяет скробблить музыку на last.fm/libre.fm. Однако, то ли сервис libre.fm опять выдает баг, то ли я с логином/паролем намудрил чего, но скробблинг на libre.fm у меня не заработал. Но вот здесь человек взял этот скрипт и превратил его в патч для cmus, который, как он надеется, будет доступен в ближайшем релизе cmus.
Вот, наверное, и все. Советую всем попробовать - может быть это именно тот плеер, который устроит вас на все 100%.
Урррра! Наконец-то в самом деле ОБЗОРНАЯ статья, а не парочка строчек со скриншотами:) Спасибо:)
которые изменяются в процессе
например мне в амароке нравится возможность сделать список, заполняемый случайным образом по мере прослушивания — прослушал одну песню — еще одна добавилась в конец
например мне в амароке нравится возможность сделать список, заполняемый случайным образом по мере прослушивания — прослушал одну песню — еще одна добавилась в конец
помогает, когда не знаешь, что бы послушать, но в тишине сидеть не хочется
ну тут есть наоборот) очередь - она как песня проигралась, то она удаляется. Ну и shuffle есть.Так что можно изначально открыть кучу трэков и они будут рандомно проигрываться и удаляться из списка воспроизведения =)
ну в том-то и проблема, что не знаешь, что туда загрузить надо, а всю музыку — как-то лень :)
Как бы для ленивых - проигрывание музыки из всей библиотеки. Включаешь рандом и все. Больше ничего настраивать не нужно.
А динамических списков, думаю, нет. Хотя, мало ли какие скрипты там можно придумать в фильтре медиатеки ;-)
А динамических списков, думаю, нет. Хотя, мало ли какие скрипты там можно придумать в фильтре медиатеки ;-)
есть вопросы:
1. можно ли как-то сделать, чтобы play/pause выполнять по внешней команде? то есть какую команду на гномовский шоткат нужно повесить, чтобы приостановить исполнение трека? сейчас же нужно перейти к окошку терминала; так как запускаю в byobu - перейти в окошко с запущенным cmus и нажать "c". ИМХО много телодвижений.
2. почему-то не меняется громкость ни через ":vol", ни забиндинными клавишами +_=-<>{}
3. часто виснет при выполнении seek
1. можно ли как-то сделать, чтобы play/pause выполнять по внешней команде? то есть какую команду на гномовский шоткат нужно повесить, чтобы приостановить исполнение трека? сейчас же нужно перейти к окошку терминала; так как запускаю в byobu - перейти в окошко с запущенным cmus и нажать "c". ИМХО много телодвижений.
2. почему-то не меняется громкость ни через ":vol", ни забиндинными клавишами +_=-<>{}
3. часто виснет при выполнении seek
$ cmus --version
cmus 2.2.0
Copyright 2004-2006 Timo Hirvonen
cmus 2.2.0
Copyright 2004-2006 Timo Hirvonen
1. cmus-remote --play
2. Дефолтные биндинги должны менять. Если не меняет - возможно, что-то вне cmus этому мешает. Если не дефолтные (возможно, какой-то еще шорткат забинден на эти же сочетания?) - значит сбрасываем в дефолтные.
3. Ни разу не встречался с зависаниями.
2. Дефолтные биндинги должны менять. Если не меняет - возможно, что-то вне cmus этому мешает. Если не дефолтные (возможно, какой-то еще шорткат забинден на эти же сочетания?) - значит сбрасываем в дефолтные.
3. Ни разу не встречался с зависаниями.
Ещё по поводу ввода команд в стиле vim: после того как Вы ввели ":" и увидели его в нижней панели можно просто нажимать "Tab" и cmus будет показывать различные команды. Одной из таких команд будет знакомая (всем vimовцам) команда "colorscheme", которая позволяет изменять раскраску вашего плеера. Также в настройках можно самом задавать цвета для различных панелей.