Personal View site logo
Make sure to join PV on Telegram or Facebook! Perfect to keep up with community on your smartphone.
Please, support PV!
It allows to keep PV going, with more focus towards AI, but keeping be one of the few truly independent places.
DCT patches for GH2 hack
  • DCT patches for GH2 hack - versions 16 november 2014

    Please, read carefuly to understand the patches because I am keeping away from internet, this is my final work for the GH2. I did it in an attempt to make all the help I got from the "Masters of Hack" and all my previous developing to worth the effort.

    State of the Art patches for GH2

    Works for PAL and NTSC

    The finest possible noise respecting the camera hardware limits and datarate of each version

    Four different matrix configurations

    Each datarate version is combined with the best matrix design for it, the image quality from the matrix increases together with the datarate

    The quantization is balanced with the datarate to avoid compression artifacts in details, textures, noise and motion

    Matrix quantization and design in best compression balance for details, textures, noise and motion, and to avoid compression noise patterns and artifacts

    Matrix design follows the discrete cosine transformation (dct) frequency pattern

    Sligtly more compression in color without hurting it, compared to luminance, to allow less compression in the Y channel

    Less posterization and banding in dark areas and in homogeneous colors compared to FlowMotion while keeping similar quantization versions for motion quality

    Avoids the line patterns, the variations in frames flux and minimizes high iso flickering from Nebula while keeping a similar fine noise quality

    More stable than FlowMotion and Nebula, considering you load the correct datarate version for your memory card and correct version for the use of electronic auto features

    Great performance in both low iso or high iso, avoids the macroblocking, mud and blur in textures

    All versions works good for details, textures, noise and motion quality, but there are some versions better than others for each purpose, see below

    only four different and best stable datarates versions for chose considering the memory card speed and the balance between image quality and the use of auto electronic features from camera body and native lenses

    Lower datarates helps stability with the use of electronic auto features from native lenses and camera body, try the best version for your needs

    Instead of a stop recording I perceived that the on screen overlays starts to become slower when using auto electronic features enabled, depending of the version used, I think this can be a result of a less stressing matrix for the camera processor achieving more stability using auto electronic features from lenses and camera body. This seems to be a result from the special matrix design

    No camera freeze, if stop recording happens the camera saves the file and returns to stand by mode

    The stop recording will never happens if you load the correct datarate version for your memory card and the correct combination of the electronic auto features for the chosen datarate version

    The DCT patches have all the achievements from my previous work in the WorkHorse, Boson and Gspot patches, but with a new special matrix design. Go to the WorkHorse, Boson and GSpot topics for detailed explanation about the careful developing and settings for gop, gop tables, datarates, frame limits, frame buffers, datarate limits, quantizer.

    Developed and tested with the Sandisk 32GB SDHC 45MBps memory card

    Lower datarate versions can work in lower speed cards

    The matrices:

    DCT67 higher quantization, better for motion and to avoid compression artifacts in high iso noise, better to avoid flickering in iso 3200 and above (higher matrix quantization than FlowMotion, but the design avoids chrused quantization and helps to avoid posterization)

    DCT56 more fine noise and less posterization in dark areas, I consider it the sweet spot for a balance among details, noise, texture, motion. IT does not increase compression artifacts and flickering in high iso significantly compared to DCT67 (same average quantization matrix of FlowMotion, but the design avoids chrused quantization and helps to avoid posterization)

    DCT55 another step up to a more fine noise and less posterization in dark areas, more prone to flickering in iso 3200 and above (Quantization is smaller than FlowMotion)

    DCT45 lowest quantization, the most fine noise but can show more flickering in iso 3200 and above (more close to nebula fine noise looking, but the design helps to avoid heavy linear quantization and keeps constant frame size in the frames flux)

    All matrices works good to avoid flickering up to iso 1600, if the flickering increases in lower quantization versions it will be in iso 3200 and above, this happens because less quantization allows more variations in the pixels values, higher quantization helps to flatten the pixels values and minimizes variations from the CMOS sensor

    I did experiments with matrices with even lower quantization and smaller entries than the DCT45, also similar to canis majoris, but flickering in high iso increases a lot and the codec breaks in 720p due to the maximum stable bitrate is not enough to handle the heavy amount of information generated by a very low quantization, a no go.

    The versions:

    In all versions the H slot can be more stable than SH, and FH can be more stable than FSH

    In all versions the H slot increases the I frames size for better details in 720p low iso, the SH is better for noise and texture in 720p high iso, the H-switch feature

    Combinations between matrices and datarates which increased compression artifacts was abandoned

    In very high iso 6400/12800 the lower bitrate versions can show a small amount of compression artifacts, not an issue up to iso 1600/3200. The higher datarate versions allows iso 6400/12800 clean from artifacts

    DCT67L = setA = low bitrate = best for lower speed cards, works with auto electronic features enabled, high isos 3200 and above can show artifacts, mainly in dark areas

    DCT67M = setB = mid bitrate = good for all isos, but better for isos up to 1600, works with auto electronic features enabled, try in 30MBps cards and above

    DCT67H = setC = high bitrate = great option for a balance between stability and avoid compression artifacts and flickering in iso 3200 and above, but does not work with auto electronic features

    DCT67X = setD = maximum bitrate = best option for iso 3200 and above to avoid artifacts with less flickering, but can stop recording, does not work with auto electronic features, use fast memory card

    DCT56M = setE = mid bitrate = the sweet spot version among all, great quality up to iso 3200 and allows the use of the auto electronic features, great balance among details, noise, texture, motion, try in 30MBps cards and above

    DCT56H = setF = high bitrate = better quality in high than DCT56M iso but auto electronic features does not work

    DCT56X = setG = maximum bitrate = best datarate for artifacts free together with a good balance between less posterization and less sensor flickering in iso 3200 and above, can stop recording

    DCT55H = setH = high bitrate = for priorize fine noise quality

    DCT55X = setI = maximum bitrate = for priorize fine noise quality, but can stop recording

    DCT45X = setJ = maximum bitrate and the most fine noise matrix, can show more sensor flickering in iso 200 and above, can stop recording

    Sensor flickering in iso 3200 and above is an issue from GH2 hardware, the most lower the matrix quantization the more prone to it the patch is.

    Recommendations:

    setA low bitrate is the most stable for the use of auto electronic features in NTSC

    setB and setE mid bitrate works for auto electronic features for PAL in all modes and for NTSC in almost all modes (not in SH and in FSH), the best choice for a balance between quality and features. Considering these two patches, setB is better for iso 3200 and above, setE is better for iso 1600 and below. In NTSC the H slot can be better for use the features in 720p on both

    In all versions 24p L slot is lower datarate following 720p datarate,

    24p H slot is higher datarate in all versions, same 24p quality in low, mid , high and maximum bitrate versions. The main change in datarate and all explanations above are for HBR, 1080i and 720p

    HBR works ok in all versions

    All versions have the H-switch to increase the I frames size using the H slot to get better details in 720p, SH slot better for noise

    Format your memory card in camera before recording, helps stability. Always reboot camera and format the card after change NTSC/PAL or vice versa.

    Enjoy!

    DCT_patches_GH2.zip
    107K
  • 4 Replies sorted by
  • THKs, apefos! I've been following your every move and am quite eager to try out your final settings. So far, I have discovered many good ones (from various authors) which, unfortunately, are often far too demanding for my GH2 / Sandisk setup mainly with regard to in-cam replays; only two or three could be called keepers... Among your various patches, I'll surely find some interesting ones (probably DCT56M, maybe DCT67M). What a drudgery, just testing can be a boring chore! No wonder you're tired... Please come back whenever you feel lighter, and best of luck in all of your future endeavours.

  • @apefos Nice to hear you again. I will put this file into my APEFOS folder on the desktop! See you later.

  • wow! thats interesting! someone did a test with this patch?

  • @apefos plase, make some footage with your patches. big thanks for your work!