[FFmpeg-devel] [PATCH 10/13] Add rawvideo pixel formats to codec tags mapping for the newly added nut rawvideo pixel formats codec tags.

Michael Niedermayer michaelni
Tue May 18 21:35:22 CEST 2010


On Tue, May 18, 2010 at 09:23:56PM +0200, Stefano Sabatini wrote:
> On date Tuesday 2010-05-18 17:37:21 +0200, Michael Niedermayer encoded:
> > On Tue, May 18, 2010 at 12:22:53AM +0200, Stefano Sabatini wrote:
> > > On date Monday 2010-05-17 01:10:03 +0200, Michael Niedermayer encoded:
> [...]
> > > > all these fall under the same kind
> > > > the information to store for them is
> > > > 8bit/16LE/16BE
> > > > the 2 chroma subsample factors (special values for no chroma seem to fit in too)
> > > > something to indicate alpha
> > > 
> > > gray16le    ->Y[00][16]L
> > > gray16be    ->Y[00][16]B
> > > yuv420p16le ->Y[20][16]L
> > > yuv420p16be ->Y[20][16]B
> > > yuv422p16le ->Y[22][16]L
> > > yuv422p16be ->Y[22][16]B
> > > yuv444p16le ->Y[44][16]L
> > > yuv444p16be ->Y[44][16]B
> > > yuva420p    ->Y[00][8]A
> > > y400a       ->Y[00][8]A
> > 
> > fails for 16bit + alpha
> > 
> > 
> > > 
> > > Second scheme:
> > > gray16le    ->Y3[00][16]
> > > gray16be    ->Y3[00][61]
> > > yuv420p16le ->Y3[20][16]
> > > yuv420p16be ->Y3[20][61]
> > > yuv422p16le ->Y3[22][16]
> > > yuv422p16be ->Y3[22][61]
> > > yuv444p16le ->Y3[44][16]
> > > yuv444p16be ->Y3[44][61]
> > > yuva420p    ->Y4[20][ 8]
> > > y400a       ->Y4[00][ 8]
> > 
> > totally wrong, we need the 2 subsample factors not random
> > numbers
> > and it should not be mixed by 10*a+b but some power of 2
> > and the way be/le is indicated should be the same as is used for rgb and
> > in the mov container
> 
> Y1 = only Y
> Y3 = YUV
> Y4 = YUVA
> YA = Y+A

the number of planes is fine no need to complicate it beyond that


> 
> The third byte contains the log_2_chroma_w/h values for UV.
> The fourth byte is the number of bits used (8, 16, ...).
> 
> If the order of bytes is inverted, that means that each component has
> to be read big-endian.
> 
> gray16le    ->Y1[00][16]
> gray16be    ->[16][00]1Y
> yuv420p16le ->Y3[11][16]
> yuv420p16be ->[16][11]3Y
> yuv422p16le ->Y3[10][16]
> yuv422p16be ->[16][10]3Y
> yuv444p16le ->Y3[00][16]
> yuv444p16be ->[16][00]3Y
> yuva420p    ->Y4[11][ 8]
> y400a       ->YA[00][ 8]

i think this is close to be ok
id like to wait a day or 2 for commensts and maybe you could post a patch to
nut-devel which is the right place for it

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

It is dangerous to be right in matters on which the established authorities
are wrong. -- Voltaire
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100518/ffd357eb/attachment.pgp>



More information about the ffmpeg-devel mailing list