[FFmpeg-devel] [PATCH v5 1/4 v3] lavf/avienc: Add support for palette side data

Mats Peterson matsp888 at yahoo.com
Fri Mar 4 23:00:02 CET 2016

Mats Peterson <matsp888-at-yahoo.com at ffmpeg.org> skrev: (4 mars 2016 22:12:41 CET)
>On 03/04/2016 10:02 PM, Mats Peterson wrote:
>> On 03/04/2016 09:52 PM, Mats Peterson wrote:
>>> On 03/04/2016 08:44 PM, Michael Niedermayer wrote:
>>>> On Fri, Mar 04, 2016 at 11:59:11AM +0100, Mats Peterson wrote:
>>>>> On 03/04/2016 05:59 AM, Mats Peterson wrote:
>>>>>> Removed some unused variables in AVIStream.
>>>>> I would like to remind you of the fact that this patch (and the
>>>>> for riffenc.c) is needed for stream copying of Microsoft Video 1
>>>>> (CRAM) in 8-bit mode, Microsoft RLE4 and Microsoft RLE8. There are
>>>>> possibly more codecs using a palette, but these are the ones I can
>>>>> come up with at the moment.
>>>> i tried CRAM and MSRLE, but these already work when streamcopied
>>>> before, do you have a testcase that does not work
>>> It works, but only so much. On stream copy, it will only write the
>>> palette after BITMAPINFOHEADER to the destination file. It won't
>>> any xxpc palette switching chunks to the file.
>>> Mats
>> The xxpc chunks come as palette side data.
>> Mats
>Try ffmpeg -i 8bpp_129.avi -vcodec copy test.avi, with and without the 
>avienc.c and riffenc.c patch. The destination file will only contain 
>xxpc chunks with my patch applied.
>ffmpeg-devel mailing list
>ffmpeg-devel at ffmpeg.org

What's more, the whole idea with using a shared function for retrieval of the palette for a muxer was to enable a calling program to deliver it as side data, if desired.

Mats Peterson

More information about the ffmpeg-devel mailing list