2011-04-27 12:58:56 +0000 2011-04-27 12:58:56 +0000
81
81

Reproducir archivo mp3 o wav a través de la línea de comandos de Linux

Me gustaría hacer un sistema de alarma respaldado por una caja de Ubuntu (sin interfaz gráfica), que reproduce varias pistas de audio de anuncios y alarmas (.mp3 o .wav) a través de la línea de comandos.

Por ejemplo:

$ root> audioplay ./hello.wav

El audio debe provenir de la toma de audio del PC. También podría envolverlo con otro socket listener. (por ejemplo, Ruby Sinatra)

¿Alguna idea de cómo puedo hacer esto?

Respuestas (8)

61
61
61
2012-11-28 06:20:06 +0000

La forma más estándar de reproducir un archivo WAV en Linux es usando el comando aplay, que es parte del sistema ALSA.

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

aplay a.wav

Enlaces: (Wikipedia) (página de aplay man)

(Tanto en Fedora como en Ubuntu/Mint es parte del paquete alsa-utils)

Esto no requiere ningún paquete adicional a su instalación de Linux como sox o mplayer o vlc, sólo el ALSA básico que es parte de cualquier sistema hoy en día.

48
48
48
2011-04-27 13:14:11 +0000

mpg123 es una utilidad de línea de comandos que reproduce archivos mp3. Puedes instalarlo en Ubuntu con:

sudo apt-get install mpg123
23
23
23
2011-04-28 04:48:27 +0000

Instale vlc usando:

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

Asegúrese de que tiene todos los depósitos abiertos. También ejecuta lo siguiente antes de instalar:

sudo apt-get update

VLC tiene un método de operación de línea de comandos invocado por cvlc. La siguiente parte sería escribir un .sh que llame al comando. No soy bueno escribiendo scripts bash. El resultado final sería algo como:

cvlc xyz.mp3
cvlc --play-and-exit done.mp3
8
8
8
2011-04-27 13:03:10 +0000

Puedes simplemente canalizar tus datos de sonido al dispositivo de altavoz de la PC:

cat rawsound | /dev/pcsp
7
7
7
2013-08-20 13:35:34 +0000

mplayer es otro reproductor que puede reproducir casi cualquier formato de audio/video desde la línea de comandos. para instalarlo en ubuntu sólo tienes que ejecutar este comando:

sudo apt-get install mplayer

puedes reproducir el archivo usando esta sintaxis:

mplayer [path to file]

¡buena suerte!

7
7
7
2017-03-08 11:16:46 +0000

En Ubuntu 16.04, no hay necesidad de instalar nada. Puedes reproducir un sonido usando paplay [audio] con es parte del servidor de sonido PulseAudio :

paplay mysound.mp3
1
1
1
2019-05-07 16:37:44 +0000

añadiendo una respuesta para la gente que pasará por aquí (la pregunta es 2011 vieja, mi ahora es 2019), porque encontré otra manera:

ffmpeg está instalado en mi ubuntu 19.04

Así que:

$ 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

disfruta

0
0
0
2016-11-16 08:05:47 +0000

canberra-gtk-play

Para simples guiones de bash mplayer es probablemente un poco demasiado pesado y demasiado verboso en términos de salida. Una opción incorporada es canberra-gtk-play que viene preinstalada en ubuntu:

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

Nota: utiliza el volumen de las alertas, y debes pasar --file= para reproducir un archivo de una ruta.

También puede reproducir un sonido por id que representa el nombre del archivo sin la extensión de los archivos multimedia en /usr/share/sounds (aparentemente esto sólo funciona para los sonidos que están registrados como parte de un tema de sonido):

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

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

gst-launch-1. 0/gst-launch-0.10

Otra opción es usar las herramientas de línea de comandos gstreamer que están presentes en la mayoría de las cajas de linux modernas:

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

Para suprimir toda la salida rediríjala a /dev/null:

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

Tanto gst-launch-1.0 como gst-launch-0.10 podrían estar presentes en su sistema.

Preguntas relacionadas

6
10
10
5
8