You are here

[UPDATED March 2021] Downloadable Audio/Video Sync Tests @ 23.98, 24, 25, 29.97, 50 & 59.94

PhotoJoseph's picture
March 30, 2021 - 1:00am
UPDATE: In March 2021, it was brought to my attention that the downloaded files were actually OUT OF SYNC. This is horrendous and I apologize profusely. It turns out this is, as far as I can tell, a bug in Apple Compressor. The master files were perfect — the H.264 were all shifted by a frame (and in some cases, more!). The new exports are all HEVC, which are (verified!) perfectly in sync. Apple has been notified of this problem, and replacement files are on the servers. Please (re) download below.

These are my own custom audio sync tests, provided for you to freely download at all common frame rates of 23.98, 24, 25, 29.97, 50 and 59.94 fps. 

Why you need these

All HDMI cameras have a slight delay between realtime and what's actually output over HDMI; this is simply inherent in HDMI processing and is unavoidable. When recording video, this is irrelevant. However when using an HDMI camera in a live production situation, if you're mixing video from the camera and audio from another source, the audio will generally be in real time while the video will not, resulting in an audio/video mismatch. Devices like the ATEM Mini Pro have the ability to program in a delay for the audio, so is in sync with video. If you're using a professional sound mixing board, the board can typically program a delay into it in milliseconds, so the audio actually arrives to your switcher / streaming hardware at the same time as the video.

These custom videos allow you to measure the delay so you can program it into your hardware.

I made a video that explains this… check it out here.

How to use them

  1. Download the video(s) for the appropriate frame rate to a laptop or tablet (the bigger the screen, the easier it will be to see this). It's critical that you use the matching frame rate to your production, or this won't work! 
  2. Position your laptop/tablet where the talent will be, play back the downloaded sync test (full screen and full volume is best), and point your HDMI camera at the screen. Ensure that the microphone is in (close to) the same position it will be for the production, that the microphone can clearly pick up the BEEP from sync test video, and that you can clearly see the sync test video on camera.
  3. Shoot video of the test; at least several seconds, but 30 should be more than enough. It's helpful to run it for more than just a couple of beeps so you can verify there is no variance from the beginning to the end of the clip.
  4. Load the recorded clip into an NLE and look for the BEEP on the audio waveform. Place the playhead there and look at the video; wherever the red speaker dot is, indicates how many frames you need to adjust. For example if the red dot is at the –4 mark, then your audio is four frames BEFORE the video. Add a four frame delay into the hardware. If your hardware programs the delay in milliseconds, use the chart to see how many seconds/milliseconds the delay is.

Downloads

You can play these from YouTube directly, however I recommend against that as there's no way to know if YouTube is delivering the video perfectly in sync. Download the appropriate frame rate video, and you can download these in 4K or HD.

(option-click to download)

23.98 (23.976) fps audio video sync test

24.00 fps audio video sync test

25.00 fps audio video sync test

29.97 fps audio video sync test

50.00 fps audio video sync test

59.94 fps audio video sync test

Downloadable Video Audio Sync Tests 23.98 (23.976)

Author:
PhotoJoseph

Hi,

I’m streaming live concerts to YouTube and Facebook at 30 fps and trying to sync things better. Any chance you might do a 30 fps video? Thanks a lot!

Jerome Sabbagh

Hey Jerome. Are you sure you're streaming at 30.00 and not 29.97? Many cameras say 30 but they mean 29.97. Very few cameras would actually go straight 30. But even if you really are at 30.00 — the 29.97 file will work fine. 

@PhotoJoseph
— Have you signed up for the mailing list?

Thanks a lot! We are using iPhones right now and putting 30 FPS for the stream in OBS so I think we are at 30 fps. I will use the 29.97 video. Thanks a lot!

Jerome

ah, OK. I'm honestly not sure if the iPhone does 29.97 or actual 30. 30 would be weird. Good luck with the production!

@PhotoJoseph
— Have you signed up for the mailing list?

Hi,

It seems that for some reason the link that’s supposed to point at the 50 fps 1080p recording points at the 29.97 fps 2160p recording intsead. (The other 1080p links are fine, but I haven’t checked the 2160p ones.) I don’t actually need that one right now, but you’d probably want to fix it eventually.

Cheers,
Alex

Whoops!! Thank you… copy and pasted so many links when I set these up, I somehow grabbed the wrong one there. Fixed now; thank you!

@PhotoJoseph
— Have you signed up for the mailing list?

Hi Joseph, first of all thanks for your work! Could you please also post H.264/AVC versions? I am trying to sync devices which don’t have an HEVC decoder. Maybe Handbrake gives you better results than Apple’s compressor. Thanks!

So, how do I know my laptop is correctly playing the audio and video without any lag?

There’s no reason a computer wouldn’t play it in sync. It’s a very lightweight file. But to answer the question — you really don’t. Any tool you’d use to measure could itself be off.

@PhotoJoseph
— Have you signed up for the mailing list?

Thanks for the reply and thinks for the video clip.  I just got done using the files.  I think I have it within +/- 1 frame.  I noticed some drift over the two minutes.  Guessing that is partly due to different sync rates 

But I also thought of another variable. My laptop display is 60.01hz according to Windows.  My understanding is LCDs can only display in their native resolution.  I you feed anything else, the display just up/down scales it.  Not sure how Windows is tweeking the frame rates between 29.94 and 60.01.

Thanks again!

I mean, you could if you really wanted to? But you probably don’t, given the hassle.

Assuming only a constant offset and no wobble, record a clapper on your camera, then use a composition tool to measure the offset between the audio graph and the video frame (up to ± ½ camera frame period, inevitably). Now you’ve got a calibrated camera.

Then either play back that same video and try to sync it (theoretically possible, but to me everything starts to sound the same after a couple of tries) or record one of the sync videos above playing on your screen (easier, but you get an additional error of about ± ½ screen frame period or so).

If you do have random wobble, do this multiple time and average the results.

But I expect this is less useful than it may seem, because while there probably is wobble, it’s probably less random and more dependent on frame complexity, ambient CPU and I/O load, throttling changes due to switching between wall and battery power and other such difficult-to-measure things. So a more complex video on battery could always have a different A-V delay than a simpler one on wall power. And any mechanism on the system that can compensate for that is also perfectly capable of compensating for a simpler constant delay as well.

Thus, possible but not very useful.

You may login with either your assigned username or your e-mail address.
Passwords are case-sensitive - Forgot your password?
randomness