On 03/11/2016 10:44 AM, Mats Peterson wrote:
On 03/11/2016 10:07 AM, Mats Peterson wrote:
Hendrik Leppkes <h.lepp...@gmail.com> skrev: (11 mars 2016 09:18:43 CET)
On Fri, Mar 11, 2016 at 5:10 AM, Mats Peterson
<matsp888-at-yahoo....@ffmpeg.org> wrote:

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.


This is not "spec compliance" then, because the spec specifically says
that when its 0, it should be assumed equal to 2^biBitCount, which is
the same value you are explicitly writing now.
Its a redundant value to work around the inability of some players,
not spec compliance - the existing value is perfectly compliant.
Please clarify as much in any potential commit message.

- Hendrik
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

I know all that, Hendrik, but the fact is Windows Media Player will
not interpret 0 as 256 either for Microsoft Video 1 (CRAM) or RLE4/8.
And the way I interpret the specs is that using 0 is only relevant to
raw, uncompressed video.

Mats


Correction: Windows Media Player *does* interpret 0 as 1 << bits per
sample, but using 0 will fail when there are 'xxpc' palette change
chunks in the file, for some reason. We might as well use 1 << bits per
sample in that field for palettized video to make it fool-proof.


For reference, here are two short AVI clips with xxpc chunks, the first one with 256, the second one with 0 in biClrUsed.

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

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

Mats

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to