关闭

资讯:主流开源视频编解码

302人阅读 评论(0) 收藏 举报
分类:
1.概述

vlc/mplayer/mpc

gstreamer/directshow/openmax

ffmpeg/ffshow

2.1 播放器(直接可用软件)

1)vlc,插件机制的播放器,非常灵活,但是总觉得这货速度太慢,不过可移植平台比较多,ios/android/win8。。。。等等都有他的身影。

官网:http://www.videolan.org/

维基:http://zh.wikipedia.org/wiki/Vlc

2)mplayer,单线程,状态机机制的播放器,比较古老,代码有些凌乱。

官网:http://www.mplayerhq.hu/design7/news.html

维基: https://zh.wikipedia.org/wiki/MPlayer

3)mpc,是windows平台上的开源播放器,基于filter机制,像qq影音/射手播放器/百度影音/.......,只能在windows上运行,不能移植到其他平台,原因是他的使用了windows的directshow框架。

官网:http://mpc-hc.org/

维基:http://zh.wikipedia.org/wiki/Media_Player_Classic

2.2 框架层次

1)gstreamer,基于gnome的基础类库gobject所写的一套,开源多媒体框架。主要针对于linux,当然windows上也可以使用。

基本设计思路类似于directshow,区别只是gstreamer基本部件是component(组件,demux/codec/access/等,都可以当成一个组件),对directshow来说,对应的概念是filter。

gstreamer各个组件的链接是pipe(管道,组件间传递数据,通信的机制),对directshow来说,对应的概念是pin。

对于这个框架一些比较典型应用就是meego/tizen手机平台上的媒体框架。

2)directshow,微软的推出的windows平台上的媒体框架

详细请戳:http://zh.wikipedia.org/wiki/DirectShow

应用比较广泛,像视频监控上位机,也就是pc端,基本上都得用这个了。另外windows平台的播放器,也基本遵行这个框架的一些概念空间。

xvid/x264两个组织,都把自己的算法库给封装了一套filter,方便兼容到这个平台上。

3)openmax

层次比较gstreamer与directshow低一些,主要用来封装解码库,基本的概念空间也是组件。

2.3 库

1)ffmpeg:软件/框架都依赖这个库来实做的,ffmpeg提供了万能解复用,他们只是调用这个库,进行自己需要的封装。

2)ffshow:ffmpeg + directshow

------------------------------------------------------------------------

参考:

http://blog.csdn.net/cmengwei/article/details/45062297

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:44944次
    • 积分:988
    • 等级:
    • 排名:千里之外
    • 原创:55篇
    • 转载:13篇
    • 译文:0篇
    • 评论:4条
    最新评论