查看完整版本: [-- 音频播放,用FMOD库实现了 --]

QTCN开发网 -> Qt 作品展 -> 音频播放,用FMOD库实现了 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

shixingya 2017-12-19 11:10

音频播放,用FMOD库实现了




[attachment=18333]

[attachment=18366]


[attachment=18332]


[attachment=18334] src

注意  我qmake用的是MinGW_32bit, 如果编译不通过,可以帮忙远程,望大家共同进步。



优化建议 暂停续播

void SoundGradeWgt::on_pushButton_clicked()
{
    if(isPlaying)
    {
        pausePlay();
        ui->pushButton->setToolTip(tr("Play"));
        ui->pushButton->setIcon(style()->standardIcon(QStyle::SP_MediaPlay));
    }
    else
    {
        if(channel)
        {
            FMOD_BOOL pause;
            FMOD_Channel_GetPaused(channel, &pause);
            FMOD_Channel_SetPaused(channel, !pause);
            (!pause) ? timer.stop() : timer.start(300);
        }
        else
            Play();
        ui->pushButton->setToolTip(tr("Pause"));
        ui->pushButton->setIcon(style()->standardIcon(QStyle::SP_MediaPause));
    }
    isPlaying =!isPlaying;

}


snolkmg 2017-12-19 13:56

msccreater 2017-12-19 17:14
论坛需要你这样的人,我支持你

神经023 2017-12-19 19:52

yangyu52009 2017-12-19 21:54
楼主使用的是什么版本的FMOD哭, 新的没有 FMOD_System_GetWaveData 函数,编译通不过

shixingya 2017-12-19 23:47
yangyu52009:楼主使用的是什么版本的FMOD哭, 新的没有 FMOD_System_GetWaveData 函数,编译通不过 (2017-12-19 21:54) 

FMOD4.44.39

liuchangyin 2017-12-20 10:28

yangyu52009 2017-12-20 23:01
shixingya:FMOD4.44.39 (2017-12-19 23:47) 

FMOD4.44.39 已经找不到了,可以发给我一下吗,谢谢 yangyu52009@163.com

shixingya 2017-12-21 09:22
yangyu52009:FMOD4.44.39 已经找不到了,可以发给我一下吗,谢谢 yangyu52009@163.com (2017-12-20 23:01) 

压缩包里面有

yangyu52009 2017-12-21 18:15
shixingya:压缩包里面有 (2017-12-21 09:22) 

谢谢,没看到,这是mingw版的,难怪链接不上

lsyzsl 2017-12-22 08:13
楼主你好,压缩包里没有fmod源码,fmod源码能发一份么?1024847801@qq.com谢谢。

huige3528 2017-12-23 13:28
大神,这玩意儿在windows环境下怎么跑啊,库怎么搞都不对啊

hc976865965 2017-12-23 15:56
完美编译通过,哦哟哟哟

robinsonsir 2017-12-23 16:09
    

weinkym 2018-01-05 09:10
  

shixingya 2018-01-22 13:37
#include "./fmod.h"
#include "./fmod_errors.h"
    FMOD_SYSTEM *system=0;    for(int i=0; i<2000; i++)  
{        
     FMOD_RESULT result = FMOD_System_Create(&system);  
     if(result!=FMOD_OK)    
    {          
        QMessageBox::warning(nullptr,QString::number(i),"FMOD_System_Create失败");    
   }
}

FMOD_System_Create 第16次的时候 返回错误了, 大师们知道怎么修改吗

shixingya 2018-01-23 09:55
shixingya:#include "./fmod.h"
#include "./fmod_errors.h"
    FMOD_SYSTEM *system=0;    for(int i=0; i<2000; i++)  
{        
     FMOD .. (2018-01-22 13:37) 

已经解决 还不清楚原理  希望大神们继续研究  

我是这么处理的 把fmod system作为单例,全局只用一份

zwl02003 2018-02-11 11:21
,支持大侠

liuyuanan 2018-03-03 13:31
楼主,请问这个方案支持跨平台吗

王员外 2018-03-09 14:47
支持MP3格式吗。还是只支持wav

arm2410 2019-07-14 19:34
多谢分享

weinkym 2022-09-01 22:31
    


查看完整版本: [-- 音频播放,用FMOD库实现了 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled