I have finally figured out a way to process my raw Canon XF100 video files into Apple ProRes. I'm not satisfied with Final Cut Pro's log-and-transfer function, because that seems to require the footage to be transfered directly from the camera/card. I want to hold on to the original MXF files and be able to process them at my leisure.
It turns out that while
ffmpeg is able to decode the MXF files, it isn't able to encode to ProRes. And while
qt_export is able to encode to ProRes, but can not decode the MXF. We could save an intermediate fully uncompressed, but that will make the footage take up 20 times as much space.
Instead, we need to convert to an intermediate which is completely lossless (i.e. we do not want to transcode the MPEG2 video contained within the MXF) and that both tools can work with. For some reason that I am not adept enough to understand we need to do this in an AVI container, not MOV.
The commands I have been using look roughly like:
ffmpeg -i input.MXF -vtag mpg2 -vcodec copy -acodec copy temp.avi qt_export --video=apcn --audio=alac temp.avi output.mov rm temp.avi
Ideally I would like to pipe this through a fifo (or similar), but I don't think that
ffmpeg can write the AVI format to a file it can not seek in.