[FFmpeg-devel] lpcm in mov default to big endian

Mark Himsley mark at mdsh.com
Fri Nov 1 16:48:27 CET 2013


On 01/11/13 14:18, Paul B Mahol wrote:
> On 11/1/13, Mark Himsley <mark at mdsh.com> wrote:
>> It is my understanding that "Unless otherwise stated, all data in a
>> QuickTime movie is stored in big-endian byte ordering" [1] in MOV files.
>>
>> I have a couple of thousand files, which technically are invalid because
>> their sound sample description element 4CC is 'lpcm' but its version is
>> 0 - and "Version 0 supports only uncompressed audio in raw ('raw ') or
>> twos-complement ('twos') format" [2]
>>
>> Because isom.c only contains a mapping for 4CC 'lpcm' to
>> AV_CODEC_ID_PCM_S16LE, these files have their audio decoded as LE when
>> it is actually BE.
>>
>> Attached patch adds AV_CODEC_ID_PCM_S16BE as the first match for 4CC
>> 'lpcm'.
>>
>> This is not tested for regressions in fate, but makes 4CC 'lpcm' match
>> many other 4CCs in isom.c, and makes my files decode correctly.
>>
>> Please comment.
>
> I guess le variant would then be mcpl.

That's not how in32, in24, fl32, fl64 [...] are defined for LE.


>> [1]
>> https://developer.apple.com/library/mac/documentation/quicktime/QTFF/qtff.pdf
>>
>> page 21
>> [2]
>> https://developer.apple.com/library/mac/documentation/quicktime/QTFF/qtff.pdf
>>
>> page 178
>>
>> --
>> Mark

-- 
Mark



More information about the ffmpeg-devel mailing list