[FFmpeg-devel] [PATCH 1/3] lavf/riffenc: Improve spec compliance

Mats Peterson matsp888 at yahoo.com
Fri Mar 11 05:17:18 CET 2016


On 03/11/2016 05:10 AM, Mats Peterson wrote:
> Forget patch 2/3 and 3/3 from the old patch set.
>
>  From the Microsoft documentation for BITMAPINFOHEADER at
> https://msdn.microsoft.com/en-us/library/windows/desktop/dd318229%28v=vs.85%29.aspx:
>
>
> "biSize: Specifies the number of bytes required by the structure. This
> value does not include the size of the color table or the size of the
> color masks, if they are appended to the end of structure."
>
> So, biSize is always 40. Also, Windows Media Player won't detect video
> encoded with Microsoft Video 1 in 8 bpp mode if this value is anything
> else than 40. I don't know about other codecs, they probably work.
> Anyway, we should stick with the specs, and not include the palette size
> in that field.
>
> Regarding the biClrUsed field, I'm setting it to 1 <<
> bits_per_coded_sample if palettized video, since setting it to 0 is
> another case where it won't work with Windows Media Player and Microsoft
> Video 1 in 8 bpp mode.
>
> Mats
>
>
>

Once, again, HuffYUV has its own variant of BITMAPINFOHEADER that *does* 
include the size of the Huffman tables in biSize. That's the only 
exception as far as I know.

Mats



More information about the ffmpeg-devel mailing list