【miscellaneous】GStreamer下的音视频播放
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。
|
Demux |
|
|
mpeg/mpg |
dvddemux |
|
mp4/3gp |
ffdemux_mov_mp4_m4a_3gp_3g2_mj2 |
|
mkv |
matroskademux |
|
mov |
qtdemux |
|
flv |
ffdemux_flv |
|
avi |
avidemux |
|
wmv |
asfdemux |
【miscellaneous】GStreamer下的音视频播放的更多相关文章
- Android音视频之MediaPlayer音视频播放
前言: 昨天总结了视频录制,今天来学习一下视频的播放,Android的视频播放主要采用MediaPlayer类. MediaPlayer介绍 MediaPlayer类可用于控制音频/视频文件或流的播放 ...
- Pyqt 音视频播放器
在寻找如何使用Pyqt做一个播放器时首先找到的是openCV2 openCV2 貌似太强大了,各种关于图像处理的事情它都能完成,如 读取摄像头.图像识别.人脸识别. 图像灰度处理 . 播放视频等,强 ...
- AVAudioFoundation(2):音视频播放
本文转自:AVAudioFoundation(2):音视频播放 | www.samirchen.com 本文主要内容来自 AVFoundation Programming Guide. 要播放 AVA ...
- 6、Qt Project之音视频播放
音视频播放 这里简单的制作了一个音乐播放器,播放器的界面设计如下所示: Step1:这里是界面对应的HTML文件: <?xml version="1.0" encoding ...
- 开源安卓Android流媒体音视频播放器实现声音自动停止、恢复、一键静音功能源码
本文转自EasyDarwin团队John的博客:http://blog.csdn.net/jyt0551/article/details/60802145 我们在开发安卓Android流媒体音视频播放 ...
- iOS 音视频播放
播放控制切换为: ijkplayer wiki: https://github.com/changsanjiang/SJVideoPlayer/wiki/Use-ijkplayer 播放控制切换为: ...
- iOS AVKit音视频播放全面详解
公司项目中经常要用到音视频处理,也需要去定制一些东西,然后整理这些音视频处理就显得尤为重要!方便自己和广大朋友学习收藏! 以下参考连接特别重要: 苹果官方:AVKit API 苹果官方:AVFound ...
- iOS - AVPlayer 音视频播放
前言 NS_CLASS_AVAILABLE(10_7, 4_0) @interface AVPlayer : NSObject @available(iOS 4.0, *) public class ...
- 分享几个不错的Android开源音视频播放器
整理了一下Github上几个开源的音视频播放器项目,有兴趣的同学可以clone代码去研究学习. UniversalMusicPlayer https://github.com/googlesamp ...
随机推荐
- 获取Druid连接池里当前连接数
JdbcTemplate jdbcTemplate=(JdbcTemplate) SpringUtils.getBean("jdbcMysqlTemplate"); DruidDa ...
- SQL SERVER PIVOT使用
参照这个网址介绍 http://www.cnblogs.com/lwhkdash/archive/2012/06/26/2562979.html 一般SQL Server的函数都会识别为紫色,可是PI ...
- P3410 拍照
漂亮小姐姐点击就送:https://www.luogu.org/problemnew/show/P3410 题目描述 小B有n个下属,现小B要带着一些下属让别人拍照. 有m个人,每个人都愿意付给小B一 ...
- List集合类
1.1: List.add方法——向集合列表中添加对象 public static void main(String[] args) { List<String> list=new Ar ...
- Python豆瓣书籍信息爬虫
练习下BeautifulSoup,requests库,用python3.3 写了一个简易的豆瓣小爬虫,将爬取的信息在控制台输出并且写入文件中. 上源码: # coding = utf-8 '''my ...
- 三十三、DNS资源记录类型和请求流程
DNS分布均衡(Load balance)的实现 在上级数据库中写两条记录(同一个名字对应对个IP时),DNS会自动将请求基于轮循方式,分给每个DNS服务器 例如: 第一次将请求给第一个DNS,第二次 ...
- Java常用工具类之数据库操作辅助类DBUtil.java
package com.qushida.util; import java.beans.BeanInfo; import java.beans.Introspector; import java.be ...
- Java+Bigdata学习路线
Java+Bigdata学习路线 2019-05-28 07:04:33 @Auther:MrZhangxd STAGE 第一阶段:JAVA基础 |-第一阶段:JAVA基础 | |-可掌握的核心能力 ...
- pimpleFoam求解器 vs simpleFoam求解器 vs pisoFoam求解器 vs icoFoam
翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/68072-pimplefoam-vs-simplefoam ...
- elasticsearch bootstrap.memory_lock
检查bootstrap.memory_lock设置是否生效 get http://10.127.0.1:9200/_nodes?filter_path=**.mlockall 响应: { " ...