文章分类 - Mplayer
摘要:媒 体内容在播放时,最令人头痛的就是音视频不同步。从技术上来说,解决音视频同步问题的最佳方案就是时间戳:首先选择一个参考时钟(要求参考时钟上的时间是 线性递增的);生成数据流时依据参考时钟上的时间给每个数据块都打上时间戳(一般包括开始时间和结束时间);在播放时,读取数据块上的时间戳,同时参考当 前参...
阅读全文
摘要:mplayer的执行过程分析(本地、网络)main函数流程分析,分本地和网络两种情况 1. 本地文件的播放,以mp3文件的播放为例,命令行输入:mplayer test.mp3 只给出关键步骤 2. open_stream, 打开文件流 open_stream_full 找到合适的打开文件的方式,对于本地文件选择 open_stream_plugin stream_info_file,使用它的open_f函数读取文件 open_f 成功,返回文件句柄,文件访问函数 对于流媒体文件,第8行改成如下的第10行,表明流媒体文件选择stream_info_rtsp_sip open_liv...
阅读全文
posted @ 2011-12-26 21:44
general001
摘要:尽管自己看mplayer源码时日已久,也有些心得,但从未在网页上做过归纳和总结。倒是常常用笔在记事本上画画,只因为那样来的简单。下面分别抄自不同的地方,而之所以要贴在这里,因为和他们一样,都是在认识mplayer源码过程中的同路人,也是对他们所取得认识的肯定和赞赏。没有保持原文的完整性,望作者不要生气。我会把链接附上,如果有朋友要追本溯源,直接顺着去了就可以 :)----------------------------------------------------- Mplayer中关于Framebuffer设备相关的流程 原文地址: http://browser.bokee.com/217
阅读全文
posted @ 2011-12-26 21:41
general001
摘要:int av_find_stream_info(AVFormatContext *ic){for(i=0;inb_streams;i++){分析AVCodecContext的每个AVStreamst=ic->streams[i];if(st->codec->codec_type==CODEC_TYPE_VIDEO){/*if(!st->time_base.num)st->time_base=*/if(!st->codec->time_base.num)st->codec->time_base=st->time_base;}//only
阅读全文
posted @ 2011-12-16 14:49
general001
摘要:从Mplayer.c的main开始 处理参数 mconfig = m_config_new(); m_config_register_options(mconfig,mplayer_opts); // TODO : add something to let modules register their options mp_input_register_options(mconfig); parse_cfgfiles(mconfig); 初始化mpctx结构体,mpctx应该是mplayer context的意思,顾名思义是一个统筹全局的变量。 static MPContext *mpctx
阅读全文
摘要:关于mplayer移植网上资料很多,但都很混乱。在此,我做了一个关于mplayer 的详细总结。在做之前最好在解压源码包后,先通过./configure --help看一下相关配置。X86的LINUX上已经自带了解码库,不需要另外安装解码库,而arm平台自己做的文件系统没有解码库,需要另外安装解码库。下载MPlayer:MPlayer-1.0rc2.tar.bz2解码库:libmad-0.15.0b.tar.gz一、在x86的LINUX上安装mplayer1 #./configure (./configure--enable-gui–-enable-live–-language=zh )2 #
阅读全文
posted @ 2011-10-08 18:57
general001

浙公网安备 33010602011771号