Loud audio clipping when first playing simvar sounds since SU 5.1

Version: 1.7.35.0 and 1.8.9.0

Frequency: Consistently

Severity: High

Marketplace package name: any aircraft using simvar sounds

Context: In flight.

Similar MSFS 2020 issue: n/a

Bug description:

SU 5.1 made this last minute change: " Audio - Fixed attenuation factors being calculated with a one frame delay for legacy sounds (based on WAV files)

Since then all of my one-shot simvar sounds in my aircraft are making a very loud clipping “POP” sound during their first activation. Subsequent activations play fine, but the “pop” is very jarring and unpleasant, especially on headphones.

I was going to report it earlier, but this issue went away in the first two SU_06 builds. This bug is now happening again in 1.8.9.0 though (I assume because the late 5.1 changes have been merged).

I think that one frame delay was there to allow for loading / caching the wav file.

Can you please fix this? I use simvar sounds all over the place in my aircraft, and this bug has really hurt the overall experience.

(I know they should be done in wwise, but current circumstances prevent that)

Thank you very much!

-Mike

Repro steps: You can use the engine start buttons in the Grumman Albatross to test (make sure master battery is on first), or any aircraft that uses one-shot simvar sounds.

Attachments:

See linked video below of engine start with loud “pop” sound when first engaging each starter motor, for which I am using simvar sounds with looping wav files. The button sounds themselves are in wwise. Subsequent starter motor engagements work fine, once the starter wav has been played once.

Private attachments: Send a PM to PrivateContent with the link to this topic and the link to download your content

I’ve noticed a similar issue - if not the same issue, even with the sounds being done in Wwise. The first audio play is always louder. Every click after that is fine. Also, if I have separate on and off sounds being used, on the first click, the on and off sound will play at the same time. So, I assume this has something to do with my Lvar initializing as 0 upon sim load, and since the on sound is triggered when the Lvar is set to 1, when clicked it has to play the sound at 0 as well.

I have tried to block this in different ways with no luck.

@Ramasurinen
For anything that has an animation, unless you need to play the sounds in a complex way, I would just use animation sounds.

The AnimationTriggers setup will work for 2020 and 2024 as well. I find that it works ok starting at keyframe 0, but if its a 0-100 keyframe animation, the backwards only seems to work if I set it to keyframe 99 instead of 100.

		<Component ID="DOOR_PILOT">
			<!-- Other templates have been removed for this example -->

			<!-- LATCH ANIMATION -->
			<UseTemplate Name="ASOBO_GT_Anim_Template">
				<ANIM_NAME>INT_DEADBOLT_PILOT</ANIM_NAME>
				<ANIM_CODE>(Z:DoorLatchPilot) 100 *</ANIM_CODE>
				<ANIM_LENGTH>100</ANIM_LENGTH>
				<ANIM_LAG>100</ANIM_LAG>
			</UseTemplate>

			<!-- PLAY LATCH ANIMATION SOUND -->
			<AnimationTriggers Animation="INT_DEADBOLT_PILOT">
			    <EventTrigger Frame="0" Direction="Forward"> <!-- Plays at Keyframe 0 (Blender NLA) -->
			        <SoundEvent WwiseEvent="door_latch_pilot_open" Action="Play"/>
			    </EventTrigger>
			    <EventTrigger Frame="99" Direction="Backward"> <!-- Plays at Keyframe 99 (Blender NLA) -->
			        <SoundEvent WwiseEvent="door_latch_pilot_close" Action="Play"/>
			    </EventTrigger>
			</AnimationTriggers>
		</Component>
1 Like

I did some more investigation on this new bug and the “pop” clipping sound it created is coming from state changes, either from a required variable turning on and off for a normal simvar sound, or an engine moving from one state to another (from off to start.. etc) for a custom engine legacy sound. Once the state has changed for the first time, and the sound has been loaded and played once, then it works alright after that. Note that the “pop” is unique to each simvar sound entry itself, not the referenced WAV file. Two simvar sounds can reference the same WAV and they will both “pop” during their first use.

In the example below the sound “pop” will happen when the engine state moves from StateOff to StateStart.

<Sound WwiseEvent="custom_engine_sound_01" WwiseData="false" FileName="custom_eng_1" EngineIndex="1" Continuous="true" StateOff="false" StateStart="true" StateOn="true" FadeOutType="2" FadeOutTime="3" >
	<VolumeCurve LocalVar="XMLVAR_PROP_RATE_COMB_1" Units="BOOL" Index="0">
		<Point SimValue="0.000" Output="0.0" />
		<Point SimValue="5.000" Output="0.0" />
		<Point SimValue="6.000" Output="10" />
	</VolumeCurve>
</Sound>

The only workaround currently is to set StateOff, StateStart, and StateOn all to “true”. This will cause the “pop” to occur immediately at flight start, normally when entering the aircraft after walkaround. This is still jarring and unpleasant, but it gets it over with, and then the bug won’t reappear for that custom engine sound during that flight.

The same problem happens for normal Simvar Sounds when they are based on a variable.

In the example below the jarring “pop” sound will occur when the contact point water depth:1 is greater than 0 feet, ie as soon as it hits water…

<Sound Wwisedata="false" WwiseEvent="custom_sound_01" FileName="custom_sound_1" SimVar="CONTACT POINT WATER DEPTH" Units="Feet" Index="1" NodeName="BOW_CENTER" Continuous="true" BreakOnStop="false" ViewPoint="Inside" FadeOutType="2" FadeOutTime="4" ApplyCockpitReverb="true">
	<VolumeCurve SimVar="CONTACT POINT WATER DEPTH" Units="feet" Index="1">
		<Point SimValue="0" Output="0.02" />
		<Point SimValue="0.2" Output="0.1" />
		<Point SimValue="0.5" Output="0.7" />
		<Point SimValue="2" Output="3" />
	</VolumeCurve>
	<PitchCurve SimVar="CONTACT POINT WATER DEPTH" Units="feet" Index="1">
		<Point SimValue="0" Output="1.2" />
		<Point SimValue="1" Output="0.9" />
	</PitchCurve>
</Sound>

The only workaround is to set the simvar to something guaranteed to be valid at flight launch, like “IS USER SIM”, or set up a new Lvar to do the same job, and then have that Lvar react to the originally intended simvar.

Long story short, there is a workaround, but only to make all of the loud pops happen at flight start, rather than later in the flight.

Hopefully this helps track down where the 5.1 update attenuation change went wrong.

@Rotornut44 Thank you very much for trying to help with the animationsounds alternative, and those would work for simpler one-off sounds, but the stuff I’m doing with simvar sounds is pretty complex at the moment. At some point I will move them over to wwise, but I just can’t afford the time required for awhile, so hopefully this change can be fixed or reverted.

Many thanks!

Hello @Ramasurinen @Rotornut44

Can you please provide us with a package or point us to a Marketplace package that demonstrates the issue?

Edit: my apologies, I didn’t realize you were referring to the package microsoft-aircraft-grumman-albatross

Regards,
Sylvain

@FlyingRaccoon Thanks for looking into this! It may not happen on the live version of the plane. It’s a really massive project to send over, so I’m trying to quickly replicate the issue in the SimpleAircraft project first, and will send you that if I can make it happen.

Thanks!

@FlyingRaccoon Thank you Sylvain. I have just sent a message to PrivateContent with a link to modified simple aircraft SDK package that demonstrates this bug. Hopefully the message works this time!

Thanks,

-Mike

1 Like

Hello @Ramasurinen

We could replicate the issue. Thank you for the package.
Not sure yet if this can be fixed in time for SU6 release though.

Regards,
Sylvain