[FFmpeg-devel] [PATCH v9] lavc/rawdec: Remove monowhite switching code for 1 bpp AVI without a palette

Mats Peterson matsp888 at yahoo.com
Sat Feb 13 12:50:12 CET 2016


On 02/13/2016 12:31 PM, Michael Niedermayer wrote:
> On Sat, Feb 13, 2016 at 11:44:04AM +0100, Mats Peterson wrote:
>> On 02/13/2016 11:40 AM, Mats Peterson wrote:
>>> On 02/13/2016 11:39 AM, Paul B Mahol wrote:
>>>> On 2/13/16, Mats Peterson <matsp888-at-yahoo.com at ffmpeg.org> wrote:
>>>>> On 02/13/2016 11:28 AM, Mats Peterson wrote:
>>>>>>>> Once again, how are we supposed to know how many colors the palette
>>>>>>>> consists of at the end of avpkt->data?
>>>>>>>
>>>>>>> palette size = packet size - width*height
>>>>>>>
>>>>>>
>>>>>> Nope. You have to take the stride in account as well, not just the
>>>>>> width
>>>>>> and height, and it varies in nut, depending on whether you use "-vcodec
>>>>>> copy" or "-vcodec rawvideo".
>>>>>>
>>>>>> Mats
>>>>>>
>>>>>
>>>>> And you'll have to calculate the stride by subtracting the palette size
>>>> >from the packet size, then divide by the height.
>>>>
>>>> Nope, pixels outside of width x height are ignored.
>>>> _______________________________________________
>>>
>>> I need the stride for the alignment to 16 bytes. It's not done for fun.
>>>
>>> Mats
>>>
>>
>> And pixels outside of the width are still in the packet, that's
>> what's called the stride.
>
> just double checked, this is not the case in written pal8 nut files
> nor does the nut spec say anything about that.
>

Then check an odd-width nut file like the one below. And FFmpeg doesn't 
care about specs when using "-vcodec copy". The stride will be the one 
of the original data, whether it's 2, 4 or some other amount of bytes.

https://drive.google.com/open?id=0B3_pEBoLs0fadkJqREhtOU5lT1E

Mats



More information about the ffmpeg-devel mailing list