Ogg file is quieter and thinner using FMOD

I’ve just started with FMOD on Android, and am just loading an ogg music file as an Asset and playing it. No FMOD Studio or anything. Just loading an ogg asset directly and then Play.

However, it appears to be a lot quieter and bizarrely less rich then just playing with the standard Android MediaPlayer API, seemingly lacking some bass and mid-tones.

I am using the Xamarin library FmodForFoxes but as far as I can tell, I don’t think it’s adding any filters by default. It’s possible I’m wrong about this.

Could this be something in the ogg file? Is there some other initialisation that I’m missing in the FMOD API? Is there some default distance or EQ filtering?

Having done some more experiments, is it possible this is somehow due to the device only having one speaker?

When wearing headphones the effect disappears, and another tablet with stereo speakers doesn’t seem to be affected.

Does this make any sense? Is there someway to compensate for this?

Hi,

What version of FMOD are you using? What device are you experiencing this behavior on?

Does this happen to different .ogg files or is it just a certain one?

You could check your compression options in the FMOD Build Settings under File -> Preferences -> Build -> Andriod
image

I’m using 2.0.2 after starting with 2.0.1.

Some .ogg files do seem louder than others.

I’m not using FMOD Studio. Just the pre-existing assets I had before switching to FMOD from Android MediaPlayer.

Apologies I missed that.

Unfortunately, 2.0 is no longer supported. Try updating to 2.01.00 or later and let me know if the issue continues.

I said I’m using 2.0.2.

Am I misunderstanding something?

2.01.00 > 2.0.2 (= 2.00.02)

1 Like

I’m using 2.02.12 - build 131602, allegedly.

So, having seen the other similar thread discussing this, setting the output type to AUDIOTRACK (instead of the default AAUDIO) fixes the volume issues except all the sound effects now have a noticeable lag.

Hi,

I am still unable to reproduce the issue, however, the other forum has found that using AudioTrack does seem to solve the loudness issue.

Are you able to share some code and effects that exhibits this behavior?

I’m literally just default initialising Fmod, loading a streamed music .ogg and playing it.

It seems to be an issue on certain Samsung tablets. My Kindle Fire seems fine.

Specifically I’m using an SM-T510 on Android API 29. My even older SM-T280 (API 22) has the same issue.

Also my Samsung Galaxy A10.

I see the other thread was also using a Samsung.

Just in case this useful, here’s the logcat when the app starts:

02-22 09:08:42.857 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() called ----------------------------------------
02-22 09:08:42.857 19608 19608 I AudioStreamBuilder: rate   =      0, channels  = 0, format   = 0, sharing = SH, dir = OUTPUT
02-22 09:08:42.857 19608 19608 I AudioStreamBuilder: device =      0, sessionId = -1, perfMode = 12, callback: OFF with frames = 0
02-22 09:08:42.857 19608 19608 I AudioStreamBuilder: usage  =     14, contentType = 0, inputPreset = 0, allowedCapturePolicy = 0
02-22 09:08:42.857 19608 19608 D         : PlayerBase::PlayerBase()
02-22 09:08:42.857 19608 19608 D AudioStreamTrack: open(), request notificationFrames = 0, frameCount = 0
02-22 09:08:42.858 31100 31122 E NativeSemDvfsCpuManager: acquire:: Start
02-22 09:08:42.858 31100 31122 E NativeSemDvfsCpuManager: acquire:: timeout = -1 mIsAcquired = 0  mTagName : AudioFlinger 
02-22 09:08:42.858 19608 19608 W AudioTrack: createTrack_l(0): AUDIO_OUTPUT_FLAG_FAST denied by client, not shared buffer and transfer = TRANSFER_SYNC
02-22 09:08:42.859  3982  4581 D CustomFrequencyManagerService: acquireDVFSLockLocked : type : DVFS_MIN_LIMIT  frequency : 136500  uid : 1000  pid : 3982  pkgName : AudioFlinger
02-22 09:08:42.859 31100 31122 E NativeCustomFrequencyManager: [NativeCFMS] BpCustomFrequencyManager::acquireDVFSLock() 
02-22 09:08:42.860 31100 31122 E NativeSemDvfsCpuManager: acquire:: End
02-22 09:08:42.860 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt() attributes={ Content type: AUDIO_CONTENT_TYPE_UNKNOWN Usage: AUDIO_USAGE_GAME Source: AUDIO_SOURCE_DEFAULT Flags: 0x400 Tags:  } stream=AUDIO_STREAM_MUSIC session 2105 selectedDeviceId 0
02-22 09:08:42.861 31100 23494 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.861 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt() device {type:0x2,@:}, sampling rate 0, format 0x5, channel mask 0x3, flags 0x100 stream AUDIO_STREAM_MUSIC
02-22 09:08:42.861 31100 23494 V APM_AudioPolicyManager: selectOutput new bestOutput 13 criteria 0 0 0 0 0 0 2 2 
02-22 09:08:42.861 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt returns output 13 selectedDeviceId 13
02-22 09:08:42.861 31100 23494 V APM_AudioPolicyManager: getOutputForAttr() returns output 13 requestedPortId 0 selectedDeviceId 13 for port ID 208
02-22 09:08:42.861 31100 23494 I AudioFlinger: nonSecFlag 100, secFlag 0, outputFlags a
02-22 09:08:42.861 31100 23494 W AudioFlinger: createTrack_l(): mismatch between requested flags (00000100) and output flags (0000000a)
02-22 09:08:42.862 31100 23494 D AudioFlinger: Client defaulted notificationFrames to 2565 for frameCount 7696, normal FC 960, mSampleRate 48000, sampleRate 48000
02-22 09:08:42.862 31100 23494 I AF::Track: setMixerOutConfig expectKey 402
02-22 09:08:42.862 31100 23494 I AF::Track: setMixerOutConfig select, mixer out f 5, s 48000, thread out f 4, s 48000
02-22 09:08:42.863 19608 19608 D AudioTrack: setVolume(1.000000, 1.000000) pid : 19608
02-22 09:08:42.863 19608 19608 W AudioStreamTrack: open() sampleRate changed from 0 to 48000
02-22 09:08:42.864 19608 19608 W AudioStreamTrack: open() flags changed from 0x00000104 to 0x00000000
02-22 09:08:42.864 19608 19608 W AudioStreamTrack: open() perfMode changed from 12 to 10
02-22 09:08:42.865 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() returns 0 = AAUDIO_OK for s#1 ----------------
02-22 09:08:42.865 19608 19608 D AAudio  : AAudioStream_close(s#1) called ---------------
02-22 09:08:42.868 31100 31116 V APM_AudioPolicyManager: releaseOutput() 13, portId 208
02-22 09:08:42.871 19608 19608 D AAudio  : AAudioStream_close(s#1) returned 0 ---------
02-22 09:08:42.872 19608 19608 I fmod    : FMOD::supportsLowLatency                 : Low latency = false, Pro Audio = false, Bluetooth On = false, Acceptable Block Size = false (0)
02-22 09:08:42.872 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() called ----------------------------------------
02-22 09:08:42.872 19608 19608 I AudioStreamBuilder: rate   =      0, channels  = 0, format   = 0, sharing = SH, dir = OUTPUT
02-22 09:08:42.872 19608 19608 I AudioStreamBuilder: device =      0, sessionId = -1, perfMode = 12, callback: ON with frames = 0
02-22 09:08:42.872 19608 19608 I AudioStreamBuilder: usage  =     14, contentType = 0, inputPreset = 0, allowedCapturePolicy = 0
02-22 09:08:42.872 19608 19608 D         : PlayerBase::PlayerBase()
02-22 09:08:42.872 19608 19608 D AudioStreamTrack: open(), request notificationFrames = -8, frameCount = 0
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt() attributes={ Content type: AUDIO_CONTENT_TYPE_UNKNOWN Usage: AUDIO_USAGE_GAME Source: AUDIO_SOURCE_DEFAULT Flags: 0x400 Tags:  } stream=AUDIO_STREAM_MUSIC session 2113 selectedDeviceId 0
02-22 09:08:42.873 31100 23494 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt() device {type:0x2,@:}, sampling rate 0, format 0x5, channel mask 0x3, flags 0x104 stream AUDIO_STREAM_MUSIC
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: selectOutput new bestOutput 13 criteria 0 0 0 0 0 0 2 2 
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: selectOutput new bestOutput 21 criteria 0 0 0 0 0 1 2 0 
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: getOutputForAttrInt returns output 21 selectedDeviceId 13
02-22 09:08:42.873 31100 23494 V APM_AudioPolicyManager: getOutputForAttr() returns output 21 requestedPortId 0 selectedDeviceId 13 for port ID 209
02-22 09:08:42.874 31100 23494 I AudioFlinger: Add dynamic flag, session 2113
02-22 09:08:42.874 31100 23494 I AudioFlinger: nonSecFlag 104, secFlag 100000, outputFlags 4
02-22 09:08:42.874 31100 23494 W AudioFlinger: createTrack_l(): mismatch between requested flags (00000104) and output flags (00000004)
02-22 09:08:42.874 31100 23494 D AudioFlinger: Client defaulted notificationFrames to 192 for frameCount 1536, normal FC 960, mSampleRate 48000, sampleRate 48000
02-22 09:08:42.874 31100 23494 I AF::Track: setMixerOutConfig return default condition, mixer key 2002, thread key 2002
02-22 09:08:42.875 19608 19608 I AudioTrack: createTrack_l(208): AUDIO_OUTPUT_FLAG_FAST successful; frameCount 0 -> 1536
02-22 09:08:42.875 19608 19608 D AudioTrack: setVolume(1.000000, 1.000000) pid : 19608
02-22 09:08:42.875 19608 19608 W AudioStreamTrack: open() sampleRate changed from 0 to 48000
02-22 09:08:42.875 19608 19608 W AudioStreamTrack: open() flags changed from 0x00000104 to 0x00100004
02-22 09:08:42.876 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() returns 0 = AAUDIO_OK for s#2 ----------------
02-22 09:08:42.876 19608 19608 D AAudio  : AAudioStream_close(s#2) called ---------------
02-22 09:08:42.877 31100 31116 V APM_AudioPolicyManager: releaseOutput() 21, portId 209
02-22 09:08:42.878 19608 19608 D AAudio  : AAudioStream_close(s#2) returned 0 ---------
02-22 09:08:42.878 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() called ----------------------------------------
02-22 09:08:42.878 19608 19608 I AudioStreamBuilder: rate   =      0, channels  = 0, format   = 0, sharing = SH, dir = OUTPUT
02-22 09:08:42.878 19608 19608 I AudioStreamBuilder: device =      0, sessionId = -1, perfMode = 12, callback: ON with frames = 0
02-22 09:08:42.878 19608 19608 I AudioStreamBuilder: usage  =     14, contentType = 0, inputPreset = 0, allowedCapturePolicy = 0
02-22 09:08:42.878 19608 19608 D         : PlayerBase::PlayerBase()
02-22 09:08:42.879 19608 19608 D AudioStreamTrack: open(), request notificationFrames = 0, frameCount = 8832
02-22 09:08:42.879 31100 20528 V APM_AudioPolicyManager: getOutputForAttrInt() attributes={ Content type: AUDIO_CONTENT_TYPE_UNKNOWN Usage: AUDIO_USAGE_GAME Source: AUDIO_SOURCE_DEFAULT Flags: 0x400 Tags:  } stream=AUDIO_STREAM_MUSIC session 2121 selectedDeviceId 0
02-22 09:08:42.879 31100 20528 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.880 31100 20528 V APM_AudioPolicyManager: getOutputForAttrInt() device {type:0x2,@:}, sampling rate 0, format 0x5, channel mask 0x3, flags 0x104 stream AUDIO_STREAM_MUSIC
02-22 09:08:42.880 31100 20528 V APM_AudioPolicyManager: selectOutput new bestOutput 13 criteria 0 0 0 0 0 0 2 2 
02-22 09:08:42.880 31100 20528 V APM_AudioPolicyManager: selectOutput new bestOutput 21 criteria 0 0 0 0 0 1 2 0 
02-22 09:08:42.880 31100 20528 V APM_AudioPolicyManager: getOutputForAttrInt returns output 21 selectedDeviceId 13
02-22 09:08:42.880 31100 20528 V APM_AudioPolicyManager: getOutputForAttr() returns output 21 requestedPortId 0 selectedDeviceId 13 for port ID 210
02-22 09:08:42.880 31100 20528 I AudioFlinger: Add dynamic flag, session 2121
02-22 09:08:42.880 31100 20528 I AudioFlinger: nonSecFlag 104, secFlag 100000, outputFlags 4
02-22 09:08:42.880 31100 20528 W AudioFlinger: createTrack_l(): mismatch between requested flags (00000104) and output flags (00000004)
02-22 09:08:42.880 31100 20528 D AudioFlinger: Client defaulted notificationFrames to 192 for frameCount 8832, normal FC 960, mSampleRate 48000, sampleRate 48000
02-22 09:08:42.881 31100 20528 I AF::Track: setMixerOutConfig return default condition, mixer key 2002, thread key 2002
02-22 09:08:42.881 19608 19608 I AudioTrack: createTrack_l(209): AUDIO_OUTPUT_FLAG_FAST successful; frameCount 8832 -> 8832
02-22 09:08:42.881 19608 19608 D AudioTrack: setVolume(1.000000, 1.000000) pid : 19608
02-22 09:08:42.881 19608 19608 W AudioStreamTrack: open() sampleRate changed from 0 to 48000
02-22 09:08:42.881 19608 19608 W AudioStreamTrack: open() flags changed from 0x00000104 to 0x00100004
02-22 09:08:42.882 19608 19608 I AAudio  : AAudioStreamBuilder_openStream() returns 0 = AAUDIO_OK for s#3 ----------------
02-22 09:08:42.885 19608 19608 D AAudio  : AAudioStream_requestStart(s#3) called --------------
02-22 09:08:42.885 31100 20528 I AF::Track: setMixerOutConfig return default condition, mixer key 2002, thread key 2002
02-22 09:08:42.886 31100 20528 W AudioPolicyIntefaceImpl: Skipped to add effects on session 2121
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: startOutput() output 21, stream 3, session 2121, portId 210
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: setBeaconMute(1) mBeaconMuteRefCount=1 mBeaconPlayingRefCount=0
02-22 09:08:42.886 31100 20528 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: selectOutputForMusicEffects activeOnly 1 output 21 flags 0x00000004
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: selectOutputForMusicEffects selected output 13
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: getNewOutputDevices selected devices {type:0x2,@:}
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: setOutputDevices device {type:0x2,@:} delayMs 0
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: setOutputDevices() prevDevice {type:0x2,@:}
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: setOutputDevices: suppressing checkDeviceMuteStrategies
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: setOutputDevices setting same device {type:0x2,@:} or null device, force=0, patch handle=191
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: computevolume : stream 3, index 15, 1.000000
02-22 09:08:42.886 31100 20528 V APM_AudioPolicyManager: computevolume : stream 3, index 15, 1.000000
02-22 09:08:42.886 19608 19608 D         : PlayerBase::start() from IPlayer
02-22 09:08:42.886 19608 19608 D AAudio  : AAudioStream_requestStart(s#3) returned 0 ---------
02-22 09:08:42.886 19608 19980 D AudioStreamLegacy: onAudioDeviceUpdate() devId 13 => 13
02-22 09:08:42.887  3982  4191 D AS.AudioService: notify dvfs state : 2, screen : true
02-22 09:08:42.887  3982  3982 D AudioPlayerStateMonitor: Found a new active media playback. ID:1807 -- type:AAudio -- u/pid:10271/19608 -- state:started -- attr:AudioAttributes: usage=USAGE_MEDIA content=CONTENT_TYPE_UNKNOWN flags=0x0 tags= bundle=null
02-22 09:08:42.887  3982  3982 D MediaSessionStack: updateMediaButtonSessionIfNeeded, callers=com.android.server.media.MediaSessionService.lambda$onStart$0$MediaSessionService:208 com.android.server.media.-$$Lambda$MediaSessionService$za_9dlUSlnaiZw6eCdPVEZq0XLw.onAudioPlayerActiveStateChanged:2 
02-22 09:08:42.887 31101 31111 D audio_hw_primary_abox: out_update_source_metadata: called, but not implemented yet
02-22 09:08:42.888 31101  7741 D audio_hw_primary_abox: fast_out-set_audio_route: [PLAYBACK] current-device(none) new-device(speaker) in cur-mode(none) & new-mode(normal)!
02-22 09:08:42.888 31101  7741 D audio_route: Apply path: media-speaker
02-22 09:08:42.888 31101  7741 I audio_route: > audio_route_update_path : "media-speaker" reverse(0)
02-22 09:08:42.888 31101  7741 V audio_route: ctl   : "ABOX ERAP info Bypass On" value 1
02-22 09:08:42.889  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener check active usage=1, package=com.:10271 [CONTEXT service_id=49 ]
02-22 09:08:42.889 31101  7741 V audio_route: ctl   : "ABOX NSRC3" value "UAIF3"
02-22 09:08:42.889 31101  7741 V audio_route: ctl   : "ABOX SPUS OUT7" value "SIFS1"
02-22 09:08:42.889 31101  7741 V audio_route: ctl   : "ABOX SIFS1" value "SPUS OUT7"
02-22 09:08:42.890 31101  7741 V audio_route: ctl   : "ABOX UAIF SPK3" value "SIFS1"
02-22 09:08:42.890 31101  7741 D audio_hw_primary_abox: fast_out-do_set_route: Enabled Audio Route(media-speaker)
02-22 09:08:42.890 31101  7741 D audio_route: Apply path: gain-media-speaker
02-22 09:08:42.890 31101  7741 I audio_route: > audio_route_update_path : "gain-media-speaker" reverse(0)
02-22 09:08:42.890 19608 19608 I  Started Fmod : build 131602
02-22 09:08:42.890 31101  7741 V audio_route: ctl   : "DAC Gain" value 55
02-22 09:08:42.890 31101  7741 D audio_hw_primary_abox: fast_out-do_set_route: Enabled Audio Gain(gain-media-speaker)
02-22 09:08:42.891 31101  7741 I audio_hw_primary_abox: [do_open_spkamp_stream] Opened PCM Device(/dev/snd/pcmC0D7p) configured Info: Channels(2)  Smapling Rate(48000), Format: Default(0)
02-22 09:08:42.891  3982  4191 D BaseRestrictionMgr: Package: com.sec.android.app.soundalive, userid: 0, hostingType: provider is allowed by freecess, caller is: android
02-22 09:08:42.894 19608 19608 D AAudio  : AAudioStream_requestStop(s#3) called
02-22 09:08:42.894 19608 19608 D AudioTrack: stop(210): called with 1536 frames delivered
02-22 09:08:42.894 19608 19608 D         : PlayerBase::stop() from IPlayer
02-22 09:08:42.894 19608 19608 D AAudio  : AAudioStream_close(s#3) called ---------------
02-22 09:08:42.894  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener check game app with package name through NameNotFoundException [CONTEXT service_id=49 ]
02-22 09:08:42.895  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener find media event [CONTEXT service_id=49 ]
02-22 09:08:42.895 15408 19623 D SAContentProvider: Player/Screen Callback
02-22 09:08:42.896  4706  4706 I NearbyFastPair: NearbyDeviceManager: setOnSightCallback to null [CONTEXT service_id=265 ]
02-22 09:08:42.896  3343  3343 I hwservicemanager: getTransport: Cannot find entry vendor.samsung.hardware.radio.channel@2.0::ISehChannel/imsd in either framework or device manifest.
02-22 09:08:42.896  4706  4706 I NearbyDiscovery: FastPair: ConnectionSwitchManager receiveAudioEvent=MEDIA and try to switch [CONTEXT service_id=49 ]
02-22 09:08:42.897 19608 19608 D AAudio  : AAudioStream_close(s#3) returned 0 ---------
02-22 09:08:42.898  3982  3982 D MediaSessionStack: updateMediaButtonSessionIfNeeded, callers=com.android.server.media.MediaSessionService.lambda$onStart$0$MediaSessionService:208 com.android.server.media.-$$Lambda$MediaSessionService$za_9dlUSlnaiZw6eCdPVEZq0XLw.onAudioPlayerActiveStateChanged:2 
02-22 09:08:42.899  4706  4706 I NearbyDiscovery: FastPair: ConnectionSwitchManager no bluetooth adapter available [CONTEXT service_id=49 ]
02-22 09:08:42.899 19608 19608 D         : PlayerBase::PlayerBase()
02-22 09:08:42.899 19608 19608 D         : TrackPlayerBase::TrackPlayerBase()
02-22 09:08:42.899 19608 19608 I libOpenSLES: Emulating old channel mask behavior (ignoring positional mask 0x3, using default mask 0x3 based on channel count of 2)
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: getOutputForAttrInt() attributes={ Content type: AUDIO_CONTENT_TYPE_UNKNOWN Usage: AUDIO_USAGE_MEDIA Source: AUDIO_SOURCE_DEFAULT Flags: 0x400 Tags:  } stream=AUDIO_STREAM_MUSIC session 2129 selectedDeviceId 0
02-22 09:08:42.902 31100 31139 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: getOutputForAttrInt() device {type:0x2,@:}, sampling rate 24000, format 0x1, channel mask 0x3, flags 0x104 stream AUDIO_STREAM_MUSIC
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: selectOutput new bestOutput 13 criteria 0 0 0 0 0 0 4 2 
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: selectOutput new bestOutput 21 criteria 0 0 0 0 0 1 4 0 
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: getOutputForAttrInt returns output 21 selectedDeviceId 13
02-22 09:08:42.902 31100 31139 V APM_AudioPolicyManager: getOutputForAttr() returns output 21 requestedPortId 0 selectedDeviceId 13 for port ID 211
02-22 09:08:42.902 31100 31139 I AudioFlinger: Add dynamic flag, session 2129
02-22 09:08:42.902 31100 31139 I AudioFlinger: nonSecFlag 104, secFlag 100000, outputFlags 4
02-22 09:08:42.902 31100 31139 W AudioFlinger: createTrack_l(): mismatch between requested flags (00000104) and output flags (00000004)
02-22 09:08:42.902 31100 31139 I AudioFlinger: FastTrack denied, resize fc 960
02-22 09:08:42.902 31100 31139 D AudioFlinger: Client defaulted notificationFrames to 480 for frameCount 960, normal FC 960, mSampleRate 48000, sampleRate 24000
02-22 09:08:42.903 31100 31139 I AF::Track: setMixerOutConfig expectKey 402
02-22 09:08:42.903 31100 31139 I AF::Track: setMixerOutConfig select, mixer out f 5, s 48000, thread out f 5, s 48000
02-22 09:08:42.903 19608 19608 W AudioTrack: createTrack_l(0): AUDIO_OUTPUT_FLAG_FAST denied by server; frameCount 0 -> 960
02-22 09:08:42.903 19608 19608 I AudioTrack: Need throttle time for OpenSLES player
02-22 09:08:42.905 31100 31139 I AF::Track: setMixerOutConfig expectKey 402
02-22 09:08:42.905 31100 31139 I AF::Track: setMixerOutConfig select, mixer out f 5, s 48000, thread out f 5, s 48000
02-22 09:08:42.905 31100 31139 W AudioPolicyIntefaceImpl: Skipped to add effects on session 2129
02-22 09:08:42.905 31100 31139 V APM_AudioPolicyManager: startOutput() output 21, stream 3, session 2129, portId 211
02-22 09:08:42.905 31100 31139 V APM_AudioPolicyManager: setBeaconMute(1) mBeaconMuteRefCount=2 mBeaconPlayingRefCount=0
02-22 09:08:42.905  3982  3982 D AudioPlayerStateMonitor: Found a new active media playback. ID:1815 -- type:OpenSL ES AudioPlayer (Buffer Queue) -- u/pid:10271/19608 -- state:started -- attr:AudioAttributes: usage=USAGE_MEDIA content=CONTENT_TYPE_UNKNOWN flags=0x0 tags= bundle=null
02-22 09:08:42.905 31100 31139 D APM::MultiSoundManager: getDevice, uid = 10271, device = 0
02-22 09:08:42.905 31100 31139 V APM_AudioPolicyManager: selectOutputForMusicEffects activeOnly 1 output 21 flags 0x00000004
02-22 09:08:42.905 31100 31139 V APM_AudioPolicyManager: selectOutputForMusicEffects selected output 13
02-22 09:08:42.905  3982  3982 D MediaSessionStack: updateMediaButtonSessionIfNeeded, callers=com.android.server.media.MediaSessionService.lambda$onStart$0$MediaSessionService:208 com.android.server.media.-$$Lambda$MediaSessionService$za_9dlUSlnaiZw6eCdPVEZq0XLw.onAudioPlayerActiveStateChanged:2 
02-22 09:08:42.905 31100 31139 I AudioFlinger: updateStageIndex new -2102
02-22 09:08:42.905 31100 31139 I AudioFlinger: updateStageIndex new -2102
02-22 09:08:42.907  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener check active usage=1, package=com.:10271 [CONTEXT service_id=49 ]
02-22 09:08:42.908  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener check game app with package name through NameNotFoundException [CONTEXT service_id=49 ]
02-22 09:08:42.908  4706  4706 I NearbyDiscovery: FastPair: AudioEventListener find media event [CONTEXT service_id=49 ]
02-22 09:08:42.908  4706  4706 I NearbyFastPair: NearbyDeviceManager: setOnSightCallback to null [CONTEXT service_id=265 ]
02-22 09:08:42.908  4706  4706 I NearbyDiscovery: FastPair: ConnectionSwitchManager receiveAudioEvent=MEDIA and try to switch [CONTEXT service_id=49 ]
02-22 09:08:42.909  4706  4706 I NearbyDiscovery: FastPair: ConnectionSwitchManager no bluetooth adapter available [CONTEXT service_id=49 ]
02-22 09:08:42.911 31101  7741 I audio_hw_primary_abox: [do_open_spkamp_stream] Opened PCM Device(/dev/snd/pcmC0D11c) configured Info: Channels(2)  Smapling Rate(48000), Format: Default(0)
02-22 09:08:42.912 19608 19608 W monodroid-assembly: open_from_bundles: failed to load assembly System.Xml.ReaderWriter.dll
02-22 09:08:42.913 19608 19608 W monodroid-assembly: open_from_bundles: failed to load assembly System.Private.Xml.dll
02-22 09:08:42.913 31101  7741 I audio_hw_primary_abox: [do_open_spkamp_stream] Opened PCM Device(/dev/snd/pcmC0D12c) configured Info: Channels(2)  Smapling Rate(48000), Format: Default(0)
02-22 09:08:42.946 31101  7741 I audio_hw_primary_abox: fast_out-do_open_output_stream: Opened PCM Device is /dev/snd/pcmC0D2p samplingRate(48000) pcmformat(0) start_threshold(192) stop_threshold(-1)
02-22 09:08:42.946 31101  7741 I audio_hw_primary_abox: fast_out-out_write: Transit to Idle
02-22 09:08:42.948 31101  7741 I audio_hw_primary_abox: fast_out-out_write: Transit to Playing
02-22 09:08:42.951 31100 31121 I FastMixer: handle music stream -21002
02-22 09:08:42.957 19608 19608 W monodroid-assembly: open_from_bundles: failed to load assembly System.Drawing.Primitives.dll
02-22 09:08:42.960 31100 31121 D DlbDap2Process: setParam(preg = #1[0])
02-22 09:08:42.971 31100 31122 D AudioFlinger: mixer(0xe86e1d40) Spend too much time to write: delta 83(effect 0, stage 0)
02-22 09:08:42.971 31100 31122 I AudioMixer: create resampler src 24000, 2, dst 48000, 2, q 8
02-22 09:08:42.971 31100 31122 D DlbDap2Process: setParam(preg = #1[0])
02-22 09:08:42.972 31100 31122 I AudioSAEffectSecPlus: command EFFECT_CMD_SET_VOLUME left = 1.000000, right =1.000000
02-22 09:08:42.972 31100 31122 I SoundBoosterEffectPlus: SB_setVolume(0xed874880)
02-22 09:08:42.972 31100 31122 I SoundBoosterEffectPlus: command EFFECT_CMD_SET_VOLUME left = 1.000000, right =1.000000
02-22 09:08:42.972 31101 31111 D audio_hw_primary_abox: out_update_source_metadata: called, but not implemented yet
02-22 09:08:42.972 31100 31122 I SoundAlive_SRC384 arch32: SRC384 Create
02-22 09:08:42.972 31100 31122 I SoundAlive_SRC384 arch32: SoundAlive_SRC384() 
02-22 09:08:42.972 31100 31122 I SoundAlive_SRC384 arch32: SoundAlive_SRC384: Instance 0 Init(outFs 7, InFs 7, chnum 0, outBW 0, inBW 0)
02-22 09:08:42.972 31100 31122 I Samsung_SoundAlive_SRC arch32: SRC384 version Samsung SoundAlive SRC ver320 arch32  01.17.2020 (Cppref for ARM32, ver.300.c 32bit 07_10_2016 based)
02-22 09:08:42.972 31100 31122 D SoundAliveResampler: [SoundAliveResampler] Init+++
02-22 09:08:42.972 31100 31122 I SoundAlive_SRC384 arch32: SoundAlive_SRC384: Instance 0 Init(outFs 8, InFs 5, chnum 2, outBW 3, inBW 3)
02-22 09:08:42.972 31100 31122 I Samsung_SoundAlive_SRC arch32: SRC384 version Samsung SoundAlive SRC ver320 arch32  01.17.2020 (Cppref for ARM32, ver.300.c 32bit 07_10_2016 based)
02-22 09:08:42.972 31100 31122 I SoundAlive_Interface a32: [ 2 ][ 48000 ]FlushBuffers()
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Init() nch : 2  bitdepth : 1 
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]SamplingRateConfig() SamplingRate : 48000
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]OutDevConfig() OutDevConfig : 2
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_Preset() : 0
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_User_BWE() 0
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_User_CH() : 0
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_SquareUI() : 4 , 4
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_User_3D() : 0
02-22 09:08:42.972 31100 31122 I SoundAlive_Effect: [ 2 ][ 48000 ]Set_User_BE() : 0
02-22 09:08:42.972 31100 31122 I SoundAlive_Interface a32: [dB = 0.000087 ]
02-22 09:08:42.973 31100 31122 I SoundAlive_PrePost: [ 2 ][ 48000 ]Exe_Pre() mRequiredPreVolume is changed - dB : 0.000087  mRequiredPreVolume : 0.000087
02-22 09:08:42.973 31100 31122 I SoundAlive_PrePost: [ 2 ][ 48000 ]Exe_Pre() mRequiredPreGain is changed - dB : 0.000087  mRequiredPreGain : 0.000000
02-22 09:08:42.973 31100 31122 I SoundAlive_PrePost: [ 2 ][ 48000 ]Exe_Post() mRequiredPostVolume is changed - dB : 0.000087  mRequiredPostVolume : 0.000000
02-22 09:08:42.973 31100 31122 I SoundAlive_PrePost: [ 2 ][ 48000 ]Exe_Post() mRequiredPostGain is changed - dB : 0.000087  mRequiredPostGain : 0.000000
02-22 09:08:43.012 31100 31121 I FastMixer: decActiveStage music stream -21002
02-22 09:08:43.012 31100 31121 D DlbDap2Process: setParam(preg = #1[-2080])
02-22 09:08:43.015 31100 31116 V APM_AudioPolicyManager: stopOutput() output 21, stream 3, session 2121  portId 210
02-22 09:08:43.015 31100 31116 V APM_AudioPolicyManager: setBeaconMute(1) mBeaconMuteRefCount=1 mBeaconPlayingRefCount=0
02-22 09:08:43.015 31101 31111 D audio_hw_primary_abox: out_update_source_metadata: called, but not implemented yet
02-22 09:08:43.015 31100 31116 V APM_AudioPolicyManager: selectOutputForMusicEffects activeOnly 1 output 21 flags 0x00000004
02-22 09:08:43.015 31100 31116 V APM_AudioPolicyManager: selectOutputForMusicEffects selected output 13
02-22 09:08:43.015 31100 31116 V APM_AudioPolicyManager: releaseOutput() 21, portId 210

Thanks for the log. The logs indicated you might be running into this issue: Coloured noises drop off in high frequencies.

Could I also get a copy of the audio file you are using to test on my end?

It may be an issue with downmixing the audio to a mono speaker as it is not noticeable while playing in stereo. Do you run into this issue with both Xamarin library and FMOD or just FMOD?

I have been testing on a Huawei and a Samsung Galaxy10 and am unable to hear a difference.

Thanks. Here’s a link to an ogg file that is louder when using AUDIOTRACK or plain old mediaplayer

https://www.dropbox.com/s/k3ut2sktifez4xl/Bach_Prelude.ogg?dl=1

I’m using the FmodForFoxes Xamarin wrapper. I think the mono/stereo thing wasn’t true in the end as I discovered all my devices were actually stereo.

I tried using SetSoftwareFormat but it seemed to have no effect.

I tried converting the ogg file to 48000Hz and that also had no effect on the volume.

Hi, thank you for sharing the audio file.

The file has very little bass or treble after reviewing it in an external audio editor which may be the reason for the issues you are experiencing. Would it be possible to test an FMOD Example that is included with the FMOD Engine download from our Downloads page? This would also test if the issue might be coming from using the FMODForFoxes wrapper.