FMOD在Android玩音响系统的抖动问题

1. 基本介绍

    在Android升级系统Android4.4之后,发现FMOD在Android音会出现抖动。导致声音不正常。边赫赫有名的"极品飞车"都有问题。

    经查验,是FMOD的DSP Buffer Size与Android中的Audio HAL的period size不匹配造成的。

    fmodex.so中默认的DSP Buffer Size是512,据悉如今Audio HAL的period size都扩大至1024、或2048、或4096。

2. 解决方式

    为了使自己的游戏具有更好的兼容性。须要设置fmod DSP Buffer Size,如在我的盒子上的解决方式例如以下:

FMOD_RESULT result = FMOD_OK;

unsigned int bufferlength;
int numbuffers;  

result = FMOD_System_Create(&gSystem);
CHECK_RESULT(result);


result = FMOD_System_GetDSPBufferSize(gSystem,&bufferlength,&numbuffers);
CHECK_RESULT(result);
LOGD("IDONG:bufferlength=%d,numbuffers=%d",bufferlength,numbuffers);

result = FMOD_System_SetDSPBufferSize(gSystem,4096,4); // must be before FMOD_System_Init
CHECK_RESULT(result);


result = FMOD_System_Init(gSystem, 32, FMOD_INIT_NORMAL, 0);
CHECK_RESULT(result);










版权声明:本文博客原创文章,博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/lcchuguo/p/4639345.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值