Linux komut satırı üzerinden mp3 veya wav dosyası çal


79

Komut satırı üzerinden çeşitli duyuru ve alarm ses parçalarını (.mp3 veya .wav) çalan bir Ubuntu (grafik arayüz yok) kutusuyla desteklenen bir alarm sistemi yapmak istiyorum.

Örneğin:

$ root> audioplay ./hello.wav

Ses PC ses jakından gelmelidir. Başka bir soket dinleyicisiyle de sarabilirim. (örneğin, Ruby Sinatra)

Bunu nasıl yapabilirim?


1
Örnek dosyalar arıyorsanız /usr/share/sounds, onları aramak için iyi bir yer.
Martin Thoma

Yanıtlar:


48

mpg123 mp3 dosyalarını çalan bir komut satırı aracıdır. Ubuntu'da aşağıdakilerle yükleyebilirsiniz:

sudo apt-get install mpg123

7
Bu wav dosyalarını oynatmaz.
Cerin

71

playDan komut soxpaket tarafından desteklenen herhangi bir dosya biçimini oynayacak sox, mesela varsayılan ses cihazı kullanarak

$ play something.mp3
$ play something.wav

Tüm formatlar için destek sağlamak için ek paketler kurmanız gerekebilir, örneğin Ubuntu 11.04'te MP3 desteği siz kuruluncaya kadar kullanılamaz libsox-fmt-mp3.


1
Ayrıca, ogg dosyalarını (ve muhtemelen başkalarını da) destekler.
lepe

1
Ubuntu Xenial'da libsox-fmt-alltüm formatları yüklemek için bir paket var .
Eugene Gr. Philippov,

60

Linux'ta bir WAV dosyasını oynatmanın en standart yolu aplay, ALSAsistemin bir parçası olan komutu kullanmaktır .

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

aplay a.wav

Bağlantılar: (Wikipedia) (aplay man sayfası)

(Hem Fedora'da hem de Ubuntu / Nane'de alsa-utilspaketin bir parçasıdır )

Bu, Linux kurulumunuza sox veya mplayer ya da vlc gibi ek paketler gerektirmez, günümüzde sadece bir sistemin bir parçası olan temel ALSA.


5
Bahşiş için teşekkürler! Bu takma adı kabuk konfigürasyonuma ekledim: alias beep = "aplay --quiet /usr/share/sounds/pop.wav". Bu şekilde uzun süre çalışan komutlar bittiğinde bir bildirim alabilirim. Örneğin: derlemek && çalıştırmak && bip
Jesse Hallett

1
Evet Jesse! Derleme ile aynı şeyi yapıyorum (uzun dosya dönüşümleri vb.). Buradan sesler kullanıyorum: "Opilki sesleri" (Creatve Commons lisansı altındalar) beni affet bu küçük reklamı, hiçbir şekilde projeyle ilgili değilim :)
Maxim

Ölü kolay ve zaten her yere yüklü. +1
Pitto

4
Eğer unutmayın olamaz ile bir MP3 oynamak aplay. Sadece statikleşeceksin.
starbeamrainbowlabs

@starbeamrainbowlabs, sadece WAV dosyaları hakkında yazdım!
Maxim,

22

vlcKullanarak yükleyin :

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

Tüm depoların açık olduğundan emin olun. Ayrıca, yüklemeden önce aşağıdakileri çalıştırın:

sudo apt-get update

VLC tarafından çağrılan bir komut satırı işlem yöntemi vardır cvlc. Bir sonraki bölüm .sh, komutu çağıracak bir yazı yazmak olacaktır. Bass senaryoları yazma konusunda iyi değilim. Sonuç, şöyle bir şey olurdu:

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

1
cvlc açılmayacak kadar yavaş? ve root olmayan bir kullanıcı tarafından çalıştırılması mı gerekiyor?
c2h2

1
cvlc --play-and-exit done.mp3Eğer ctrl-c'yi istemiyorsanız.
Michael Cole

cvlc --play-and-exit --no-loop done.mp3. Ekstra seçeneğe ihtiyacım var --no-loop, böylece ses dosyası tekrar tekrar tekrarlanmıyor. (vlc 2.2.2, xubuntu 16.04.4)
loved.by.Jesus

vlc'nin bazı dağıtımlarda genellikle qt5 ve X'e bağlı olduğunu, ancak mpg123'ün yalnızca alsa-lib'a bağlı olduğunu unutmayın.
recolic

8

Ses verilerinizi sadece pc hoparlör cihazına aktarabilirsiniz:

cat rawsound | /dev/pcsp

1
MP3 dosyaları ile çalışacağından çok şüpheliyim.

2
Elbette mp3 kodlu ses ile çalışmayacak, ama ham wav verileri ile çalışacak
troelskn

3
/ Dev / pcsp aygıtım yok. Başka ne deneyebilirim?
trusktr

"Cat: Rawsound: Datei Öder Verzeichnis Nicht Gefunden"
Timo

8

Ubuntu 16.04'te bir şey yüklemenize gerek yoktur. paplay [audio]PulseAudio ses sunucusunun bir parçası olan bir ses kullanarak çalabilirsiniz :

paplay mysound.mp3

7

mplayer, komut satırından hemen hemen her ses / video formatını çalabilen başka bir oynatıcıdır. ubuntu içine yüklemek için sadece bu komutu çalıştırın:

sudo apt-get install mplayer

daha sonra bu sözdizimini kullanarak dosyayı oynatabilirsiniz:

mplayer [path to file]

iyi şanslar!


0

kanberra-gtk-oyun

Basit bash scriptleri için mplayer muhtemelen çıktı olarak biraz fazla ağır ve çok ayrıntılı. canberra-gtk-playYerleşik bir seçenek ubuntu’ya önceden yüklenmiş olarak gelir:

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

Not: Uyarı ses seviyesini kullanır ve --file=dosyayı bir yoldan çalmak için geçmeniz gerekir .

Ayrıca, altındaki medya dosyalarının uzantısı olmadan dosya adını temsil eden kimliğe göre bir ses de çalabilir /usr/share/sounds(görünüşe göre bu yalnızca ses temasının bir parçası olarak kaydedilen sesler için geçerlidir):

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

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

GST-başlatma-1.0 / GST-başlatma-0.10

Başka bir seçenek de , çoğu modern linux kutusunda bulunan gstreamer komut satırı araçlarını kullanmaktır :

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

Tüm çıktıları bastırmak için yeniden yönlendirin /dev/null:

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

Hem gst-launch-1.0ve gst-launch-0.10sisteminizde mevcut olabilir.


0

burada geçecek insanlara bir cevap ekleyerek (soru 2011 eski, şimdi 2019), çünkü başka bir yol buldum:

ffmpeg benim ubuntu 19.04 yüklendi

Yani:

$ 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

tadını çıkarın 🤙

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.