• 5543阅读
  • 4回复

调用mplayer写播放器,不知到为什么不能播放,只有一个窗口 [复制链接]

上一主题 下一主题
离线ljxsheep
 
只看楼主 倒序阅读 楼主  发表于: 2012-06-27

/*player.h*/
  1. #ifndef PLAYER_H
  2. #define PALYER_H
  3. #include <QWidget>
  4. #include <QString>
  5. #include <QObject>
  6. #include <QPushButton>
  7. #include <QProcess>
  8. class player:public QWidget
  9. {
  10.     Q_OBJECT
  11. public:
  12.     player(QWidget* parent=0);
  13.     ~player();
  14. protected:
  15. protected slots:
  16.     //void play();
  17. private:
  18.     //QPushButton *playButton;
  19.     QWidget *renderTarget;
  20.     QProcess *mplayerProcess;
  21. };
  22. #endif
/*main.cpp*/
  1. #include "player.h"
  2. #include <QtGui>
  3. #include <QApplication>
  4. int main(int argc, char **argv)
  5. {
  6.     QApplication app(argc, argv);
  7.     player *p = new player(0);
  8.     p->show();
  9.     return app.exec();
  10. }
/*widget.cpp*/
  1. #include "player.h"
  2. #include <QObject>
  3. #include <QString>
  4. #include <QStringList>
  5. const QString mplayerPath("/usr/bin/mplayer");
  6. const QString movieFile("/media/bt/视频/2012.6.5锵锵三人行.rmvb");
  7. player::player(QWidget* parent):QWidget(parent)
  8. {
  9.     this->setFixedSize(320+2,240+2);
  10.     this->setGeometry(600,600,10,10);
  11.     renderTarget=new QWidget(this);
  12.     renderTarget->move(1,1);
  13.     renderTarget->resize(320,240);
  14.     renderTarget->setAttribute(Qt::WA_PaintOnScreen);
  15.     mplayerProcess=new QProcess(this);
  16.     QStringList args;
  17.     args<<"-slave";
  18.     args<<"-quiet";
  19.     args<<"-wid"<<QString::number(renderTarget->winId());
  20.     args<<movieFile;
  21.     mplayerProcess->start(mplayerPath,args);
  22. }
  23. player::~player()
  24. {
  25. ;
  26. }





离线ljxsheep
只看该作者 1楼 发表于: 2012-06-27
这个程序是借鉴别人的 ,看是看懂了,但是不能出效果
离线foxgod

只看该作者 2楼 发表于: 2012-07-09
貌似没有调用QProcess,调用mplaer.exe。
离线valentina

只看该作者 3楼 发表于: 2012-08-24
试着添加args << "-vo" << "directx:noaccel";
要么把-wid参数去掉;
离线kai2529

只看该作者 4楼 发表于: 2015-04-17
谢谢3楼
快速回复
限100 字节
 
上一个 下一个