mplayer 源码分析打印版.pdfVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学 海 无 涯 一.Mplayer 支持的格式 MPlayer 是一个LINUX 下的视频播放器,它支持相当多的媒体格式,无论在音频播放还是 在视频播放方面,可以说它支持的格式是相当全面的。 视频格式支持:MPEG、AVI 、ASF 与WMV、QuickTime 与 OGG/OGM、SDP、PVA、 GIF。 音频格式支持:MP3、WAV、OGG/OGM 文件(Vorbis)、WMA 与 ASF 、MP4、CD 音 频、XMMS 。 二. Mplayer 中头文件的功能分析 1. config.h // 各种本地配置宏定义头 2. version.h // 版本定义头 #define VERSION "1.0pre7try2-3.4.2" 3. mp_msg.h // 消息处理头 4. help_mp.h // 根据配置自动生成的帮助头 #include "help/help_mpen.h" 5. cfg-mplayer-def.h // Mplayer 运行时的选项缺省值头文件 char* 6. default_config = 7. sub_reader.h // 拥有格式自动发现功能的字幕(subtitle)阅读器 8. libvo/video_out.h // 该文件包含 libvo 视频输出的公共函数、变量 9. libvo/font_load.h // 有关字体装载的例程 10. libao2/audio_out.h // 音频输出驱动程序相关结构定义和全局数据 11. libmpcodecs/dec_audio.h // 音频解码 12. libmpcodecs/dec_video.h // 视频解码 13. libmpdemux/matroska.h // 多路解复用,媒体容器格式 matroska 处理头 14. libmpdemux/stream.h // 流处理 15. libmpdemux/demuxer.h // 多路解复用头文件 16. libmpdemux/stheader.h // 媒体流头处理 17. get_path.c // 路径获取头文件 18. spudec.h // SPU 子画面单元头,DVD 字幕流 19. edl.h // 剪辑控制清单 20. m_option.h // 选项类型处理头 21. m_config.h // 配置处理头文件 三. MPlayer.main 主流程简要说明 1. int main() { 2. 1) 变量声明,电影信息 movie info: 3. 2) 初始化,消息系统…… 4. play_next_file: 5. 3)播放文件 filename 的循环 goto play_next_file 开始 1 学 海 无 涯 6. main: 7. 4) 主处理 main 8. 5) 播放真正主循环 2010 ~3541 while (!eof) 9. while (!eof) { 10. 5.1) 播放音频 PLAY AUDIO 2017 ~ 2064 decode_audio(sh_audio, ...); 11. 5.2) 播放视频 PLAY VIDEO, 2068 ~ 2300 decode_video(sh_video, ...); 12. 5.3) 处理暂停 PAUSE 13. 5.4) 处理 EDL 14. 5.5) 键盘事件处理, 搜索2400~3216 while (!brk_cmd && 15. (cmd=mp_input_get_cmd(0,0,0))!=NULL) 16. 5.6) 时间寻道(秒) if (seek_to_sec) 17. 5.7) 寻道 3243 ~ 3306, if (rel_seek_secs || abs_seek_pos) 18. 5.8) 处理 GUI 19. 5.9) 变更 Upda

您可能关注的文档

文档评论(0)

万寿无疆 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档