Руководство по консольному аудиоплееру CMus
CMus — это мощный свободный консольный аудиоплеер, использующий библотеку ncurses . CMus поддерживает разные музыкальные форматы файлов, включая Ogg Vorbis, FLAC, MP3, WAV, Musepack, WavPack, WMA, AAC и MP4. Хотя CMus — не единственный плеер для терминала (есть также MOC , Herrie или mp3blaster ), я предпочитаю его из-за уникальных клавиатурных сочетаний и мощных функциональных возможностей.
Особенности CMus
Ниже представлены основные возможности CMus:
- воспроизведение без пауз между треками;
- поддержка ReplayGain;
- потоковое воспроизведение mp3 и Ogg с SHOUTcast или Icecast;
- поддержка плейлистов с мощными фильтрами;
- очередь воспроизведения;
- файловый браузер;
- поддержка подписок на Last.fm или Libre.fm (с помощью скриптов);
- семь различных режимов пользовательского интерфейса;
- цветовые темы;
- клавиатурные комбинации в стиле Vi.
Использование CMus
Для начала добавим несколько песен в нашу медиа библиотеку. CMus использует команды в стиле Vi, поэтому все они начинаются с двоеточия. Например, чтобы добавить аудио файл в директорию ~/music, используется следующая команда:
Пример вставки короткого отрезка кода или отдельной команды:
$ :add ~/music
Чтобы выйти из CMus, используется команда :q (или клавиша Q ).
CMus имеет семь режимов интерфейса, которые переключаются с помощью клавиш 1-7:
- библиотека — вид по умолчанию, включающий две вкладки, на одной из которых отображаются исполнители/альбомы, на другой — список треков из выделенного альбома;
- сортированная библиотека, плейлист, позволяющий переходить между заданными треками;
- плейлист с возможностью его редактирования;
- очередь воспроизведения;
- файловый браузер;
- фильтры, список фильтров, заданных пользователем;
- настройки, здесь показаны горячие клавиши и команды.
Режим библиотеки
Два режима, которые обычно используются чаще всего, это первый и второй. Для начала посмотрим на первый:
На левой вкладке отображаются исполнители и их альбомы. Для перемещения используются клавиши со стрелками вверх/вниз или J и K . Чтобы развернуть пункт в древовидную структуру, используется пробел. При выделении альбома его треки отображаются на правой вкладке. Переключившись между вкладками с помощью клавиши TAB , можно запустить воспроизведение текущей песни клавишей Enter . Еще несколько полезных клавиш:
TAB — переключение между вкладками
X — запуск воспроизведения
V — остановка воспроизведения
C — пауза
— уменьшение громкости на 10%
+ увеличение громкости на 10%
Режим сортированной библиотеки
Второй режим (сортированная библиотека) позволяет быстро перемещаться между треками, нажав клавишу / (слэш) и слово или несколько символов из названия трека, который вы хотите найти. Дважды нажмите Enter для воспроизведения песни или N для поиска следующего совпадения.
Команды и клавиатурные сочетания CMus
Используя стиль Vi, CMus позволяет вводить команды, начинающиеся с двоеточия, и поддерживает автодополнение по TAB. Ниже приведены некоторые полезные команды (полный список доступен в режиме 7 или в man-странице программы):
- :set softvol=true — включить программное управление громкостью;
- :add /path/to/music/dir — добавить все аудио файлы из /path/to/music/dir в библиотеку;
- :clear — очистить плейлист;
- :save playlist.pls — сохранить текущий плейлист;
- :load playlist.pls — загрузить playlist.pls
- :set status-display-program=/path/to/scrobbler — задает скрипт для подключения подписки Last.fm
Использование тем (цветовых схем)
CMus поддерживает несколько цветовых схем, которые включаются с помощью команды :colorscheme . Например, :colorscheme xterm-white выглядит так:
Активация подписок Last.fm и Libre.fm
Хотя CMus по умолчанию не включает возможности подключаться к Last.fm, на официальном сайте программы выложены несколько скриптов, которые позволяют легко сделать это. В нашем примере рассмотрим скрипт на Perl, который доступен здесь под именем post-fm. Во-первых, скачайте отсюда скрипт и скопируйте его в вашу директорию ~/.cmus, затем откройте его в текстовом редакторе, чтобы добавить свои логин и пароль на Last.fm. Вставьте ниже свои логин и пароль:
our %rc = ( login => "ваш_логин", password => "ваш_пароль",
Далее, сделайте скрипт исполняемым:
$ chmod 755 ~/.cmus/post-fm
Теперь можно его активировать. Последняя версия CMus имеет команду :set status-display-program , позволяющую задать скрипт, спомощью которого вы хотите прослушивать треки. Для включения скрипта введите следующую команду:
:set status-display-program=~/.cmus/post-fm
Теперь ваша подписка должна быть активирована. Для Libre.fm необходимо раскомментировать строку # host => ‘turtle.libre.fm’, , и ниже вводить имя пользователя и пароль.
Компиляция и установка CMus в Debian 5.0 Lenny
Во-первых, установите необходимые зависимости:
$ apt-get build-dep cmus
Скачайте архив с исходным кодом с официального веб-сайта и распакуйте его:
$ tar -xjf cmus-v2.3.3.tar.bz2
Теперь компилируем и устанавливаем:
$ ./configure $ make $ make install
последнюю команду необходимо выполнять от имени root, либо можно задать соответствующий префикс и устанавливать программу как обычный пользователь:
$ ./configure --prefix=/home/USER/usr $ make $ make install
В этом случае необходимо убедиться, что путь /home/USER/usr/bin есть в вашей переменной $PATH .
Консольный плеер cmus для Linux
В данный момент использую консольный плеер cmus, который очень удобен в использовании. В свете этого, хотел бы написать небольшой обзор.
На новом рабочем месте я окончательно пересел на Linux. В связи с этим возникла необходимость поиска софта который бы подходил для сопутствующих работе нужд. Хотя для linux достаточно интерфейсных плееров, все они какие-то нагроможденные и не очень красивые (мое мнение может не совпадать с мнением читателей потому как это IMHO). В параметры поиска были включены следующие критерии:
- Простота
- Удобство
- Малое потребление RAM
- Умение воспроизводить и сканировать подпапки
- Сопутствующие плюшки, присущие обычному плееру
sudo apt-get install cmus
После первого запуска мы видим следующее:
Для того чтобы добавить музыку в плейлист достаточно выполнить команду. Нажимаем «:» как в vi и пишем:
add ~/Music
В результате выполнения этой команды перед вами предстанет список подпапок и треков как на первом скриншоте.
Для навигации по программе можно использовать arrow keys, tab (для переключения между областями), space (для раскрытия подпапок), delete (для удаления треков из списка). Так же есть огромное количество горячих клавиш. Для смены окон в самом плеере используются клавиши цифр от 1 до 7. В 7 окне можно перенастроить горячие клавиши под себя.
Подробнее прочитать об этом конечно же можно выполнив комнаду:
man cmus
В режиме воспроизведения плеер «ест» около 10 mb RAM, что я считаю очень скромным размером.
На официальном сайте заявлена поддержка еще нескольких приятных фич(вроде аудиоскроблинга), а так же дополнений(подключение мультимедийных клавиш, загрузка музыки из spotify или youtube.
Подводя итог можно смело завить, что данный плеер является крайне удобным и гибким.
Соглашусь что он не для всех, а лишь для консольных гиков =)
CMUS — создать playlist
Есть такой отличный музыкальный плейер — CMUS; прелесть его в том, что он — консольный, легковесный; висит в фоновом режиме — и играет тебе музыку. Он богат функционалом, но вот его команды — приходится запоминать.
Шаги для создания playlist и папки с музыкой\аудиокнигой. Команды у CMUS — vim-подобные, начинаются с символа двоеточия.
Создание самого playlist’а
Достаточно выполнить такую командой — в любом окне CMUS:
:pl-create my-awesome-playlist
Переход в окно с playlist’ами
Жмем кнопочку с циферкой 3 — чтобы перейти в окно, в котором отображаются все playlist’ы — они будут слева, в колонку расположены. Подводим под вновь созданный playlist курсор (arrow-keys) и жмем Space, чтобы выделить этот playlist.
Добавление файлов в playlist
Вводим команду — для добавления файлов в выделенный playlist. В моем случае — это папка с файлами аудиокниги:
:add -p ~/Music/awesome-audiobook/
Единственное неудобство — CMUS не понимает пути к файлам, если они написаны кириллицей, не латиницей; приходится заранее — переименовывать папку, перед ее добавлением в playlist CMUS. По крайней мере — я пока не нашел, как заставить CMUS понимать кириллицу в путях.
Когда команда выполнится — в правой колонке окна под номером 3 — появится список аудио-файлов, которые привязаны к данному playlist’у. Можно переходить курсором на этот список — и пользоваться.
Jest — использование skip
В Karma\Jasmine есть варианы для игнорирования выборочных тестов — xit, xdescribe. В этом посте — разберусь, какие есть варианты для этог. … Continue reading
Cmus — консольный музыкальный плеер с vim like управлением
Не так давно, я внезапно понял, что mpd для меня огромен. И правда зачем мне музыкальный демон, когда я музыку слушаю довольно редко? Посмотрел сначала mocp, но мне не понравился его mc like интерфейс, да и я слишком привык к vim like управлению. В ncmpcpp с этим было проще, там хотя бы j\k работали. Единственный плеер который уподоблял моим нуждам — это cmus. К слову сказать, плеер этот прекрасен! Кроме vim like управления, cmus ещё крайне быстр и хорошо настраиваемый.
Что меня крайне удивило, так это малое количество русской документации по cmus. Есть лишь куча упоминаний о том что такое есть, и оно вот такое вот. Не более. Вот собственно поэтому, я и решил написать про него.
Cmus имеет семь режимов(окон, как будет удобнее) переключение между которыми осуществляется с помощью цифр 1,2,3,4,5,6 и 7. Нет, тут не режимы как в vim. Тут несколько другое (картинки кликабельны):
1. Музыкальная библиотека
Cmus — Режим библиотеки
Режим просмотра вашей фонотеки. Перемещение привычными vim like «хоткеями». Добавляется музыка в библиотеку командой :add . Например так:
:add /home/username/music
Перемещение между директорией и её содержимым с помощью кнопки tab. Посмотреть альбомы исполнителя (если их несколько) — пробел (space). Обновить фонотеку — u . Так же, неплохо сохранять содержимое медиатеки в файл, дабы каждый раз cmus не сканировал её снова:
:save -l
2. Сортированная музыкальная библиотека
Cmus — Режим сортированной библиотеки
По умолчанию это просто список всех песен из библиотеки только отсортированный по авторам и альбомам. В этом режиме можно применять различные фильтры для сортировки.
3. Плэйлист
Думаю, здесь всё понятно без лишних объяснений. Одно лишь дополнение: если в play queue есть треки, то они проиграются первыми.
Плэйлист можно так же сохранять:
:save -p ~/playlist.pls
И соответственно загружать:
:load -p ~/playlist.pls
4. Очередь воспроизведения.
Cmus — очередь воспроизведения
Сюда добавляются треки для одноразового прослушивания так сказать. После того, как трек начался, он сразу же удаляется из этого списка. Воспроизводиться всегда в первую очередь именно play queue. Например если слушали музыку из плэйлиста, и добавили в play queue, то cmus после того, как закончит играть трек из библиотеки, начнёт играть содержимое play queue. Когда содержимое play queue закончится, cmus продолжит играть из плэйлиста.
5. Файловый браузер
Cmus — Режим обзора файлов на жёстком диске
Это то, за что я очень сильно люблю cmus, и чего нет в mpd. Таким образом, удобно слушать подкасты, или песню которую принёс друг на заценить не засоряя при этом свою музыкальную библиотеку.
6. Показ всех имеющихся фильтров.
Cmus — Показ всех имеющихся фильтров
В этом режиме, cmus показывает все имеющиеся фильтры которые применяются ко второму режиму отображения.
7. Окно настроек cmus’а.
Cmus — Показ всех имеющихся фильтров
Здесь доступны все опции которые есть в cmus. Редактировать лучше не через конфигурационный файл как многие привыкли, а через его интерфейс. Cmus в процессе работы постоянно зачем-то изменяет файл конфигурации. Так же все опции можно менять через командную строку. Например:
:set passwd=mypassword
Настройки сохраняются «на лету».
Пересказывать ман, я не вижу смысла, поэтому ниже лишь основные команды управления cmus:
- j\k — Вверх\вниз по списку.
- Ctrl-f\Ctrl-b — вперёд\назад на страницу
- g\G — в начало\конец (списка\библиотеки\и т.д. )
- /text — поиск вниз
- ?text — поиск вверх
- n\N — следующий\предыдущий элемент поиска
- h\l — Вперёд\Назад на 10 секунд
- +\-(минус) — Прибавить\убавить громкость на 10%
- s -случайный выбор песен
- r — повторять список
- C — проиграть текущую песню и остановиться
- c — пауза
- x — играть
- b — следующая песня
- z — предыдущая песня
- v — стоп
- y — добавить выделенный трек в плэйлист
- e — добавить выделенный трек в play queue
- p\P — переместить выделенный трек вниз\вверх
- u — сканировать снова директорию с музыкой
- D — удалить выделенный трек из списка
Так же, cmus поддерживает цветовые схемы которые можно менять с помощью команды :colorscheme. Например я использую green-mono-88:
:colorscheme green-mono-88
Можно просто написать :colorscheme и полистать имеющиеся с помощью кнопки tab. А можно самому сделать свою тему или написать :set color и дальше с помощью клавиши tab пролистать доступные опции и выбрать подходящие на свой вкус.
Cmus’у можно так же давать команды с помощью cmus-remote. Например:
cmus-remote -p # Играть cmus-remote -v 60 # Сделать громкость равную 60% cmus-remote -f file.mp3 # играть файл.
Подробнее cmus-remote —help .
По мимо всего этого, cmus’ом можно управлять удалённо (привет mpd! ☺). По умолчанию, cmus создаёт socket в /tmp . Можно указать слушать порт, через который потом можно им управлять.
cmus --listen localhost:1055
А затем с помощью cmus-remote управлять:
cmus-remote --server localhost:1055 --passwd password --play
Кстати, было бы не лишним при этом, установить пароль. Сделать это можно в окне настроек (7), или :set passwd=вашпароль .
Ещё рекомендую включить softvol дабы не регулировать громкостью cmus’а, громкость PCM. Кстати в cmus делается это лёгким движением руки:
:set softvol=true
Cmus, так же как и mpd умеет скроблинг на lastfm и вывод текущей играющей песни и статуса. Точнее, не сам cmus умеет. Cmus просто может выполнять команду при смене песни\состояния. За это ответственен параметр status_display_program которой в качестве аргумента передаётся путь до скрипта. Например для скроблинга на lastfm можно использовать вот этот скрипт last-cmus.py. Или для вывода текущего исполнителя и трека во временный файл в /tmp , можно использовать cmus-status-display.
За всеми остальными, более детальными подробностями: man cmus и man cmus-remote.