PDA

View Full Version : macroblock partitions and sub-partitions


appleaddict
26th November 2008, 15:51
Hello,

I cannot find in which functions are done macroblock partitions and sub partitions, neither in JM reference software encoder nor x264 sources.
Can somebody help me ? I would like to quantify the importance of it (computationally speaking, and timing speaking).

thanks

Dust Signs
27th November 2008, 08:10
Maybe this will help you:

Saponara, S. et al.: The JVT Advanced Video Coding Standard: Complexity and Performance Analysis on a Tool-By-Tool Basis. In Proceedings of the 13th International Packetvideo Workshop, pages 98--109, Nantes, France, 2003.

Dust Signs

Dark Shikari
27th November 2008, 08:19
Hello,

I cannot find in which functions are done macroblock partitions and sub partitions, neither in JM reference software encoder nor x264 sources.
Can somebody help me ? I would like to quantify the importance of it (computationally speaking, and timing speaking).

thanksLook for h->param.analyse.inter in encoder/analyse.c. Nearly everywhere it is used, its a case of something like if(h->param.analyse.inter & X264_ANALYSE_I8x8 ) {analyse i8x8}.

appleaddict
27th November 2008, 14:00
Thank you.

appleaddict
26th August 2009, 10:37
hello,

sorry to be late for this new question on the same subject.
I found what you mention in your reply, and it is clear that the fact of partionning and sub-partitionning macroblock depends on this :

if( ( flags & X264_ANALYSE_PSUB16x16 ) &&
analysis.l0.i_cost8x8 < analysis.l0.me16x16.cost )

and on some other similar expression nearby this one in analyse.c
(to partition 8x8 sub-macroblock).

But I still cannont find where the analyse is done : where analysis.l0.i_cost8x8 and analysis.l0.me16x16.cost are determined.

I am not good enough to work with the optimised version x264. I would rather work with the JM reference software. So it would nice if you could tell me where the analyse of the cost of partitionning macroblock and sub-macroblock is done in the JM reference software.

Thank you !

Appleaddict

NaturalThoughts
26th August 2009, 14:39
Start with "x264_macroblock_analyse" function in analyse.c in x264. All cost calculation are present there.
I like x264 code than JM.