1 / 7
文档名称:

MPlayer源码分析.doc

格式:doc   大小:49KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

MPlayer源码分析.doc

上传人:1136365664 2017/11/30 文件大小:49 KB

下载得到文件列表

MPlayer源码分析.doc

相关文档

文档介绍

文档介绍:MPlayer源码分析
这几天在学****mplayer以下是在网上搜集到的关于mplayer的文章,主要是源码分析这块。首先感谢这些文章的作者,有些没有标明原文出处,实在表示抱歉。
 
 
//处理参数 
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 = &mpctx_s; 
// Not all functions in take the context as an argument yet 
static MPContext mpctx_s = { 
.osd_function = OSD_PLAY, 
.begin_skip = MP_NOPTS_VALUE, 
.play_tree_step = 1, 
.global_sub_pos = -1, 
.set_of_sub_pos = -1, 
.file_format = DEMUXER_TYPE_UNKNOWN, 
.loop_times = -1, 
#ifdef HAS_DVBIN_SUPPORT 
.last_dvb_step = 1, 
#endif 
}; 
一些GUI相关的操作 
打开字幕流 
打开音视频流 
mpctx->stream=open_stream(filename,0,&mpctx->file_format); 
//fileformat文件还是TV流DEMUXER_TYPE_PLAYLIST或DEMUXER_TYPE_UNKNOWN DEMUXER_TYPE_TV 
//current_module记录状态vobsub   open_stream handle_playlist dumpstream 
stream_reset(mpctx->stream); 
stream_seek(mpctx->stream,mpctx->stream->start_pos); 
f=fopen(stream_dump_name,”wb”); dump文件流 
stream->type==STREAMTYPE_DVD 
//============ Open DEMUXERS — DETECT file type ====================== 
//Demux:分离视频流和音频流 
mpctx->demuxer=demux_open(mpctx->stream,mpctx->file_format,audio_id,video_id,dvdsub_id,filename); 
mpctx->d_audio=mpctx->d