Skip to content

Instantly share code, notes, and snippets.

@mattsta
Created January 21, 2012 09:06
Show Gist options
  • Save mattsta/1652084 to your computer and use it in GitHub Desktop.
Save mattsta/1652084 to your computer and use it in GitHub Desktop.
My frigging HDV->FCP->Motion->Internet workflow

How to HDV->FCP X->Motion 5->Internet

Importing

First, import your video: dvgrab -rewind -f mpeg2/hdv -showstatus -a timestamp

Next, convert your hdv mpeg2 stream to a mov container so Final Cut Pro can import it: ffmpeg -i timestamp001.m2t -vcodec copy -acodec copy -f mov timestamp001.mov

FCP X is buggy, so we need to export the audio from our movie individually: ffmpeg -i timestamp001.m2t timestamp001.aiff

Fixing Audio In FCP X

Import your mov in FCP X, open the clip in the timeline, delete the audio, attach your aiff audio instead of the original audio (if you don't replace the audio FCP X will crackle and pop audio when you export). Re-combine your audio and video into a Compound Clip.

General Workings

Edit, cut, blade, transition, re-order, export video.

On your exported timeline from FCP, extract its audio like we did for the original camcorder footage: ffmpeg -i exported.mov exported.aiff

Editing in Motion

(I'm assuming you aren't manipulating audio in motion.)

Edit, add effects, keyframe your animations, export.

When you export from Motion, it will re-corrupt your audio from FCP X. This sucks. What we have to do is export from Motion, remove the audio, then add our exported audio from FCP (exported.aiff above).

We don't want to re-encode the video, so we use the ffmpeg copy codec while attaching the exported audio to our rendered Motion composition: ffmpeg -i exported.aiff -i exported-from-motion.mov -vcodec copy -f mov exported-from-motion-with-proper-audio.mov

Conclusion

Whew. Now we're done. Upload your exported-from-motion-with-proper-audio.mov everywhere for the world to see. Also, stop using HDV tape. Maybe a nice Canon Vixia G10 would be better than your four year old Canon HV20.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment