GStreamer下的音视频播放

转载地址:

http://blog.csdn.net/yymcool/article/details/5872746

 

 

Gst-launch命令:

gst-launch filesrc location=*.* !demux name=demux demux.video_00 ! queue ! decoder ! ffmpegcolorspace ! videoscale ! ximagesink

(注:蓝色部分为根据具体编码格式从下表中选取替换,注意demux是根据容器格式选取的,下表中只是列出了此编码格式较常见的视频封装容器的demux,对于其它demux可参照注2中的表进行查询。输出sink还可以选取其它,如xvimagesink。若要同时播放音频,则在上句后面加上demux.audio_00 ! queue ! codec ! alsasink)

编码格式

Demux

Decoder

备注

视频

MPEG1

dvddemux/mpegdemux

ffdec_mpegvideo

MPEG2

dvddemux/mpegdemux

ffdec_mpegvideo

MPEG4

ffdemux_mov_mp4_m4a_3gp_3g2_mj2

ffdec_mpeg4/omx_mpeg4dec

omx_mpeg4dec播放时偶有丢帧现象

H.264/AVC

ffdemux_mov_mp4_m4a_3gp_3g2_mj2

ffdec_h264/omx_h264dec

omx_h264dec播放时偶有丢帧现象

DivX

avidemux/ffdemux_avi

ffdec_mpeg4/omx_mpeg4dec

XviD

avidemux/ffdemux_avi

ffdec_mpeg4/omx_mpeg4dec

VC-1

asfdemux

ffdec_wmv3

播放时视频很流畅,音频不是很流畅,会丢失,但同步。ffdemux_asf不可用,能出窗口,不能播放。omx_wmvdec不可用。

Gst-launch命令:

gst-launch filesrc location=*.* !demux ! decoder ! alsasink

(注:蓝色部分为根据具体编码格式从下表中选取替换。输出sink还可以选取其它,如osssink)

编码格式

Demux

Decoder

备注

音频

mp3

mad/omx_mp3dec

omx_mp3dec播放时必须使用omx_audiosink

ogg

oggdemux/

vorbisdec/omx_vorbisdec

wma

asfdemux/ffdemux_asf

ffdec_wmav2

aac

/aacparse

faad/ffdec_aac

wav

wavparse

注:

1.若要查询相关组件属于哪个库,可以在终端使用“gst-inspect+所要查询的组件名”来查询。

2.对于视频文件,虽然同为一种编码格式,但可能它的容器不一样,所以测试时得选取特定的demux。以下给出常用视频文件容器的demux

Container

Demux

mpeg/mpg

dvddemux

mp4/3gp

ffdemux_mov_mp4_m4a_3gp_3g2_mj2

mkv

matroskademux

mov

qtdemux

flv

ffdemux_flv

avi

avidemux

wmv

asfdemux

你可能感兴趣的:(视频,ARM,h.264,gstreamer)