Touching up a video with Cinelerra
I found myself with a problem: trying to linearly edit a movie clip with a non-linear editor isn't very simple, nor is it meant to be.
Case at hand: I have about 1 hour and 40 minutes of film material that was recorded with dvswitch, and which is 90% fine; but given what we wish to do with it, we really wish to remove the errors from the recording—things like failed transitions, rogue camera movements, and so on. This is why we recorded the individual video streams on tape too, so that we could indeed do some retouching afterwards.
Cinelerra, however, is not really made for that. If you want to create a transition, you need to have two segments of clips that are stuck together on the timeline, and the transition is then applied to the border between the two. You can create multiple video tracks, but you cannot cut from one track to another; you really have to add a clip to the timeline. Doing that has obvious issues if you have multiple video streams that were recorded on the same time and that can be time-synced on multiple tracks. You would prefer to just select one track or the other on a certain point in time, but cinelerra just doesn't do that.
So the workflow that I found is the following:
Add all video streams to the time line, each on a separate track. Make sure the to-be-touched-up stream is on top; when multiple tracks are in use, and the are not faded to 50% or so, cinelerra will only show the top stream in the final rendition.
Synchronize the streams: first, create a rough alignment by moving them with the mouse. Then, press arrow-down until you can see the streams on a frame-by-frame basis. Now for each of your camera streams, do the following:
- In the 'main' stream, search a section that was filmed by the camera which we are trying to align.
- Hit 'l' to create a label
- Search for the exact same frame in the camera stream. It may help to disable playback for the 'main' stream temporarily to visually verify that the frame is the same in the compositor window.
- Move the cursor to that frame, and create another label.
- If the streams are indeed desynced, then one of the tracks will lead, and the other will follow. If the leading track is the 'main' track, arm the main track and any tracks that you have already synced before, and make sure to remember the audio tracks. If, on the other hand, this is the camera track, then only arm that camera track. At any rate, make sure to disarm the track(s) that are following.
- Use the control and arrow keys to select the first label. Use control, shift, and the arrow keys to select the section up to the second label.
- At the bottom right of the program window, you can see three entry boxes with time indexes. The first is the time index to your first label; the third the time index to your second label; an in between those, the second is the length of the interval from the first label to the second label. Set the contents of the first box to all-zeroes, to move the selection to the beginning of the time line; then press tab (to move to the second entry box) and enter (to confirm that you wish to create a selection of that length at the beginning of the timeline).
- Press Shift-Space to insert silence at the location of the selection. This will move the armed tracks to the right, and not touch the not armed tracks.
- If you did everything right, the two tracks should now be aligned. Move the cursor to the second label, and verify that this is true by disabling 'play' for the main track and any tracks in between the main track and the track you're syncing. The frame in the compositor window should not change if you re-enable the main track. If it does, use 'z' for undo, remove your labels and try again.
Once your video tracks are aligned, you need one final video track that comes all the way on top. This is an empty, 'override' track. Anything you put in this track will override the main track. This way, you do not have to cut from the main track to another camera; instead, you just copy from a camera track and paste on the override track.
It is, of course, possible to paste onto the main track, but that has the disadvantage that you cannot easily undo such edits after a 'save' operation. Using a separate 'override' track does allow that.
To copy from one track to another track without moving in time, use the following method:
- Select the region where you wish to select another camera.
- Arm the camera track that you wish to copy from, and make sure not to arm any other track.
- Hit 'c' to copy the clip at that point.
- Disarm the camera track, and arm the 'override' track
- Without moving or removing the selection, hit 'v' to paste onto the override track.
All this may be basic knowledge for people who are more flexed in nonlinear editors than me; but I couldn't find this procedure on the Internet, so I thought I'd put it out there so that the next person who tries this doesn't have to try for days on end to come up with this, as I had to do.
Thanks for the tutorial. The first part of the tutorial consist in syncing up all the recorded tracks. The "override" track is the key of the method (second part of the tutorial)... if I understand well.
I was interested by your article because I was figuring out these days how a software that can manage several media sources for live editing job can be arduous to think. (GUI part I mean; I'm not a coder). dvswitch is a good start but is still too simple. examples: using an audio source B on a video source A, playing archived audio/video sources, rewind recorded archive in background to play it in slowmotion in foreground (sports shows), doing effects and transitions, etc etc ... all that done in live.
Syncing could be done easily if: - all recorded media could be recorded on a single server, - a software could note the date (an official time) that the show begin and add a mark on a timeline for each camera when activated according to the first date.
I suggest you to submit this how-to (or a link to it) to the cinelerra mailing list (http://www.cinelerra.org/mailinglists.php). Maybe it can help readers there.
regards
This will work, but has one major downside: it increases the time required for rendering by an order of magnitude.
When you have multiple tracks and all of them have playback enabled, cinelerra needs to evaluate and/or compute every frame. If you only have two tracks with playback enabled, one of which has silence for most of the track, then for the parts where this is true, cinelerra can just copy frames from one file into the rendered file. This is much faster -- unless, of course, you also need to do transcoding.