Fix up audio delay in Meta Quest recordings

2025-04-06

I bought my Quest 3 in October 2023. Today is April 2025. After 18 months of firmware updates, this bug still lingers: the audio desyncs by a couple hundred milliseconds whenever you use the recording functionality (the “Camera” app) to record gameplay footage inside the Quest.

I hate having to adjust the delay manually every time I splice the footage in my video editor, so I decided to just automate it with ffmpeg (all hail ffmpeg).

Step 1: Figure out the delay values

I first loaded up the video clip in my video player and played around with the audio delay option until I could get the audio and video in sync. A good trick to sync up Beat Saber footage, for example, is to listen for the “click” when you press the play button and the screen turns black, or when your saber goes through a note and makes the piercing sound.

On MPC-BE, you can find the delay option by opening up the options menu with the ‘O’ key, navigating to “Audio > Sound Processing”, checking “Audio time shift (ms)” and adjusting the delay there. Start with increments of -100 ms. For my headset, I found a delay of -400 ms, although it may be different for you depending on your unit variation and whatever game you’re recording. (Also, I have no idea why this option is buried here…)

MPC-BE audio delay options

Step 2: ffmpeg

And the command to shift just the audio with ffmpeg is the following:

ffmpeg -i input.mp4 -itsoffset 0.4 -i input.mp4 -map 1:v -map 0:a -c copy output.mp4

Don’t forget to change the offset value if the delay is different for you!

I have a positive delay value

If your video clip’s audio is ahead of the recording for some reason, use the following:

ffmpeg -i input.mp4 -itsoffset 0.4 -i input.mp4 -map 0:v -map 1:a -c copy output.mp4

Note that the -map numbers have changed, since we are now grabbing the non-delayed video stream from the first input and the delayed audio stream from the second input.

Conclusion

Don’t forget to uncheck the delay in your video player afterwards. (Or else you’ll drive yourself crazy figuring out why all your content has audio sync issues! Not speaking from experience.)

Also, if the fix is this simple, why can’t the Quest just correct the recording once it is finished…?