A comparative test to see how frame buffers work with various changes.
Let's demonstrate a basic test by adding or subtracting 100000 on the 1080p FB1 & FB2 settings tested on our example GOP1 Intra settting. AQ, IQ, and Q settings are left default (unchecked). Using Elecard Streameye lets look at the first two frames of the recording and analysed them. In Frame 1 we'll be looking at the initial Q of the mbs (macroblocks), frame 2 onwards should be similar to the rest of the frames so lets only sample frame 2.
Camera is 14-140 lens at manual 25(50) length, shutter 100, iso 160, testing chart: Pappas Death Chart.
1/ 100000 off both FBs FB1 and FB2 taken 100000 off the defaults on pappas gives;- Result: First frame or initial Q (IQ) a flat QP of 25 is found everywhere for all mbs Result: 2nd frame onwards 18 to 30 QP mbs are found
2/ 100000 on both FBs - obviously this is going to be an invalid timing/buffer problem FB1 and FB2 with added 100000 on the defaults on pappas gives;- Result: First frame or initial Q (IQ) a QP in a range of 20 to 26 for mbs Result: 2nd frame onwards 18 to 30 QP mbs are found
3/ 100000 on FB2 only, FB1 default FB1 default and FB2 with added 100000 to default on pappas gives;- Result: First frame or initial Q (IQ) a qp in a range of 20 to 24 for mbs Result: 2nd frame onwards 18 to 28 QP mbs are found
4/ 100000 on FB1 only, FB2 default FB1 add 100000 to default, FB2s leave as defaults, on pappas gives;- Result: First frame or initial Q (IQ) a flat QP of 24 is found everywhere for all mbs Result: 2nd frame onwards 18 to 28 QP mbs are found
5/ 100000 off FB1 only, FB2 default subtract 100000 off FB1 from the default, FB2 default, on pappas gives;- Result: First frame or initial Q (IQ) a flat QP of 24 is found everywhere for all mbs Result: 2nd frame onwards 18 to 27 QP mbs are found
6/ 100000 off FB2 only, FB1 default subtract 100000 off FB2 from the default, FB1 default, on pappas gives;- Result: First frame or initial Q (IQ) a 20 (top left) upto a QP of 26 variation on the mbs Result: 2nd frame onwards 20 (top left) then 18 upto 26 QP mbs are found
Summary: All the 176M GOP1 recordings only lasted around 10 seconds apart from the last one (test number 6) which went onwards until manually stopped. All the elecard buffer analysis showed barely no difference in buffer sizes which were stable *the encoder either stopped recording itself with the usual record error or was manually stopped by the operator. Finally, the values of QP in the I frames test number 6 were +- to the initial Q.
So when testing - playing with the FBs I believe (I could be wrong and maybe @cbrandin can help out here) that its best to lower the FB2 below its default BUT not less than your setting in FB1.
@Vitaliy_Kiselev Just wanna get this stuff all in one place for the record and for others. Will be shooting in Paris this wknd, Nuit Blanc - I need GOP1 working as perfect as possible :-)
As @cbrandin mentions;- Q values are definitely used in I frames. The difference is that I frames use a range of Q values - typically Q-2 to Q+2 - and P and B frames use a single Q value. The range can be expanded, though. The FBx settings partially determine the range - FB1 sets the high Q and FB2 sets the low (maximum quality) Q. These are set automatically with bitrate to become xxx * increase in bitrate. If you manually set FB1 to a lower value (or set it to the factory default) it will increase the range to Q-2 to q+x (where x varies according to how low FB1 is). For example, if you set bitrate to 44M and AQ to "all to detail" the Q range for I frames will be changed from 18-22 to 12-16 (approximately).
If you manually set FB1 to the default the range becomes 12-22. These settings are used in combination with the manual Q settings. Q and AQ settings do not determine the actual Q settings you will see, rather they set the low limit.
If bitrate is doubled; theoretically Q should be able to be reduced by 6 - assuming you don't want to improve motion rendering. Each reduction of Q value by 6 theoretically results in macroblock size being doubled. This is because Q tables are built with each successive value being increased by the the sixth root of two.
@Vitaliy_Kiselev LOL, I know it seems that way, but a lot of people will find value as to what these settings mean and are doing. I believe each bank of settings need proper diagnosis. A lot of this stuff was a mystery to me once, and its been a fast steep learning curve, but if it helps speed up the testing I think certain things should be published in a proper breakdown of ptools settings. That way anyone new who wants to jump in and test will undrstand things quickly. We are still only finding out what other things do - take for example the AVCHD Research Encoder Settings - many of those are still a mystery.
Look at it another way - how long do we have before another camera comes along and we start all over again? The quicker we can get the best out of the GH2 the longer we have to make it worthwhile and get the best of it. I certainly don't want to be doing testing all my life, but what we uncover is good to share.