Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
Photo JPEG vs Motion JPEG A vs Motion JPEG B
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Photo JPEG vs Motion JPEG A vs Motion JPEG B

Francesco Schiavon <email@hidden>
> I hate asking this question as I have the technical answer, but don't
> know how it applies to real life situations, but:
> Why do you recommend MJPEG-A opposite to B?

1. If you're compressing non-interlaced content, use Photo JPEG.

2. If you have a hardware motion JPEG capture product, use it -- it should
capture in either Motion JPEG A or Motion JPEG B, depending on which chipset
it uses.  So the decision's made for you.

3. If you're compressing in software and expecting to play back using a
hardware motion JPEG playback product, compress using the Motion JPEG
variant that that product prefers -- again, which depends on the chipset.
You may get better playback performance this way, because you'll avoid the
need for A->B transcoding at run-time.

4. If you're compressing interlaced content in software in the abscence of
any hardware or expected hardware, then you're running low on technical
reasons to choose between them, so you should choose Motion JPEG A because I
told you to.

> I know Motion JPEG A uses markers and Motion JPEG B does not use markers.
> Maybe Sam wants to kill me now for asking _again_. :)

Not at all.  I understand that it seems puzzling that there should need to
be two Motion JPEG variants.

The reason is that different JPEG chipset designers made different decisions
about how much of the standard they'd implement in their hardware -- some
decided to allow markers, some didn't.  Perhaps the hardware designers who
decided to avoid markers expected them to be dealt with by the driver
software, but the driver software engineers didn't because it'd be less

Early hardware motion JPEG cards couldn't exchange content.  Each had its
own proprietary header layout -- and then some used JPEG markers in the
bitstream and some did not.

Apple defined the Motion JPEG A and Motion JPEG B formats to promote
interoperability between these hardware products.  Both have an agreed
header layout and data interpretation.  JPEG hardware vendors agreed to
modify their software drivers to support either Motion JPEG A or B
(whichever was appropriate for the chipset in their hardware).  Apple
shipped software codecs for both formats and also image transcoder
components which convert between Motion JPEG A and B without loss.

Sam Bushell
QuickTime Engineering

Visit the Apple Store online or at retail locations.

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.