Somehow I forgot to post about this bug I found in iMovie in December. Basically, if you import from camera iMovie lowers the quality of the movie. But if you choose “Import Movies…” it works as expected.
So I just got a reply from Apple (I entered it as a bug in the developer bug tracker). Their reply was that my camera, a Sanyo Xacti HD700, is not supported.
The funny thing, is that when looking for this camera I was specifically looking for one that had support for Mac.
Oh well, at least I have an easy workaround.
Here are the details I sent Apple:
Summary:
When I import from my Sanyo Xacti HD700 using “Import from Camera…” the import quality has significant blocking / compression artifacts. However, if I copy the same file off the SD card from the camera and play it back in QTplayer it does not have this same blocking / compression artifacts.
The file is a .MP4 container using H.264 codec for video and AAC for audio. The resolution is 1280x720p and framerate 30fps.
After spending a significant portion of time messing around with iMovie 08 trying to get it to import without the quality loss I have discovered that “Import from Camera…” and “Import Movies…” have different behavior (in terms of video quality) on the SAME FILE.
Steps to reproduce:
1) Record a video with Sanyo Xacti HD700 camera. (One with a nice color gradient is good because it will make the compression artifacts more obvious).
2) Import the video from the camera using “Import from Camera…” (Name the event “Import from Camera” so you can remember which is which)
3) Copy the .MP4 file from the mounted drive onto your local harddrive. (Not sure if this step is actually necessary, but haven’t tried without)
4) Import the video from the .MP4 on your desktop using “Import Movies…” (Name the event “Import Movies”) Notice that this completes much quicker than step 2.
5) Find the two imported movies in your “iMovie Events” folder. You will notice that both movies are different sizes when you would expect them to be identical. (In my case the movie from “Import from Camera” was 47.4MB while the movie from “import movies” was 33.1MB, and the file on the SD card was 33.1 MB)
6) At this point you will also notice that the movie imported from camera will have a custom name like clip-2007-12-26 14;41;44.mov while the movie from “import movies” will have the same filename as it did on the camera i.e SANY0025.MP4.
7) Now open both files in QTplayer and arrange them side by side showing the same frame. You will see that the quality is much worse in the file from “Import from Camera”.
Expected results:
I expect that the quality of the imported file would be identical, regardless of whether I use “Import from camera…” or “Import Movies…” when I am importing from the same file.
Actual results:
The quality of the imported file is degraded when using “Import from camera…”
Hypothesis (i.e. the part that will make the Software Engineers laugh
:
My guess is that when you select “Import from Camera” it does some transcoding on these files that it doesn’t do when you select “Import Movies”. (Maybe Import from Camera always transcodes, whereas Import Movies checks to see if it needs to transcode or not?) I believe this because it takes significantly longer using the “Import from Camera” during which time it would appear to be performing some type of transformation on the movie. Also, because the file name in the folder is different.
I believe that either this transcoding is flawed or of poor quality which leads to the poor quality video when importing.
Work around:
Use “Import Movies…” instead of “Import from Camera…”
Here is a thread which contains a screengrab of the two movies side by side in QTplayer on the same frame. The one on the left was imported with “Import from Camera” and the one on the right with “Import Movies”. Look at the right side of the yellow playset and also at the hair. In motion it looks quite bad.
http://discussions.apple.com/thread.jspa?threadID=1313567&tstart=0