• 7995阅读
  • 12回复

请教:QT自带的example中phonon编译出错 [复制链接]

上一主题 下一主题
离线磐石
 
只看楼主 倒序阅读 楼主  发表于: 2010-01-18
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
我编译了F:\Qt\4.5.2\examples\phonon\musicplayer目录下的musicplayer程序,但编译出错,请高手帮忙一下,错误信息:C:\MinGW\bin..\lib\gcc\mingw32\..\..\..\..\mingw32\bin\ld.exe:cannot find -lphonod
谢谢!
不怕做不到,只怕想不到
离线benbenmajia

只看该作者 1楼 发表于: 2010-01-18
你phonon库装了吗?
安然.....
离线磐石
只看该作者 2楼 发表于: 2010-01-18
引用第1楼benbenmajia于2010-01-18 15:10发表的  :
你phonon库装了吗?
我是在PC机WINDOWS下装的,采用的是qt-win-opensource-4.5.2-mingw.exe加
MinGW-3.4.2.exe
不怕做不到,只怕想不到
离线nmiirq

只看该作者 3楼 发表于: 2010-01-18
明显是没编phonon库么。
离线午小夜

只看该作者 4楼 发表于: 2010-01-18
configure -phonon
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线磐石
只看该作者 5楼 发表于: 2010-01-19
谢谢楼上两位提示,但有了新问题
编译出来后,怎么打不开音乐, 这段代码有问题吗,还是少了什么?
  Phonon::AudioOutput * audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory, this);
  Phonon::MediaObject *  mediaObject = new Phonon::MediaObject(this);
    Phonon::MediaSource media("barbie.wav");
    mediaObject->setCurrentSource(media);
    Phonon::createPath(mediaObject, audioOutput);
   mediaObject->play();
  
不怕做不到,只怕想不到
离线benbenmajia

只看该作者 6楼 发表于: 2010-01-19
播放视频:
#include <QApplication>
#include <QWidget>
#include <phonon>
#include <QUrl>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);

    QWidget *widget = new QWidget;
    widget->setWindowTitle("Video Player");
    widget->resize(400,400);

    Phonon::VideoPlayer *player = new Phonon::VideoPlayer(Phonon::VideoCategory, widget);
    player->load(Phonon::MediaSource("../Puppet.mpg"));

    player->play();

    widget->show();

    return app.exec();
}
安然.....
离线benbenmajia

只看该作者 7楼 发表于: 2010-01-19
安然.....
离线午小夜

只看该作者 8楼 发表于: 2010-01-19
確定source路徑是正確的麽?  ./barbie.wav
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线benbenmajia

只看该作者 9楼 发表于: 2010-01-19
哈,小夜有个性
安然.....
离线磐石
只看该作者 10楼 发表于: 2010-01-19
引用第8楼午小夜于2010-01-19 17:12发表的  :
確定source路徑是正確的麽?  ./barbie.wav

我原来是在F:\barbie.wav的
source路径就这样写的
Phonon::MediaSource media("F:/barbie.wav");
没播放出来,
后来把音频文件考到与可执行文件同一个文件来中即Debug文件夹中
source路径就写成上面那样了Phonon::MediaSource media("barbie.wav");
参考Phonon的Manual,感觉是写的没错的,但就出不来
不怕做不到,只怕想不到
离线午小夜

只看该作者 11楼 发表于: 2010-01-19
構造函數裏:
   m_mediaObject = new Phonon::MediaObject;
    m_aOutput = new Phonon::AudioOutput(Phonon::VideoCategory);
    Phonon::createPath(m_mediaObject, m_aOutput);
播放函數裏:
        m_mediaObject->clear();
        m_mediaObject->clearQueue();
        m_mediaObject->setCurrentSource(Phonon::MediaSource("./sound/pop.wav"));
        m_mediaObject->play();
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线磐石
只看该作者 12楼 发表于: 2010-01-20
引用第11楼午小夜于2010-01-19 17:34发表的  :
構造函數裏:
   m_mediaObject = new Phonon::MediaObject;
    m_aOutput = new Phonon::AudioOutput(Phonon::VideoCategory);
    Phonon::createPath(m_mediaObject, m_aOutput);
播放函數裏:
.......

用这段代码加进去还是不行的,我也试了一下6楼的简单播放视频的代码也不行,是不是我phonon装的有问题,代码编译是没问题的,也能出窗口,就是播放不出,QT自带的example中phonon下的musicplayer编译出来运行后,点击加文件也加不进去,把里面代码改了一下,构造函数里加
Phonon::AudioOutput * audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory, this);
  Phonon::MediaObject *  mediaObject = new Phonon::MediaObject(this);
    Phonon::MediaSource media("barbie.wav");
    mediaObject->setCurrentSource(media);
    Phonon::createPath(mediaObject, audioOutput);
   mediaObject->play();
不行,
按你所说的在构造函数加
m_mediaObject = new Phonon::MediaObject;
    m_aOutput = new Phonon::AudioOutput(Phonon::VideoCategory);
    Phonon::createPath(m_mediaObject, m_aOutput);
播放函数加
m_mediaObject->clear();
        m_mediaObject->clearQueue();
        m_mediaObject->setCurrentSource(Phonon::MediaSource("./sound/pop.wav"));
        m_mediaObject->play();
也不行,
不怕做不到,只怕想不到
快速回复
限100 字节
 
上一个 下一个