cocos2d-x 同时播放多个音效的时候,会发现有的音效放不出,有的循环音效放着放着就没了

后来发现猫腻在Cocos2dxSound.java里:

privatestaticfinalintMAX_SIMULTANEOUS_STREAMS_DEFAULT=5;

SoundPool构造的时候要指定并发音频流的数量


publicSoundPool(int maxStreams, int streamType, int srcQuality)

Added inAPI level 1


This constructor was deprecated in API level 21.
useSoundPool.Builderinstead to create and configure a SoundPool instance

Constructor. Constructs a SoundPool object with the following characteristics:

ParametersmaxStreamsthe maximum number of simultaneous streams for this SoundPool objectstreamTypethe audio stream type as described in AudioManager For example, game applications will normally useSTREAM_MUSIC.srcQualitythe sample-rate converter quality. Currently has no effect. Use 0 for the default.Returns

a SoundPool object, or null if creation failed


这里cocos2d-x设置成5了(I9100设成3),可以手动改大一点,来解决问题



版本:cocos2d-x 3.0