@apefos: You're the man!!!
While some others make a patch within 3+ months, you did something really great that no one did before, just in few hours!
@producer thanks for your words
It is not just hours, it is old job since june 2013, with long intervals between each development stage.
The Patch - 12 versions (download link below):
all versions have all improvements from my previous developing in workhorse, boson, gspot, dct and apefos settings, plus the new achievements on correct matrices to get great noise/texture and deblocking tables to avoid the diagonal rain pulsing pattern.
best gop settings and data distribution among I, P and B.
best frame limit and buffer sizes
6 different matrices in 2 datarate options: stable and high = 12 versions
stable versions can use auto electronic features and native lenses
high versions does not work with auto electronic features and are more stable with manual lenses
only version G is fully tested to avoid the diagonal rain pulsing pattern, I consider it "the patch". also it does not delay the on screen info display.
other versions are not tested on the display info delay, see instructions to test them in the txt file.
other versions have same deblocking tables, but I did not test the rain issue on them, there are instructions in txt file inside the zip to test.
the deblocking tables uses value 18 for intraframe and value 6 for interframe (all positions), it solves the diagonal pattern pulsing problem in setg, so I repeated it in other versions.
other versions increases or decreases quantization to get better textures in other isos, see the txt.
I perceived that lower quantization is better for lower iso and higher quantization is better for higher iso, so there is 6 versions with different quantizations to chose.
the quantization matrices are (all carefully tweaked in frequency increase ratios):
sete, lowest quantization,.
Luma:
006 008 010 012
008 012 014 016
010 014 018 020
012 016 020 024
Chroma:
006 008 010 012
008 012 014 114
010 014 120 126
012 114 126 156
setf, lower quantization.
Luma:
006 009 012 015
009 015 018 021
012 018 024 027
015 021 027 036
Chroma:
006 009 012 015
009 015 018 114
012 018 120 126
015 114 126 156
setg, standard quantization, "the patch"
Luma:
006 009 012 018
009 015 021 027
012 021 030 036
018 027 036 054
Chroma:
006 009 012 018
009 015 021 114
012 021 120 126
018 114 126 156
seth, higher quantization
Luma:
006 009 012 018
009 015 021 036
012 021 045 054
018 036 054 072
Chroma:
006 009 012 018
009 015 021 114
012 021 120 126
018 114 126 156
seti, highest quantization.
Luma:
006 009 012 018
009 015 021 054
012 021 060 072
018 054 072 108
Chroma:
006 009 012 018
009 015 021 114
012 021 120 126
018 114 126 156
setj, extreme high quantization
Luma:
006 009 012 018
009 015 021 063
012 021 072 084
018 063 084 126
Chroma:
006 009 012 018
009 015 021 114
012 021 120 126
018 114 126 156
@apefos: I asked you a day ago, but still feel unsure: in the descriptions of your patches, even the latest 12 versions, you always talk about 720p (SH, etc.), so is there any difference if I shoot with your patches in 720pSH or in 24H or 24L?
I talk most about 720p because it is the most difficult recording mode, but the benefits goes to 24p also.
please read the txt files inside the zip and also the yellow box in PTool when you put mouse over patch letter. all explained there.
also if you want to complete understand everything, take some time to read all the topics from me in the top settings section of pv, all the developing stages are there and you will completely understand what is behind this. also each upload has txt files and yellow box description since my first posts in the top settings section. it takes some time to read but it worths if you wants to understand.
these versions here avoids the diagonal rain pulsing pattern tweaking the Deblocking Tables. setg was tested.
I could implement a fallback to make the patches works for low and high isos at same time, but I found it not worth because when there is motion the fallback would take place and hurt textures in low iso. this is the reason for the versions for different isos.
the matrices changes from sete to setj, starting with low quantization and increases it from version to version. I am using the standard datarate setg.
you need to shoot same scene same camera settings to perceive little differences.
updated information in previous post about the versions
hiper extreme high quantization versions, see the txt.
matrix B
Luma
006 012 018 024
012 021 027 048
018 027 060 072
024 048 072 096
Chroma
006 012 018 024
012 021 027 114
018 027 120 126
024 114 126 156
matrix C
Luma
006 012 018 024
012 024 030 048
018 030 060 072
024 048 072 096
Chroma
006 012 018 024
012 024 030 114
018 030 120 126
024 114 126 156
After the creative discharge, some sleep, food and rest, I did a look on the versions and I found some things that could be better:
in setf luma matrix, the last position is 036, I think 033 makes more sense to the matrix maths.
in seti luma matrix, the number 060 can be 063 for better maths in the matrix.
there is another option in deblocking tables to try: 18 and 3 instead of 18 and 6, needs tests.
it is possible to have another version between setf and setg with this matrix design:
006 009 012 018
009 015 021 024
012 021 027 030
018 024 030 036
I also created some ideas to implement fallback. the fallback versions can use this design: a lower quantization in main matrix and a little higher quantization in fallback matrix, this way when there is heavy motion or iso increase the fallback matrix takes place to avoid compression artifacts.
the idea is to combine versions:
main matrix E + fallback matrix F
main matrix E + fallback matrix G
main matrix F + fallback matrix G
main matrix F + fallback matrix H
main matrix G + fallback matrix H
main matrix G + fallback matrix I
only drawback can be the fallback takes place when you does not want, for example in low light steady shots, if this happens textures will not be so good as the patch without fallback, but if fallback is just a little different the result can be good a balance...
IIMA, where is the sweet spot for IQ and reliablity for long (45 minute) clips?
setg in datarate stable folder
@apefos Very cool - keep rockin'!
Thanks for the work apefos.
Forgive my ignorance but can I combine setg,i, and j into one patch?
For example use camera settings 24H,24L, and HBR(Pal) to change between setg,seti, and setj? or can 24L not use 24H patch settings?
@apefos thanks so much, I have a big show coming up and I'll give it a whirl.
There is a way to combine patches using different matrices for 24p, hbr and 720p, because the firmware uses different matrices for each. This way the different modes can have different matrix design and quantization based on their needs.
But 24H and 24L uses same matrix. HBR, and 1080i FH and FSH uses same matrix, 720p SH and H uses same matrix.
The other way to combine patches is to use the fallback tables, using a little higher quantization in the fallback.
The fallback works like this:
the main matrix is doing the job to compress the image. if heavy motion occurs or if you increase the iso more than the main matrix can handle, then the fallback matrix takes place to avoid artifacts, so using a higher quantization in the fallback is the way to combine patches. see my previous post.
Both things can be done, a slightly increase in fallback quantization and different matrices for 24p, hbr and 720p.
@Manicd thanks for the idea, now I understood it. See my previous post, I edited it with a development based on your idea.
updated versions with one more quantization matrix option and deblocking tables 18-3
please read the txt inside the zip.
the new matrix is:
006 009 012 018
009 015 021 024
012 021 027 030
018 024 030 036
from now I am thinking about the fallback implementation and about different matrices for the recording modes, if these two improvements worth for better quality and how to do best settings for them.
@apefos At full zoom and teleconverter on, the horizontal lines in dark areas (high contrast picture, like very dark shadow on a bright sky) are less noticeable using the c-version. Everything else is fine, stable, beatiful.
@frullaccia the C version is the most high quantization amount in the matrices. it can increase the mud in textures under normal conditions, but if it is useful in these extreme situation, then there is a use for it.
I hope this is final. Only 4 versions:
Custom matrices with best noise/texture for the different record modes. Fallback Tables implemented. Deblocking Tables 18-3.
I did a video shoot with all patch versions, camera on tripod same settings on camera, same light. I did a zoom in timeline to 400% in different areas of the image frame by frame, so I could perceive which matrix was better to each recording mode, better noise, better texture, less mud, similar look in I, P and B frames, and also which increase on fallback could be good to handle a higher iso.
this way I found the best result combination from the matrices I created in a final patch design.
I perceived that the 24p is showing less green cast due to the low quantization in the matrices, the 24p datarate allows this and makes it looks like intraframe even with a lower quantization. This was not possible in 720p because lowering the quantization in 720p matrix so much hurts the noise and texture making the I frames to be very different from the P frames introducing a pulsing, so I prefer to keep a quantization for good noise/texture in 720p, a better similar look in I and P frames to get a better slowmotion cadence, more similar to intraframe performance.
two ISO versions 2000 and below, 8000 and below.
two datarates, stable and high.
a = stable datarate, 2000 iso and below
b = stable datarate, 8000 iso and below (not so good for isos below 2000 as seta and seti)
i = high datarate, 2000 iso and below
j = high datarate, 8000 iso and below (not so good for isos below 2000 as seti and seta)
@frullaccia @producer @DrDave @Manicd @matt_gh2 @brudney @jmatthews @jleo @JayUKB @joethepro @Marathonianbull @rezyserzycia @TrackZillas @alphadawggh2 @driftwood @Gallo22 @Vitaliy_Kiselev @zsound @spreeni @NikolayM @Aashay @caveport @LPowell @maxr @Azo @duartix @yskunto @marciocons @kris @karl @Ralph_B @Alex_K @Daniel_R @cbrandin @all
Hello guys, you all followed the developing since long time ago. Please give some feedback about the seta in last upload in post above (seta inside the_patch_4versions zip), it is the main version with all improvements I could find since the beginning of development. Many thanks.
Sure @apefos , i'm going to test your last patch with my new Sandisk 95mo card. i also have a question: i would like to had the "cinema smooth" matrix to your patch, is it difficult? Thanks
Feel free to change the things you need to satisfy your taste about the image. You can try copy and paste the scaling tables / deblocking tables from one patch to another. Sometimes this copy/paste works, sometimes needs tweaking in other settings to make it work ok... a patch is a combination of many things working together... I think I already found the combination I was looking for, so I do not want to start another pursuing about patches...
I did a look on it, it uses very low numbers in some position in an attempt to lower the quantization, but to keep a reasonable quantization amount in some position it uses very high numbers wich increases quantization a lot for some pixels, and does not have a frequency similar to the dct frequency.
@apefos The seta is fine. Everything is almost perfect. I and D (which is quite similar to I) are the best; J is very useful. B is not as good as J (to my eyes). What about the horizontal lines in my stress test? Almost disappeared. You have made the best patch for this camera.
This is experimental:
an attempt to reduce the green cast in 720p and hbr, and try to make the 720p and hbr textures/noise looks like 24p.
works only for PAL lands, so it is sete = Europe (because the NTSC framerates/datarates does not allow this try)
auto electronic features does not work in 720p and hbr, better not to use native lenses.
It looks like you're new here. If you want to get involved, click one of these buttons!