View Full Version : p4x4 stay standard conform or not?
Selur
10th December 2008, 23:08
It seems
p4x4 is problematic with level > 3.
but Dark Shakiri mentioned that in theory this is true, but:
"In practice, not even the reference encoder abides by that rule. It is meaningless, and, quite literally, nobody cares."
So what should a GUI developer do to please the community?
a. enforce the standard (MeGui does so)
b. ignore the standard (since all hardware players should play the files anyway)
c. offer a option in the GUI to let the user decide
d. you don't care since you never use p4x4 anyway
Cu Selur
Dark Shikari
10th December 2008, 23:11
After the standard
p4x4 is not allowed when level > 3 or when level = 3 and b-frames are enabled.
but Dark Shakiri mentioned that in theory this is trueNo, I didn't. p4x4 is allowed at all levels, as I have said repeatedly. And B-frames have absolutely nothing to do with it. Why can I say the same thing dozens of times repeatedly and every single time people rephrase what I said, they get it completely wrong?
The restriction is on the number of motion vectors per macroblock pair.
By the way, if you want to strictly enforce the spec, there are plenty of things x264 doesn't abide by. x264 doesn't obey the "maximum compression" restriction of the ratio of (bits in bitstream) / (number of cabac decisions), so to strictly abide by the spec, you can't use CABAC either.
Nor does it obey the max macroblock size (3084 bits), so you can't use any QP low enough to possibly trigger such a macroblock, or you have to use subme>=6+no psy rd to enable I_PCM macroblocks.
Fortunately, nobody cares...
Selur
10th December 2008, 23:17
Sorry, for misinterpreting you. If it does not have anything to do with b-frames may be Sharktooth can clear up why MeGui mentions: "P4x4 macroblocks are not allowed in level > 3 or in level 3 with B frames."
The restriction is on the number of motion vectors per macroblock pair.
is there a way for a gui developer to 'check' these somehow or does he just have the choice between:
a. allow p4x4 for each level (and hope really nobody cares about the standard)
b. restrict it to level < 3 (to be on the save side to stay standard confrom)
Cu Selur
Ps.: hope the rephrased text of the 1st post suits you better. :)
Atak_Snajpera
11th December 2008, 00:02
Blu-ray players and other devices like Sigma based media players accept p4x4! I know that because I have positive reports from RipBot264 users.
Selur
11th December 2008, 01:27
Good to know thanks. :)
Sharktooth
11th December 2008, 02:50
@selur: i didnt write the context help for megui. i just assumed it was right.
also, i cant understand what the problem is. i mean, if you're going to encode HD stuff p4x4 is not so usefull while if you're going to encode SD stuff, level 3 is enough...
however, im open to suggestions so if you guys want p4x4 enabled at levels higher than 3, i will make that change.
Audionut
11th December 2008, 03:41
I think, at the end of the day, p4x4 is allowed at all levels, and as such, should be enabled regardless of it's usefulness.
Selur
11th December 2008, 08:22
@Sharktooth: sorry, didn't want to attack you, just thought you might know. :)
Sharktooth
11th December 2008, 15:17
selur, oh... i didnt even realize it could be intended as an attack... :)
flebber
11th December 2008, 22:37
I think, at the end of the day, p4x4 is allowed at all levels, and as such, should be enabled regardless of it's usefulness.
Should be optional, unecessary loss of speed for no notable quality gain.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.