6
$\begingroup$

I'm composing a 2D video from two different sources, with the final product being at 30 FPS.

One of the sources was recorded at true 30 FPS, and the video & audio streams have the same number of frames when I add the Movie/Sound strips.

The other source, however, is slightly off: the audio came in at 14,726 frames and the video 14,876 frames.

So I added a Speed Control effect attached to the video strip, and set the speed factor to 1.010 (14,876/14,726). When I preview the video in Blender, the audio and video are synced up perfectly and the video looks just like the source.

The problem is that when I render the video, it ends up containing visual artifacts like jitteryness and sometimes even speedups and repeats that aren't synchronized with the audio (sorry, this is hard to describe in words). The audio track itself is fine. I thought it might be a problem with the output format, so I tried a few different ones, and found this happens even if I render to a set of images (I simulated playback using Windows Photo Gallery).

The artifacts disappear if I remove the Speed Control effect, but of course, the video & audio are no longer in sync.

Am I doing something wrong here (I'm new to Blender)? Is there any alternate method to accomplish this? I need something that works reliably and efficiently as this isn't a one-time-only project.

(I also found there appears to be issues doing soft cutting with the Speed Control effect -- I may be misunderstanding how to do that -- so my goal at this point is to first convert the entire video source on its own, and then do all the cutting in the final step.)

I'm using Blender 2.68a. I tried using the latest dev build from today (same result), and also 2.57b, which not only had the rendering problem, but also didn't look right in the preview. I'm running Windows 7 x64. Here's the .blend file I'm using.

Here are sample renderings of part of the video: from 2.68a and from 2.57b (each file is ~4.5 MB) -- sorry I can't upload the source as the file is over a gig, but it should be obvious from those videos what's supposed to be happening (listen to the mouse clicks). Before someone asks, yes, this also happens when I render the full video (in fact, that's how I discovered it in the first place). I was able to reproduce problems in short sample clips as well, though not as severe as those two examples.

$\endgroup$
  • $\begingroup$ Welcome to Blender.SE! Your issue appears to be a duplicate of Can I import multiple strips of different fps into Video Sequence Editor? $\endgroup$ – Aldrik Sep 2 '13 at 0:12
  • $\begingroup$ @Aldrik: The Speed Control effect appears to solve the difference-in-FPS problem (at least in the preview) -- I'm asking about the rendering output. $\endgroup$ – Jon Seigel Sep 2 '13 at 0:24
  • $\begingroup$ I am not seeing anything that is out of the ordinary in the videos you uploaded. Can you try the 'Refresh Sequencer' button on the bottom of the sequencer? In older versions, cached frames affects the render. $\endgroup$ – Mike Pan Sep 2 '13 at 21:22
  • $\begingroup$ @Mike: I just tried that; no effect. About not seeing the issues in the renderings (the 2.57b one is worse, btw) -- in the dialog on the right, I click the Connect button once, and then on the left side, I click Connect, then Cancel. Do the dialogs not reflect those actions? I can repro this in both Media Player and VLC so I'm pretty sure it's not a player issue (and that section of the raw video plays fine in both as well). $\endgroup$ – Jon Seigel Sep 3 '13 at 2:27
  • $\begingroup$ @JonSeigel A screencast just might not be the best showcase for this problem but I see what you mean now. I tried to reproduce the problem but can't. Can you upload the sequencer blender file without the video? $\endgroup$ – Mike Pan Sep 3 '13 at 18:40
2
$\begingroup$

You are experiencing decompression problems with your source video. Try generating proxy timecode (the proxy vision file not required), or convert the file to a less heavily compressed format.

$\endgroup$
  • $\begingroup$ Can you confirm how to do this? In the strip properties, I put a checkmark beside "Proxy/Timecode", then changed the Timecode setting from "No TC in use" to one of the other settings. If that's correct, this had no effect whatsoever, and I tried all of the different Timecode settings. $\endgroup$ – Jon Seigel Sep 6 '13 at 22:23
  • $\begingroup$ You need to set a timecode value even if it's just freerun. $\endgroup$ – David Mcsween Nov 17 '13 at 9:39
0
$\begingroup$

I tried using Lightworks to do this, and it worked perfectly on my source material.

Therefore, I'm concluding this issue is due to one or more bugs in Blender, and has nothing to do with file decompression.

I found there are a few Blender developers on this Stack Exchange site, so if this issue is ever fixed, please let me know as it will simplify my workflow.

Edit: What I actually did was redo the video and voiced-over the audio again so I didn't have to reduce the speed of the video. When I rendered the final video, it ended up having artifacts, too. So I think the final word may be that it's still a bug in Blender reading or rendering the video, but I don't think it's necessarily related to the Speed Control Effect.

$\endgroup$
  • $\begingroup$ You may want to consider reporting this to the tracker, see this $\endgroup$ – gandalf3 Sep 15 '13 at 20:07

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.