Qt简单编程--给裸体的MPlayer披件衣服变成自己的播放器

很很佩服那些开发免费自由软件的工程师,他们发布自由软件,我毫无贡献地很不好意思地把它拿来用,给个界面就是自己的软件,如果脸皮再厚点就可以自己的名义发布出去,就象给裸体的自由软件披件外衣,这就是MPlayer。
想一边看视频一边打字记录,要求播放器很方便暂停重复等,当然结果是找不到这样的播放器,当然最后就想到自己做一个。
用Qt自带功能是很难很复杂实现,这不符合我的“简单”要求。竟然发现有一简单的途径能实现我的要求,它就是MPlayer,简单地说就是以Slave的方式运行MPlayer,通过QProcess来控制它。
这里写图片描述
使用MPlayer来播放,在Qt中很简单。

  1. 定义一个QWidget作为播放窗口。
  2. 定义一个QProcess来控制MPlyaer。
  3. 使用MPlayer的Slave命令来控制播放。

在头文件中定义。

QWidget *qw_mplay;
QProcess *qp_mplay;

初始化上面的东东。

    qw_mplay = new QWidget(this);
    qp_mplay = new QProcess(this);
    qw_mplay->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred));
    qw_mplay->setAttribute(Qt::WA_OpaquePaintEvent );
    qw_mplay->setMinimumSize(640, 400);
    qw_mplay->move(10,80+10);

定义Mplayer的路径与要播放的视频文件。

const QString mplayerPath("MPlayer-corei7/mplayer.exe");
const QString movieFile("02.rmvb");

播放视频文件。

    QStringList args; //运行mplayer需要的参数
    args << "-slave";
    args << "-quiet";
    args << "-wid" << QString::number(qw_mplay->winId());
    args << "-vo" << "directx:noaccel";
    args << movieFile;
    qp_mplay->setProcessChannelMode(QProcess::MergedChannels);
    qp_mplay->start(mplayerPath, args); //开始运行这个进程

由于简单,它没有暂停,快进,快退,停止等功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值