仿迅雷播放器教程 -- 封装VLC (5)
来源:互联网 发布:淘宝直通车教程视频 编辑:程序博客网 时间:2024/05/29 03:21
虽然上个教程中10多行代码便做出了一个播放器,但如果加上快进快退等功能的话,代码都会挤在一团,阅读性很差,所以这个版本将对VLC进行封装,由于第一个教程已经进行了ffmpeg的封装,所以这里将利用它的框架CAVPlayer,由于这些封装代码都很简洁明了,所以将不再对细节一一介绍,直接给出封装好的代码。
(由于界面等工作还没开始,所以下一个教程可能会隔得久一点,Alberl会尽快直播~)
#include <string>#include "AVPlayer.h" int main(int argc, char* argv[]){ std::string strCMD; CAVPlayer cAVPlayer; cAVPlayer.Play("G:\\media test\\music\\amani.wma"); while(true) { std::cin >> strCMD; if (! strCMD.compare("Quit")) { break; } } return 0;}
运行之后,输入Quit即可退出。这里有效代码仅仅一行,是不是比上一个教程又简洁很多呢~O(∩_∩)O~
其中CAVPlayer的部分封装如下:
class CAVPlayer{public: CAVPlayer(void); ~CAVPlayer(void); void Init(); // 初始化 void Close(); // 关闭文件及清理 bool Play(const std::string &strPath); // 播放路径为strPath的文件 void PlayNext(); // 播放下一个文件 void PlayPre(); // 播放上一个文件 void Stop (); // 停止 void Pause(); // 暂停 void Volume(int nVol); // 音量设置为nVol void VolumeIncrease(); // 音量增大 void VolumeReduce(); // 音量减小 void SeekTo(int nPos); // 跳到指定位置nPos void SeekForward(); // 快进 void SeekBackward(); // 快退......}
CAVPlayer目前只实现了Play函数,其他函数将会在后面的教程一次性实现,届时不再一一列出,这里给出一个框架,加快大家对VLC的认识。
代码下载:http://download.csdn.net/detail/qq316293804/6398995
(代码在win7系统的VC6、VS2008、VS2010、VS2012下均编译通过;在XP系统的VS2008、VS2010下均编译通过;在gcc下应该也能编译通过,不过没有用gcc测试。
由于第一个教程给出的是VS2010的代码,有些小伙伴没安装这个编译器,导致很多问题,所以这个教程给出的代码是VC6的,可以升级到任何编译器)
(由于界面等工作还没开始,所以下一个教程可能会隔得久一点,Alberl会尽快直播~)
0 0
- 仿迅雷播放器教程 -- 封装VLC (5)
- 仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)
- 仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)
- 仿迅雷播放器教程
- 仿迅雷播放器教程<转>
- 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- [置顶] 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- [置顶] 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- 【【【超高仿】】】迅雷播放器教程 -- 总结(14)
- 仿迅雷播放器教程 -- duilib界面(13)
- 仿迅雷播放器教程 -- 提取exe资源(12)
- 仿迅雷播放器教程 -- 权威界面库对比 (8)
- 仿迅雷播放器教程 -- 媒体播放器对比 (2)
- 仿迅雷播放器教程 -- 提取exe资源
- 仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)
- 仿迅雷播放器教程 -- 媒体播放三大底层架构简析 (3)
- 仿迅雷播放器教程 -- 十年经验大牛对MFC的认识 (7)
- 输了去接水怎么玩,新手必看教程
- 仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)
- Arduino 数码管LED屏驱动
- 构建OpenStack的高可用性(HA,High Availability)
- 仿迅雷播放器教程 -- 封装VLC (5)
- C/C++的存储区
- Struts2.2+Spring3.0+Hibernate3.6整合
- 仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)
- OpenStack安装部署管理中常见问题解决方法
- javaEE servlet获取jsp内置对象
- 5.2poj2712细菌繁殖
- 每日总结-05-17
- 这周的一道程序设计题兼sicily1443 Printer Queue题解