仿迅雷播放器教程 -- 封装VLC (5)
#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 ;
}
运行之后,输入Quit即可退出。这里有效代码仅仅一行,是不是比上一个教程又简洁很多呢~O(∩_∩)O~
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的认识。
(由于界面等工作还没开始,所以下一个教程可能会隔得久一点,Alberl会尽快直播~)
仿迅雷播放器教程 -- 封装VLC (5)的更多相关文章
- 仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)
代码下载:http://download.csdn.net/detail/qq316293804/6409417 昨天的教程里写着预计MFC播放器会隔得久一点,但是今晚仔细看了下VLC的常 ...
- 仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)
经过前面的介绍,想必大家对VLC和ffmpeg都有一定印象了,还记得学习ffmpeg多么蛋疼吗?那么VLC会不会也这么蛋疼呢? 那么我们来看一段官方的Demo,Alberl精简了Demo,只留 ...
- 仿迅雷播放器教程 -- 提取exe资源(12)
既然选择了一个界面库,那么咱们就开始吧! 既然是仿迅雷播放器,那当然要把迅雷播放器的资源提取出来啦,但是很多小伙伴可能不知道怎么提取,所以这里就教大家一些方法: 一.传统的资源提取器 ...
- 仿迅雷播放器教程 -- duilib界面(13)
经过了这么多篇文章的讲解,相信大家也对界面库有一定了解了,用一个新的界面库,肯定要对它进行全方位考察.鉴于公司目前所有的产品都是MFC做的,全部转换成duilib肯定不现实,并且公司的很多项目逻辑和界 ...
- 仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)
2011年12月份的时候发了这篇博客 http://blog.csdn.net/qq316293804/article/details/7107049 ,博文最后说会开源一个播放器,没想到快两年了,才 ...
- 仿迅雷播放器教程 -- C++ 100款开源界面库 (10)
(声明:Alberl以后说到开源库,一般都是指著名的.或者不著名但维护至少3年以上的.那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码.这里并不是贬低,像Alberl前面那个系 ...
- 仿迅雷播放器教程 -- C++ windows界面库对比(11)
从上一篇文章中可以看出,C++的界面方向还很弱,没有任何一个界面库可以一统天下,所以才造成了界面库百家争鸣的情况. 从时间上看: 1.出来最早的是QT,1991年就有了. 2.VC++ 虽然1992年 ...
- 仿迅雷播放器教程 -- 十年经验大牛对MFC的认识 (7)
由于上一个教程做界面用的是MFC,所以这里不得不说一下MFC的历史,请看正文: 原文链接:http://blog.csdn.net/sunhui/article/details/319551 作者 ...
- 仿迅雷播放器教程 -- C++界面制作方法的对比 (9)
上一个教程对比的5个方向共7个界面框架,都是非常权威,应用很广泛的库,绝对是非常稳定,并且能够做出常见的界面出来,可以放心大胆的用在项目里. 但那7个界面框架再好,也总是没有绝对的优势 ...
随机推荐
- 深入一下Django的用户认证和cache
深入一下Django的用户认证和cache 用户认证 首先明白一个概念,http协议是无状态的,也就是每一次交互都是独立的,那如何让服务器和客户端进行有状态的交互呢,现在较为常见的方法就是让客户端在发 ...
- PHP类的继承
每个子类(也叫派生类)都会在设置自己的属性前调用父类的构造方法.父类(也叫基类或超类)现在仅知道自己的数据,子类一般是父类的特例,要避免告诉父类任何关于子类的信息 以下为一个使用继承的实例: < ...
- CocosCreator项目结构
1,通过 Dashboard,我们可以创建一个 Hello World 项目作为开始,创建之后的项目有特定的文件夹结构.[参考来源:官方文档] 2,初次创建并打开一个 Cocos Creator 项目 ...
- iOS埋点统计
链接: iOS无埋点数据SDK实践之路 iOS:无埋点数据SDK实践之路,看完能懂就厉害了 iOS埋点业务方案 ios 无码统计埋点 使用AOP实现iOS应用内的埋点计数 Aspects(AOP) A ...
- JDBC(1)—Connection
一.简介: 1.JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统.通用的SQL数据库存取和操作的 *公共接口(一组API) *定义了用来访问数据库的标准j ...
- Jenkins配置基于角色的项目权限管理
转自: http://www.cnblogs.com/gao241/archive/2013/03/20/2971416.html, 版权归原作者. 本文将介绍如何配置jenkins,使其可以支持基于 ...
- 什么是物理像素、虚拟像素、逻辑像素、设备像素,什么又是 PPI, DPI, DPR 和 DIP
什么是物理像素.虚拟像素.逻辑像素.设备像素,什么又是 PPI, DPI, DPR 和 DIP?有关 viewport 以及苹果安卓设备上的页面呈现为什么效果不一样,又有哪些方法去改变和统一呢?网络上 ...
- hdu 1828 Picture(线段树扫描线矩形周长并)
线段树扫描线矩形周长并 #include <iostream> #include <cstdio> #include <algorithm> #include &l ...
- Linux及Arm-Linux程序开发笔记(零基础入门篇)
Linux及Arm-Linux程序开发笔记(零基础入门篇) 作者:一点一滴的Beer http://beer.cnblogs.com/ 本文地址:http://www.cnblogs.com/bee ...
- 【T05】套接字接口比XTI_TLI更好用
1.用于网络编程的API接口有两种: Berkeley套接字 XTL 2.套接字是加州大学伯克利分校为其Unix操作系统版本开发的,TLI是AT&T(贝尔实验室)为Unix系统V3.0开发的 ...