Linuxコマンドライン経由でmp3またはwavファイルを再生する


79

Ubuntu(グラフィカルインターフェイスなし)ボックスでバックアップされたアラームシステムを作成します。このシステムは、コマンドラインを介してさまざまなアナウンスとアラームオーディオトラック(.mp3または.wav)を再生します。

例えば:

$ root> audioplay ./hello.wav

オーディオはPCオーディオジャックから送られます。別のソケットリスナーでラップすることもできます。(例:Ruby Sinatra)

どのようにこれを行うことができますか?


1
サンプルファイルを探している場合に備えて、ファイル/usr/share/soundsを探すのに適した場所です。
マーティントーマ14

回答:


48

mpg123は、mp3ファイルを再生するコマンドラインユーティリティです。次のコマンドでUbuntuにインストールできます。

sudo apt-get install mpg123

7
これはwavファイルを再生しません。
セリン

71

パッケージのplayコマンドは、デフォルトのオーディオデバイスを使用してsoxサポートされsoxているファイル形式を再生します。たとえば、

$ play something.mp3
$ play something.wav

すべての形式のサポートを得るために追加のパッケージをインストールする必要がある場合があります。たとえば、Ubuntu 11.04では、インストールするまでMP3サポートは利用できませんlibsox-fmt-mp3


1
また、oggファイル(およびおそらく他のファイル)もサポートしています。
lepe

1
Ubuntu Xenialには、libsox-fmt-allすべての形式をインストールするパッケージがあります。
ユージーンGr。フィリップ

60

LinuxでWAVファイルを再生する最も標準的な方法aplayは、ALSAシステムの一部であるコマンドを使用することです。

aplay [flags] [filename [filename]] ...

aplay a.wav

リンク:(Wikipedia) (aplay manページ)

(FedoraとUbuntu / Mintの両方で、alsa-utilsパッケージの一部です)

これには、sox、mplayer、vlcなどのLinuxインストールに追加のパッケージは必要ありません。最近のシステムの一部である基本的なALSAだけが必要です。


5
ヒントをありがとう!このエイリアスをシェル構成に追加しました:alias beep = "aplay --quiet /usr/share/sounds/pop.wav" そうすれば、長時間実行されているコマンドが終了したときに通知を受け取ることができます。たとえば:&& &&実行ビープ音をコンパイル
ジェシーハレット

1
はい、ジェシー!コンパイル(長いファイルの変換など)でもまったく同じです。:私はここからの音を使用する「Opilkiが鳴り、」私は:)どのような方法でプロジェクトに関連していないよ、私は、このマイナーな広告を許して(彼らはCreatveコモンズライセンスの下にある)
マキシム

非常に簡単で、すでにどこにでもインストールされています。+1
ピッツ

4
でMP3を再生できないことを忘れないでくださいaplay。静的になります。
starbeamrainbowlabs

@starbeamrainbowlabs、私はWAVファイルのみについて書きました!
マキシム

22

vlcを使用してインストールします。

sudo apt-get install vlc vlc-plugin-pulse mozilla-plugin-vlc

すべてのリポジトリが開いていることを確認してください。また、インストールする前に次を実行します。

sudo apt-get update

VLCには、によって呼び出されるコマンドライン操作メソッドがありますcvlc。次の部分は.sh、コマンドを呼び出すを書くことです。私はbashスクリプトを書くのが苦手です。最終結果は次のようになります。

cvlc xyz.mp3
cvlc --play-and-exit done.mp3 

1
cvlcは起動するには遅すぎますか?非rootユーザーが実行する必要がありますか?
c2h2

1
cvlc --play-and-exit done.mp3ctrl-cしたくない場合。
マイケルコール

cvlc --play-and-exit --no-loop done.mp3--no-loopサウンドファイルが繰り返し繰り返されないように、追加のオプションが必要です。(vlc 2.2.2、xubuntu 16.04.4)
loved.by.Jesus

vlcは通常、一部のディストリビューションではqt5とXに依存しますが、mpg123はalsa-libのみに依存します。
18:25の

8

サウンドデータをPCスピーカーデバイスにパイプするだけで済みます。

cat rawsound | /dev/pcsp

1
私はそれがMP3ファイルで動作することを非常に疑っています。

2
もちろん、mp3エンコードサウンドでは動作しませんが、未加工のwavデータで動作します
troelskn

3
/ dev / pcspデバイスがありません。他に何ができますか?
trusktr

私は、 "Datei VerzeichnisのNICHTのgefundenオーデル:rawsound猫"を得る
ティモ

8

Ubuntu 16.04では、何もインストールする必要はありません。paplay [audio]withはPulseAudioサウンドサーバーの一部を使用してサウンドを再生できます。

paplay mysound.mp3

7

mplayerは、コマンドラインからほとんどすべてのオーディオ/ビデオ形式を再生できる別のプレーヤーです。ubuntuにインストールするには、次のコマンドを実行します。

sudo apt-get install mplayer

その後、次の構文を使用してファイルを再生できます。

mplayer [path to file]

幸運を!


0

canberra-gtk-play

単純なbashスクリプトの場合、mplayerは出力が少し重く、冗長すぎる可能性があります。組み込みオプションはcanberra-gtk-play、ubuntuにプリインストールされています。

canberra-gtk-play --file=/usr/share/sounds/gnome/default/alerts/drip.ogg

注:アラートボリュームを使用し--file=ます。パスからファイルを再生するには合格する必要があります。

また、メディアファイルの拡張子のないファイル名を表すidでサウンドを再生することもできます/usr/share/sounds(明らかに、これはサウンドテーマの一部として登録されているサウンドに対してのみ機能します)。

canberra-gtk-play --id="desktop-login"

canberra-gtk-play --id="message"

gst-launch-1.0 / gst-launch-0.10

もう1つのオプションは、最新のLinuxボックスにあるgstreamerコマンドラインツールを使用することです。

gst-launch-1.0 playbin uri=file:///usr/share/sounds/ubuntu/stereo/message.ogg

すべての出力を抑制するには、以下にリダイレクトし/dev/nullます。

gst-launch-1.0 playbin uri=file:///usr/share/sounds/ubuntu/stereo/message.ogg > /dev/null 2>&1

両方gst-launch-1.0gst-launch-0.10システムに存在する可能性があります。


0

私が別の方法を見つけたので、ここを通過する人々に答えを追加します(質問は2011年、私の現在は2019です):

ffmpegはubuntu 19.04にインストールされます

そう:

$ ffplay music.mp3 

-nodisp
hide spectrum analyzer

-nostats
hide cursor/file informations

-hide_banner
hide build informations


hide all (no output):
$ ffplay music.mp3 -nodisp -nostats -hide_banner

楽しむ🤙

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.