[FFmpeg-user] What video formats to support?

Dotan Cohen dotancohen at gmail.com
Wed Jun 1 13:39:00 CEST 2011


On Wed, Jun 1, 2011 at 14:15, Andrew Berg <bahamutzero8825 at gmail.com> wrote:
> On 2011.06.01 05:50 AM, Dotan Cohen wrote:
>> Let me see if I understand correctly: to play this file:
>> $ ffmpeg -i file.avi
>> Stream #0.0: Video: mpeg4
>> The player must support the avi container and the mpeg4 codec.
>> However, their are multiple implementations of the mpeg4 codec, and
>> the implementation is not specified here. So to ensure compatibility
>> the player should support all common implementations of mpeg4, two of
>> which are DivX and Xvid.
>>
> Yes. All (working) encoders conform to the standard. Decoders are
> supposed to support all parts of a standard, though this isn't always
> the case (decoder developers may not bother to implement certain things
> if popular encoders don't use them). In general, if a player supports a
> certain standard, it supports all (common) implementations.
>

The problem is that some players on Ebay say that they support MPEG4,
but mention that they don't support h264. That seems to contract the
statement that supporting a codec means supporting all implementations
of the codec. Is there a fine manual that I should be reading to
explain all this?


>> Futhermore, there exists differing mpeg4 "parts" which require codecs
>> different to the ones mentioned above.
> Two parts are video compression standards (MPEG-4 video and AVC), one is
> an audio compression standard (AAC), one is the container standard, one
> is a subtitle standard, and I forget what the others are. The parts are
> simply the formal names for the standards. For example, MPEG-4 Part 10
> is another name for AVC, which is another name for H.264. I didn't mean
> to confuse you; I only wanted to point out that "mpeg4" does not mean
> AVC/H.264. The only name for that standard that couldn't be confused
> with AVC is "MPEG-4 Part 2".
>

Then h264 isn't a codec? Wikipedia implies that it is:
http://en.wikipedia.org/wiki/H264

>> If I understand correctly, if a machine states that it supports:
>> M/RMVB, MKV, MOV, FLV, H.264, VOB, AVC, AVI, DIVX, HDMOV DAT, PMP,
>> mp4, MPEG1/2/4
>> Then that is a mix of container formats, codecs, implementations, and parts?
> Codecs and implementations are the same thing, but yes, that is a mix.
> It can be confusing, but the idea is to drop a word that someone is
> familiar with.

I see.

-- 
Dotan Cohen

http://gibberish.co.il
http://what-is-what.com


More information about the ffmpeg-user mailing list