Vamos a ver como podemos crear reproductores GStreamer para los distintos códecs de audio y vídeo existentes, usando gst-launch y construyendo las distintas tuberías usando los distintos plugins de GStreamer.

Ingredientes

Necesitas tener instalados los paquetes gstreamer0.10-tools y los plugins necesarios: gstreamer0.10-plugins-base, gstreamer0.10-farsight, gstreamer0.10-plugins-good, gstreamer0.10-plugins-ugly, gstreamer0.10-alsa, gstreamer0.10-ffmpeg y gstreamer0.10-x. Veremos como podemos crear reproductores genéricos, de audio y de vídeo. Según el códec del fichero que quieras reproducir, tienes que ejecutar en una consola la tubería GStreamer oportuna.

Reproductor Genérico

$ gst-launch-0.10 playbin uri=file:///home/usuario/file.mpg

Reproductor de Audio

Genérico
$ gst-launch-0.10 filesrc location=file.ogg ! decodebin ! audioconvert ! alsasink
Ogg Vorbis
$ gst-launch-0.10 filesrc location=file.ogg ! oggdemux ! vorbisdec ! audioconvert ! alsasink
FLAC
$ gst-launch-0.10 filesrc location=file.flac ! flacdec ! audioconvert ! alsasink
MP3
$ gst-launch-0.10 filesrc location=file.mp3 ! mad ! audioconvert ! alsasink

Reproductor de Vídeo

Genérico
$ gst-launch-0.10 filesrc location=file.ogg ! decodebin ! ffmpegcolorspace ! xvimagesink
Ogg Theora
$ gst-launch-0.10 filesrc location=file.ogg ! oggdemux ! theoradec ! xvimagesink
MPEG2
$ gst-launch-0.10 filesrc location=file.mpg ! ffdemux_mpegts ! mpeg2dec ! xvimagesink
MPEG4
$ gst-launch-0.10 filesrc location=file.mp4 ! ffdemux_mov_mp4_m4a_3gp_3g2_mj2 ! ffdec_mpeg4 ! xvimagesink

Reproductor de Audio y Vídeo

Genérico
$ gst-launch-0.10 filesrc location=file.ogg ! decodebin name=decoder
decoder. ! ffmpegcolorspace ! xvimagesink
decoder. ! audioconvert ! alsasink
Ogg Vorbis/Theora
$ gst-launch-0.10 filesrc location=file.ogg ! oggdemux name=demuxer
demuxer. ! theoradec ! xvimagesink
demuxer. ! vorbisdec ! audioconvert ! alsasink

Más información

Si quieres saber los plugins GStreamer instalados en el sistema, puedes usar gst-inspect-0.10. Son bienvenidas las tuberías para reproducir otros tipos de ficheros.


blog comments powered by Disqus