newsgroups-index (beta)

Current group: comp.compression

Motion JPEG2000 chroma subsampling question.

Motion JPEG2000 chroma subsampling question.  
Pete Fraser
 Re: Motion JPEG2000 chroma subsampling question.  
Thomas Richter
 Re: Motion JPEG2000 chroma subsampling question.  
Pete Fraser
 Re: Motion JPEG2000 chroma subsampling question.  
Thomas Richter
From:Pete Fraser
Subject:Motion JPEG2000 chroma subsampling question.
Date:Wed, 12 Jan 2005 10:20:38 -0800
I'm generating .mj2 sequences with YUV 4:4:4.
I'm playing them with WMP with the Morgan plugin.

The sequences are generated either by Kakadu kdu_v_compress
or by my hardware.

The Kakadu sequences are displayed correctly.
The hardware sequences are displayed with the chrominance
zoomed by a factor of two. I can fix this by having my hardware
insert a 'jsub' box in the 'stsd' box to explicitly state that there
is no chroma subsampling. However, Kakadu does not need
the 'jsub'.

The individual frames in both the Kakadu and hardware
sequences have all three XRsiz and YRsiz fields of
the SIZ markers set to 01.

Clearly there's something in my hardware files that suggests
the chrominance has been sunsampled, but I don't know what.

Any ideas?

Thanks

Pete
From:Thomas Richter
Subject:Re: Motion JPEG2000 chroma subsampling question.
Date:13 Jan 2005 09:36:02 GMT
Hi Pete,

> I'm generating .mj2 sequences with YUV 4:4:4.
> I'm playing them with WMP with the Morgan plugin.

> The sequences are generated either by Kakadu kdu_v_compress
> or by my hardware.

> The Kakadu sequences are displayed correctly.
> The hardware sequences are displayed with the chrominance
> zoomed by a factor of two. I can fix this by having my hardware
> insert a 'jsub' box in the 'stsd' box to explicitly state that there
> is no chroma subsampling. However, Kakadu does not need
> the 'jsub'.

> The individual frames in both the Kakadu and hardware
> sequences have all three XRsiz and YRsiz fields of
> the SIZ markers set to 01.

> Clearly there's something in my hardware files that suggests
> the chrominance has been sunsampled, but I don't know what.

> Any ideas?

Not without looking at the streams, I afraid. You might want
to check the following:

Are the components (YUV) all encoded in one codestream per frame?
Or are they using multi-codestream files with additional expansion
factors in a codestream-registration box (this is a fileformat
thing, not a codestream thing)? Does this also happen in case you
extract the raw codestream of one frame and display this? Which
viewer do you use to check for the result?

So long,
Thomas
From:Pete Fraser
Subject:Re: Motion JPEG2000 chroma subsampling question.
Date:Thu, 13 Jan 2005 09:10:46 -0800
Thanks Thomas

>
> Not without looking at the streams, I afraid. You might want
> to check the following:
>
> Are the components (YUV) all encoded in one codestream per frame?

Yes. I'm taking the Y, U and V codestreams, multiplexing
them into one j2c codestream with three tile parts, and wrapping
the whole thing in a jp2c box.

A representative SIZ would be:

FF 51
00 2F
00 00
00 00 04 00
00 00 03 00
00 00 00 00
00 00 00 00
00 00 04 00
00 00 03 00
00 00 00 00
00 00 00 00
00 03
07 01 01
07 01 01
07 01 01

> Or are they using multi-codestream files with additional expansion
> factors in a codestream-registration box (this is a fileformat
> thing, not a codestream thing)? Does this also happen in case you
> extract the raw codestream of one frame and display this?

No. It displays fine.

> Which viewer do you use to check for the result?

kdu_4.3

Thanks for your help.

Pete
From:Thomas Richter
Subject:Re: Motion JPEG2000 chroma subsampling question.
Date:14 Jan 2005 09:08:27 GMT
Hi Pete,

>> Are the components (YUV) all encoded in one codestream per frame?

> Yes. I'm taking the Y, U and V codestreams, multiplexing
> them into one j2c codestream with three tile parts, and wrapping
> the whole thing in a jp2c box.

> A representative SIZ would be:

/* snip */

The SIZ is fine and describes 8bpp 1x1 subsampled images indeed. So
the problem is not here. Did you try a second codec? What might
be happening here is that your hardware specifically describes the
data as YUV encoded somewhere, and outsmarts Kakadu which then tries
to upsample a typically subsampled YUV image.

>> Or are they using multi-codestream files with additional expansion
>> factors in a codestream-registration box (this is a fileformat
>> thing, not a codestream thing)? Does this also happen in case you
>> extract the raw codestream of one frame and display this?

> No. It displays fine.

I see. So a file format thingy.

>> Which viewer do you use to check for the result?

> kdu_4.3

I would recommend to use a second JPEG2000 implementation to cross
check. For me it seems that this is some kind of "feature" in the
Kakadu expander that is outsmarted by something in the stream. The
codestream at least gives no indication on the upsampling, but there
might be other hints in the file format that might make the Kakadu
believe it should do this. That is, a list of all boxes and their
contents might come handy. Especially, I'd have a look whether the
color specification boxes look different (to try a shot into the
dark).

So long,
Thomas
   

Copyright © 2006 newsgroups-index   -   All rights reserved   -   Impressum