[x264-devel] Regarding disabling 4x4 in JM code

List, Peter Peter.List at t-systems.com
Wed Aug 8 10:05:09 CEST 2007


Dear Mahesh,

you should have read paragraph 7.4.5 more precisely. It somewhere says:

 

The macroblock types for P and SP slices are specified in Table 7‑13 and Table 7‑11. mb_type values 0 to 4 are specified in Table 7‑13 and mb_type values 5 to 30 are specified in Table 7‑11, indexed by subtracting 5 from the value of mb_type.

 

This should answer: 

mb_type should be 0 to 4 as in the table 7.13 Macroblock type values o to 4 for P and SP slices . So how can i check for mb_type 5.

 

---------------------

 

It seems you only have implemented a very rudimental version of H.264 yet. Don’t expect any encoder to obey these constraints. You will have to modify the JM-encoder code in a way that the Intra predictor function always returns a very high value so that it will never be choosen. 

 

This reflector is not the right place to discuss this though, since as far as I know, we are NOT talking about the JM here

Regards

Peter

 

 

On 8/7/07, List, Peter <Peter.List at t-systems.com <mailto:Peter.List at t-systems.com> > wrote:

 

________________________________

Von: mahesh k [mailto:maheswarreddy.k at gmail.com] 
Gesendet: Dienstag, 7. August 2007 14:24
An: Mailing list for x264 developers
Betreff: Re: [x264-devel] Regarding disabling 4x4 in JM code

 

Dear peter,
I am talking about decoder only. I will explain u my problem more clearly.

Right now our decoder works properly with our encoder. Now we need to make this decoder standardised in the sense that it should accept any other bitstream(for example i want to decode JM encoders output with my decoder). 

After reading the syntax elements as per baseline standard I need to check whether this is implemented or not in my decoder and return the error still needs to be implemented. the intent was that the code shouldnot crash in such situations instead return proper error code. 

Obviously you will need to decode the COMPLETE mb_type than. For values of '0' in Intra-frames and values of '5' in P-Frames and '23' in B-Frames you produce your error message. 

For I frames if it is o then  I will display error but for P frames (slices) thee mb_type should be 0 to 4 as in the table 7.13 Macroblock type values o to 4 for P and SP slices . So how can i check for mb_type 5. This is as per my knowledge IF i am wrong plz tell me. 


Also we didnot implement  macroblock partitions  plz tell me how to handle this situation in case of P frames. 


Also plz tell ma how I can generate the encoded bitstream through JM encoder code. So that I can test my decoder with this bitstream. I disabled 4x4 but then also its encoding intra4x4_prediction mode.
I understtod ur remaining answers clearly and I thank for that.

I went through the section that u told me. But my doubts were,
i dont understand what 0_0_0 signify in name of MB type. 

The 1. number in x_x_x  corresponds to column 5 of table 7-11 

The 2. number….                                       column  6

The 3. number                                             column 7

Search for the label-text of these table-columns to get their exact meaning 

 

Also in table 7.13 mb_types for P slices, what do we mean by inferred type.

Inferred means deduced. I simply says: if a macroblock does not appeare in the bitstream (because it is skipped due to 'mb_skip_run' it automatically has the type P_Skip and is 16x16 ….


Also tell me can we idetify the prediction mode from mb_type itself? 
Yes, every possible mode is part of the tables! Somewere in 7.4.5 you find the note that you have to add the I-Table at the bottom of the P and B tables, to signal Intra MB's in P and B-frames.  

 


thanks in advance,
mahesh.

On 8/7/07, List, Peter <Peter.List at t-systems.com> wrote: 

Dear Mahesh,

if you are talking about a DECODER intra 4x4 is a must, if you want to be standard conform in all cases (for any profile). 

If you are talking about  ENCODERS you don't need to implement intra-4x4 but only use intra-16x16 (resulting in very poor intra performance).

 

I don't understand what you mean with:

But we want to decode any standard bitstream that is as per standard but return the error code accordingly . 

About mb_type read in  "Recommendation H.264" (ISO/IEC 14496-10)  paragraph 7.4.5

 

Peter

 

________________________________

Von: mahesh k [mailto: maheswarreddy.k at gmail.com] 
Gesendet: Dienstag, 7. August 2007 11:22
An: Mailing list for x264 developers
Betreff: Re: [x264-devel] Regarding disabling 4x4 in JM code

 

thanks for ur reply. Plz tell me whether intra 4x4 is must in base line profile or it is an optional.
 Can't we run the baseline profile decoder without 4x4 as per standard?
I need this because at present we have not implemented this 4x4 mode But we want to decode any standard bitstream that is as per standard but return the error code accordingly . 
Also I am confused with the syntax element mb_type. 
What values does mb_type should have if i need to check whether this is an 4x4 or 16x16.
Also plz tell me in clear about this mb_type and ma_mde.
If possible refer some good document on this. 

Thanks in advance.

On 8/7/07, List, Peter <Peter.List at t-systems.com> wrote:


> mahesh k wrote:
> > I want a baseline ecoded bit stream in which intra4x4 predition mode
> > should not be present.
>
> Note (but you probably already know it): of course intra4x4 is part of 
> baseline.

Also note that intra4x4 is NOT some fancy add on for intra-coding like
some people think 4x4 motion estimation is.
Intra4x4 is the basic intra coding mode! It is usually used for the
majority of intra-macroblocks. Intra-16x16 is only used for very uniform 
macroblocks like blocks from a blue sky or something like that.
Regards, Peter
_______________________________________________
x264-devel mailing list
x264-devel at videolan.org 
http://mailman.videolan.org/listinfo/x264-devel

 


_______________________________________________
x264-devel mailing list
x264-devel at videolan.org
http://mailman.videolan.org/listinfo/x264-devel

 


_______________________________________________
x264-devel mailing list
x264-devel at videolan.org
http://mailman.videolan.org/listinfo/x264-devel

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.videolan.org/pipermail/x264-devel/attachments/20070808/4a03b377/attachment-0001.htm 
-------------- next part --------------
_______________________________________________
x264-devel mailing list
x264-devel at videolan.org
http://mailman.videolan.org/listinfo/x264-devel


More information about the x264-devel mailing list