Cmus

提供: ArchWiki
2022年1月15日 (土) 12:43時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (タイポ修正)
ナビゲーションに移動 検索に移動

cmus (C* MUsic Player) は主要な音声フォーマットをサポートする、小さくて高速でパワフルなコンソール音楽プレイヤーです。ギャップレス再生や ReplayGain のサポート、MP3 や Ogg のストリーミング、ライブフィルタリング、インスタント起動、キーバインドのカスタマイズなど様々な機能が揃っており、デフォルトキーバインドは vi スタイルになっています。

インストール

cmus パッケージをインストールしてください。あるいは開発版は cmus-gitAUR でインストールできます。

cmus で alsa を使う

Advanced Linux Sound Architecture で cmus を使用する場合、デフォルト設定では音楽が再生できません。cmus を起動してもおそらく何も表示されません。alsa を使うには、新しい設定ファイルを作成して以下の変数を設定してください:

~/.config/cmus/rc
set output_plugin=alsa
set dsp.alsa.device=default
set mixer.alsa.device=default
set mixer.alsa.channel=Master

使用方法

Cmus には素晴らしいリファレンスマニュアルが付いています。

$ man cmus 
$ man cmus-tutorial
$ man cmus-remote

Cmus の起動

cmus を起動するには、次を入力:

$ cmus

cmus を初めて起動したときはアルバム/アーティストタブが開かれます。

音楽の追加

5 を押してファイルブラウザタブに切り替えることで音楽を追加できます。タブを切り替えたら方向キー (up, down), Enter, Backspace を使って音声ファイルを保存しているディレクトリまで移動してください。また、vim のキーバインド (k, j) を使って保存している音楽を探すこともできます。

cmus ライブラリに音楽を追加するには、方向キーでファイルやフォルダをハイライトしてから、a を押します。a を押すと cmus は次の行に移動して (行を移動してくれるおかげでファイルやフォルダを一斉に追加するのが楽になっています) ライブラリに a を押したファイル/フォルダを追加します。大量の音楽が入っているフォルダを追加した場合、しばらく時間がかかることがあります。ファイルが追加されると、秒数が右下に表示されます。それが cmus ライブラリに含まれた全ての音楽の合計時間になります。

ノート:
  • cmus がファイルを移動・複製したり、変更を加えることはありません。ファイルの場所を覚えてメタデータ (再生時間やアーティスト名など) をキャッシュするだけです。
  • 終了時に Cmus は設定やライブラリなどを自動的に保存します。

トラックの再生

1 を押してシンプルなライブラリビューを表示してください。方向キーの updown (あるいは k, j) を使って再生したいアーティスト名やアルバムを選択します。アーティスト名で space を押すと、そのアーティストのアルバムが開いたり閉じたりします。Tab を押してトラックのリストとアーティスト/アルバムビューを切り替えて Enter を押せば選択されたトラックが再生されます。以下のキーで再生を制御できます:

一時停止・再生するには c
10秒ずつシークするには方向キーの right/left (あるいは h, l)。
1分ずつシークするには </>

キーバインド

キーバインドを変更する方法は設定セクションを見てください。

タブ

cmus にはタブが7つあります。1-7 キーを押せばアクティブなタブが切り替わります。

ライブラリタブ (1)

いわゆるライブラリに含まれている全てのトラックが表示されます。トラックはアーティスト名でソートされアルバムツリーが作られます。アーティストの順番はアルファベット順です。アルバムは年代順です。

ソートされたライブラリタブ (2)

同じ中身を表示しますが、リストはユーザーの抽出条件によって自動的にソートされます。

プレイリストタブ (3)

編集できるプレイリストを表示。ソートもできます。

プレイキュータブ (4)

次に再生されるトラックのキューを表示します。キューに入っているトラックは他の曲 (プレイリストやライブラリ) よりも先に再生されます。

ブラウザ (5)

ディレクトリブラウザ。このタブで、ファイルシステムからライブラリやプレイリスト、あるいはキューに音楽を追加できます。

フィルタータブ (6)

ユーザーが定義したフィルターを表示。

設定タブ (7)

設定を変更します。詳しくは下のセクションを参照。

設定

cmus を設定するには、起動してから 7 を押して設定タブに切り替えてください。デフォルトのキーバインドのリストが表示されます。方向キーでリストのフィールドを選択して Enter を押すことで値を編集します。また、Ddel でバインドを削除することもできます。バインドを解除したコマンドやオプションの変数を編集するには、リストを下にスクロールしてください。変数は space で切り替えることができます。Cmus ではインターフェイスのあらゆるエレメントの色を変更することが可能です。色の前に "light" を付けることで明るく設定したりテキストエレメントの属性を設定できます。

リモートコントロール

Cmus は cmus-remote で unix ソケットを使うことで外部から操作することができます。これのおかげで外部アプリケーションやキーバインドで再生を制御するのが簡単になっています。

例としては XF86 のキーボードイベントで Cmus の再生を制御するという使い方があります。以下のスクリプトは Cmus が起動していない場合 xterm ターミナルで Cmus を起動して、既に起動している場合は再生/停止を切り替えます:

#!/bin/sh
# This command will break if you rename it to
# something containing "cmus".

if ! pgrep cmus ; then
  xterm -e cmus
else
  cmus-remote -u
fi

前記のスクリプトを Openbox で使うには、上のコードを ~/bin/cplay ファイルにコピーしてください。そして chmod +x ~/bin/cplay でファイルに実行可能権限を付与して、~/.config/openbox/rc.xml を編集してキーバインドを以下のように変更します:

ノート: rc.xml のキーバインドが衝突していないことを確認してください。
~/.config/openbox/rc.xml
  <keyboard>
    <keybind key="XF86AudioPlay">
      <action name="Execute">
        <command>cmus-remote -u</command>
      </action>
    </keybind>
    <keybind key="XF86AudioNext">
      <action name="Execute">
        <command>cmus-remote -n</command>
      </action>
    </keybind>
    <keybind key="XF86AudioPrev">
      <action name="Execute">
        <command>cmus-remote -r</command>
      </action>
    </keybind>
  </keyboard>

これでキーボードの XF86AudioPlay キーを使用すると、cmus が起動します。cmus が既に起動している場合、再生が開始されます。XF86AudioNext と XF86AudioPrev キーでトラックが変わります。

参照