当前位置: 代码迷 >> QT开发 >> QT调用MPLAYER,怎么实现嵌入窗口播放。用-wid参数么
  详细解决方案

QT调用MPLAYER,怎么实现嵌入窗口播放。用-wid参数么

热度:28   发布时间:2016-04-25 03:23:30.0
QT调用MPLAYER,如何实现嵌入窗口播放。用-wid参数么
Widget::Widget(QWidget *parent)
    : QWidget(parent), ui(new Ui::Widget)
{
    ui->setupUi(this);

mplayerProcess = new QProcess(this);
renderTarget = new QWidget(this);
renderTarget->setAttribute(Qt::WA_OpaquePaintEvent);
renderTarget->resize(480,272);
QStringList args;
args << "-slave";
        args << "-quiet";
        args << "-zoom ";
       args << "-wid" << QString::number(renderTarget->winId());
        args << " ti.mp4";
mplayerProcess->start(tr("./x86mplayer"), args);
}

我这样写的,mplayer还是会单独一个窗口播放。
------解决方案--------------------
引用:
界面时固定的,视频窗口也是固定的。
找到了,QStringList args;
   
    args << "-slave"<< "-quiet";
    args << m_movieFile;

    args<<"-wid";
    args<<QString::number(m_videoWindow->winId());//指定你要在哪个窗口播放的id

    m_mplayerProcess->setProcessChannelMode(QProcess::MergedChannels);
    m_mplayerProcess->start(MPLAYER_PATH, args);