เล่นไฟล์ mp3 หรือ wav ผ่านทางบรรทัดคำสั่ง Linux


79

ฉันต้องการสร้างระบบเตือนภัยสำรองโดยกล่อง Ubuntu (ไม่มีส่วนต่อประสานกราฟิก) ซึ่งเล่นประกาศต่างๆและแทร็กเสียงปลุก (.mp3 หรือ. wav) ผ่านทางบรรทัดคำสั่ง

ตัวอย่างเช่น:

$ root> audioplay ./hello.wav

เสียงควรมาจากแจ็คเสียงของพีซี ฉันอาจห่อด้วยฟังซ็อกเก็ตอื่น (เช่น Ruby Sinatra)

ความคิดใดที่ฉันสามารถทำได้


1
ในกรณีที่คุณกำลังมองหาไฟล์ตัวอย่าง: /usr/share/soundsเป็นสถานที่ที่เหมาะสำหรับการค้นหา
Martin Thoma

คำตอบ:


48

mpg123 เป็นโปรแกรมอรรถประโยชน์บรรทัดคำสั่งที่เล่นไฟล์ mp3 คุณสามารถติดตั้งใน Ubuntu ด้วย:

sudo apt-get install mpg123

7
นี่ไม่เล่นไฟล์ wav
Cerin

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แพ็คเกจสำหรับติดตั้งทุกรูปแบบ
Eugene Gr. Philippov

60

วิธีมาตรฐานที่สุดในการเล่นไฟล์ WAV ในลินุกซ์คือการใช้aplayคำสั่งซึ่งเป็นส่วนหนึ่งของALSAระบบ

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

aplay a.wav

ลิงค์: (Wikipedia) (หน้าคนเล่น)

(ทั้งใน Fedora และ Ubuntu / Mint เป็นส่วนหนึ่งของalsa-utilsแพ็คเกจ)

สิ่งนี้ไม่ต้องการแพ็คเกจเพิ่มเติมสำหรับการติดตั้ง Linux เช่น sox หรือ mplayer หรือ vlc เพียงแค่ ALSA พื้นฐานซึ่งเป็นส่วนหนึ่งของระบบใด ๆ ในปัจจุบัน


5
ขอบคุณสำหรับทิป! ฉันได้เพิ่มนามแฝงนี้ในการกำหนดค่าเชลล์ของฉัน: alias beep = "aplay --quiet /usr/share/sounds/pop.wav" ด้วยวิธีนี้ฉันจะได้รับการแจ้งเตือนเมื่อคำสั่งที่รันเป็นเวลานานสิ้นสุดลง ตัวอย่างเช่น: รวบรวม && run && beep
Jesse Hallett

1
ใช่เจสซี! ฉันทำเช่นเดียวกันกับการรวบรวม (การแปลงไฟล์ยาว ฯลฯ ) ผมใช้เสียงจากที่นี่: "Opilki เสียง" (พวกเขาอยู่ภายใต้ใบอนุญาต Creatve Commons) ยกโทษให้ฉันนี้โฆษณาเล็ก ๆ น้อย ๆ ฉันไม่ได้เกี่ยวข้องกับโครงการในทางใดทาง :)
Maxim

ตายง่ายและติดตั้งแล้วทุกที่ +1
Pitto

4
จำไว้ว่าคุณไม่สามารถเล่น MP3 aplayที่มี คุณจะได้รับคงที่
starbeamrainbowlabs

@ starbeamrainbowlabs ฉันเขียนเกี่ยวกับไฟล์ WAV เท่านั้น!
Maxim

22

ติดตั้งvlcโดยใช้:

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

ตรวจสอบให้แน่ใจว่าคุณเปิดที่เก็บข้อมูลทั้งหมดแล้ว ให้รันสิ่งต่อไปนี้ก่อนที่คุณจะติดตั้ง:

sudo apt-get update

VLC cvlcมีวิธีการดำเนินงานบรรทัดคำสั่งเรียกโดย ส่วนถัดไปคือการเขียน.shคำสั่งที่จะเรียกใช้คำสั่ง ฉันไม่เก่งในการเขียนสคริปต์ทุบตี ผลลัพธ์สุดท้ายจะเป็นอย่างไร:

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

1
cvlc บูตช้าเกินไปไหม และต้องการเรียกใช้โดยผู้ใช้ที่ไม่ใช่รูท?
c2h2

1
cvlc --play-and-exit done.mp3ถ้าคุณไม่ต้องการ ctrl-c
Michael Cole

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 เท่านั้น
recolic

8

คุณสามารถส่งข้อมูลเสียงไปยังอุปกรณ์ลำโพง pc ได้อย่างง่ายดาย:

cat rawsound | /dev/pcsp

1
ฉันสงสัยอย่างมากว่าจะใช้งานไฟล์ MP3 ได้

2
มันจะไม่ทำงานกับเสียงที่เข้ารหัส mp3 แน่นอน แต่มันจะทำงานกับข้อมูล wav แบบดิบ
troelskn

3
ฉันไม่มีอุปกรณ์ / dev / pcsp ฉันจะลองทำอะไรอีก
trusktr

ฉันได้รับ "cat: rawsound: Datei oder Verzeichnis nicht gefunden"
Timo

8

บน Ubuntu 16.04 ไม่จำเป็นต้องติดตั้งอะไร คุณสามารถเล่นเสียงโดยใช้paplay [audio]กับเป็นส่วนหนึ่งของเซิร์ฟเวอร์เสียง PulseAudio:

paplay mysound.mp3

7

mplayer เป็นเครื่องเล่นอื่นที่สามารถเล่นไฟล์เสียง / วิดีโอทุกรูปแบบได้จากบรรทัดคำสั่ง เพื่อติดตั้งใน Ubuntu เพียงแค่รันคำสั่งนี้:

sudo apt-get install mplayer

จากนั้นคุณสามารถเล่นไฟล์โดยใช้ไวยากรณ์นี้:

mplayer [path to file]

โชคดี!


0

แคนเบอร์รา-GTK เล่น

สำหรับ mplayer สคริปต์ทุบตีง่าย ๆ อาจจะหนักเกินไปและละเอียดเกินไปในแง่ของผลลัพธ์ ตัวเลือกในตัวcanberra-gtk-playซึ่งติดตั้งมากับอูบุนตูแล้ว:

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 เปิดตัว-1.0 / GST เปิดตัว-0.10

อีกตัวเลือกหนึ่งคือการใช้เครื่องมือบรรทัดคำสั่งgstreamerซึ่งมีอยู่ในกล่อง linux ที่ทันสมัยที่สุด:

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.0และgst-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.