21
$\begingroup$

I imported my video file and for some reason (even though the video is one frame smaller than the audio) the video and audio do not sync after being played back for a certain amount of time. If I were to click on the sequencer and place it at any point in time, the audio and video would start off in sync, but if I were to play it from that point the audio and video would gradually de-sync. Also, the video was recorded in OBS but it plays back well and in sync using VLC.

Here is information about the video file and more info about obs and the video file itself (it was just for testing purposes): https://mega.co.nz/#F!rRcSXCQT!fpjUOjGYzolRO-6zfZgpbA

The easiest way of understanding what I mean would be to listen for the sound of the clicks during the video then pause and start it mid way. You will then hear the video and audio re-sync and start off from where it should have but then gradually de-sync.

$\endgroup$
  • $\begingroup$ Also you can try this, for multiple strips with different frame rates. youtube.com/watch?v=3SpVpqsvqwM Makes video editing easy again with blender. $\endgroup$ – user29276 Aug 7 '16 at 18:10
29
$\begingroup$

If they start off in sync at any point when you start playing, and gradually goes out sync, it means you don't have AV Sync turned on in the timeline panel.

enter image description here

$\endgroup$
  • 1
    $\begingroup$ Yep ... that actually does seem to fix whats been happening. There still is the problem of the tracks not being the same length, but I think that deserves a 2nd question. $\endgroup$ – swiftsword94 Jan 14 '14 at 17:25
  • $\begingroup$ Did you adjust the frame rate after you imported the av track? That could cause problems. $\endgroup$ – Mike Pan Jan 14 '14 at 19:40
  • $\begingroup$ No that wasn't it :s $\endgroup$ – swiftsword94 Jan 14 '14 at 20:29
  • 2
    $\begingroup$ The reason why this helps is because on default, blender tries to display every single frame while playing. This means that if your FPS during the playing is even slightly lower than the original footage, the video will get delayed, while the audio continues at the same speed. AV-sync means that blender will skip a frame if the video gets behind on the audio, so it can keep up with it. $\endgroup$ – Ezra Jul 5 '15 at 20:56
10
$\begingroup$

In the VSE the video and audio tracks are separated and use different ways to measure length. Video is measured in frames while sound is in seconds.

Adjusting the frame rate of the video will alter the playback length of the video but the audio will always take the same amount of time to play.

As an example a short video at 24 fps needs 2763 frames to play.

enter image description here

By changing the frame rate to 25 fps the video remains at 2763 frames but the audio length extends to 2879 frames to maintain the same length in seconds. This will gradually put the audio out of sync with the video.

enter image description here

You need to make sure that the frame rate in the render settings matches the original frame rate of the video so that it's playback time matches the audio length.

$\endgroup$
  • $\begingroup$ If only it were that easy. They are both (the editor and the video) set to 60 fps. $\endgroup$ – swiftsword94 Jan 13 '14 at 14:21
  • $\begingroup$ It may be the case that the actual footage is not 60fps, but something like 59.94fps, etc. I stumbled upon this question with a footage that says '24fps' in the camera settings, but is actually '23.97fps' when I read metadata in a video player like Media Player Classic. In my case 'A/V sync' only improved it a bit, but it was still going out of sync after some 9 minutes. $\endgroup$ – hayavuk Sep 4 '14 at 20:02
  • $\begingroup$ @bvukelic And so what did you do to eventually fix it? $\endgroup$ – KhoPhi Jan 20 '15 at 14:51
  • $\begingroup$ @Rexford Sort of, by correcting the frame rate of the whole project (i.e., I'm not sure how you'd fix it if you wanted to keep the frame rate of the project) $\endgroup$ – hayavuk Jan 20 '15 at 18:37
  • 1
    $\begingroup$ @Rexford - audio is a time based medium, it has no record of frames. Video is frame based - it is a collection of frames to be played one after the other. Currently blender is only programmed to play the frames in the video based on the render settings. I think this decision would have been the easiest programming solution when it was created, I believe the VSE was created more as a small convenience rather than considering the best way to handle all video editing needs. $\endgroup$ – sambler Jan 21 '15 at 13:10
2
$\begingroup$

I had a lot of difficulty with a similar problem. In particular I had 2 video sources which I recorded with quicktime that had different frame rates. The first one would be synced with the audio but the second one would inevitably not be synced up. I tried various combinations of custom frame rates and frame rate bases but nothing seemed to help. Worse was sometimes the video seemed to by synced with the audio but when I rendered it several hours later I would find it not to be.

What I ended up doing was using a transcoder (http://handbrake.fr/ cross platform mac/windows/ubuntu linux and free) to adjust the frame rates of both video sources to a standard 29.97. This was friendlier to blender and the problems all went away when I set the properties Frame Rate to 29.97 fps before importing to the Video Sequence Editor.

$\endgroup$
0
$\begingroup$

Here was the best solution I came across.

He just dragged out the end of the video snip by grabbing it then dragging, he added speed effect by selecting the strip and then going to Add > Effects Strip.. > Speed Control, then he made sure the box that says "Stretch to input strip length" in checked in the Speed Controls.

By doing this he was able to change the rendering to match the audio file even within a project that had a different FPS

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.