主题 : mplayer在QT4上的简单调用 复制链接 | 浏览器收藏 | 打印
大笑笑大
级别: 骑士
UID: 25314
精华: 8
发帖: 184
金钱: 1320 两
威望: 264 点
综合积分: 528 分
注册时间: 2010-07-22
最后登录: 2014-10-11
楼主  发表于: 2010-09-21 10:36

 mplayer在QT4上的简单调用

前提:
Fedora9下编译好linux版的mplayer
Xp下直接到http://www.mplayer.org.cn/download.html下载一个mplayer,安装后到目录下面可以得到一个MPlayer_core.exe,我们只要知道她得路径即可。

使用QT4.7.0编译下载的qt_mplayer.zip
1.    放在xp下编译失败
2.    放在fedora9上,将mplayer放在bin目录下,更改程序mplayer的路径和播放的音乐放在它的qt_mplayer-build-desktop目录下,编译运行成功,可以播放!
3.    在xp下,同样更改mplayer的路径,和播放文件的路径,播放文件直接放在qt_mplayer-build-desktop目录下也可以!同样可以播放!如图



4.    代码#include "main.moc"必须要有
一般情况下,你的类会单独写,一个 ***.h, 一个 ***.cpp 。 类的定义在 头文件中,qmake可以调用moc自动处理(生成moc_***.h)并自动包含。
但你要是偷懒,比如把main函数和类的定义及实现都放到一个文件内,比如取名 main.cpp ,这时就不那么走运了,moc处理后生成同名的.moc 文件,但这时你就必须自己包含它了,写在cpp的最后一行#include "main.moc",qt会自动提示找不到该文件,不必理会。否则会编译失败:
debug/main.o: In function `PlayerWidget':
J:\qt_code\qt_mplayer-build-desktop/../qt_mplayer/main.cpp:31: undefined reference to `vtable for PlayerWidget'
J:\qt_code\qt_mplayer-build-desktop/../qt_mplayer/main.cpp:31: undefined reference to `vtable for PlayerWidget'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\qt_mplayer.exe] Error 1
mingw32-make: *** [debug] Error 2
其实在程序里这样写是不准确的。
2.    转移到mini2440上
通过arm编译器编译,放到qt4目录下替换wiggly运行,可以播放,但播放不是加载在指定控件上!

附件里面为qt_mplayer.zip
希望大家踊跃上传自己的程序代码~~
才能一起学习一起进步!!
[ 此帖被xphyym在2010-09-21 10:42重新编辑 ]
附件: qt_mplayer.zip (142 K) 下载次数:187
级别: 骑士
UID: 9169
精华: 0
发帖: 249
金钱: 1330 两
威望: 299 点
综合积分: 498 分
注册时间: 2009-09-19
最后登录: 2017-08-14
1楼  发表于: 2010-11-24 09:43
学习一下,过段时间买个6410玩玩。
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8838
金钱: 46490 两
威望: 9298 点
综合积分: 18216 分
注册时间: 2010-01-09
最后登录: 2019-07-16
2楼  发表于: 2010-11-24 20:24
各位都很牛。
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.