Possible Event Cone Angle bug

Hi! This is the X-Plane flight simulator and we’re running into what we suspect is a bug into the Event Cone Angle parameter handling in FMOD.

There is this event that corresponds to the engine of an aircraft (let’s say a 737 passenger airliner) as heard from inside and it’s modulated in pitch by the N1 parameter (the engine fan speed) and by the Event Cone Angle to provide a timbre variation when you hear it from different parts of the aircraft. When you are near the cockpit, you’re at maybe around 2~5 degrees cone angle, and when you’re standing in the aisle seats over the wing you’re approximately at 90 degrees. The listener is attached to the camera.

When the aircraft is stationary on the ground everything seems to work perfectly, and as you move back and forth in the aircraft aisle, you hear the expected changes in modulation based on the Cone Angle paramenter.

But when the aircraft is flying, you hear fluctuations in the event modulation AS IF the event cone angle parameter was fluctuating as well. Here’s a video showing 1) the event setup 2) the bug while flying 3) the stationary on ground situation: https://www.youtube.com/watch?v=rADGhx30lvE

I say “as if the event cone angle parameter was fluctuating” because we recorded a fragment on the Profiler and we see no such variation. We also analyzed the data that X-Plane is sending to the engine: at the beggining of the frame we update the listener 3D vectors, then on the rest of the frame we set the event modulation parameters and set the event 3D vectors, and they stay stable as expected (so no fluctuation in position that might vary the cone angle).

At your disposal we have the stripped down sound bank and reproduction steps where you can download the product demo and install the bank on the default 737 aircraft so you can test. Thank you!

PS: Running 2.02.29 engine.

I’ll leave repro steps and sound bank here just in case.

  1. Go to https://www.x-plane.com/ and download and install the free X-Plane 12 demo.
  2. Once installed, find the “/X-Plane/Aircraft/Laminar Research/Boeing 737-800” folder.
  3. Delete the “fmod” folder and replace with the provided one.
  4. Start X-Plane, skip the introductory flight.
  5. On the main menu click “New Flight”, select the 737-8000, click “Customize” then check “Start with engines running”.
  6. Select “Location” Salzburg (LOWS) runway 15 and click “Start flight”.
  7. You should be in the 737 cockpit hearing the event tones.
  8. Use the right mouse button to point the camera where you want to move, and press the SHIFT + . and SHIFT + , keys to move forward and backwards.
  9. You’ll have to click on the cockpit door knob to open it and step into the passenger cabin.
  10. Move into the row that’s over the wing, pointing the camera towards the right engine.
  11. You can also use the SHIFT + arrow keys to move the camera up/down/left/right as well.
  12. Press M to bring up the Map window, use the scroll wheel to zoom into your aircraft, click on it and you’ll see its altitude/groundspeed/etc.
  13. Press P to pause, move the Altitude slider to around 35000 ft, groundspeed to 280, press P to unpause.
  14. You’ll hear the fluctuating sounds. Move freely into the cabin to hear the changes.

You can start X-Plane from the command line with the --fmod_live_updateparameter to connect Studio to it.

Bank:

https://www.dropbox.com/scl/fi/5vn45qov7pfnc0fb9oel4/fmod-737-demo-bug.zip?rlkey=n30hh6u6cyrrtcu7hqe79cbl1&dl=1