Personal View site logo
Make sure to join PV on Telegram or Facebook! Perfect to keep up with community on your smartphone.
Panasonic GH1 firmware research, testing
  • i'm looking for constants in the encoder of gh1 to stabilize and improve image qualaty. One of my targets is get stable gop1 settings. I did tons tests and i tired to do this work alone. So i need testers, if someone still want improve gh1 qualaty and want to help in testing, please send me PM. I have found some new settings, i list it below.

    • QP step sizes table.
    • Scaling tables just like in GH2.
    • Min and Max QP.
    • All intra turner.
    • I-frame or somelike limit constant.
    • Min frame size limit(works incorrectly)

    Main problem is i can't control min bitrate, for example when shooting deep black scenes. There is steel error out after 3 sec shooting in such scenes. There is min frame size limit, i guess, i have found. But it's just increases last frame in 1-sec sequence. So need more and more testing.

  • 277 Replies sorted by
  • This is nice! For hobbies, GH1 is still rock!

  • I seem to have successfully (well, hopefully, I haven't had a crash yet) created a sort of hybrid configuration (Specifically for NTSC).

    Humpman's work for the AVCHD side as it gives me the nicer shadow area without the streaky lines or loss of detail (especially at lower ISO) in a nice 48i package, particularly when compared to the LPowell 75mbps peak reliability patch. But also takes the Motion Jpeg configuration from the 75mbps peak reliability configuration.

    I did lower the FHD/SH and Overall bitrate a tiny bit (93 to 91, 91 to 89), as it was crashing/freezing up for SH at the original speeds. And I increased (or set rather) the H bitrate to 50M

    Basically AVCHD stuff is humpman's, Motion Jpeg configuration primarily from

    What seems to work :

    • AVCHD FHD - same as humpman's latest config but with bitrate/overall reduced by 2Mbps, gives the nicer shadow details

    • AVCHD SH - Appears to work without freezing/crashing, and records as 59.97 progressive, have not yet had a chance to try a very high detail scene with a stopped down lens

    • AVCHD H - Same as SH but with a more moderate bitrate

    • Motion JPEG HD - 4:2:2 enabled, Frame size increased to 1536x864 (as was in LPowell's Patch), shows overall bit rate around 56~57 Mb/sec , best at lower ISO as it does not have the benefit of diminished vertical banding like humpman's AVCHD configuration.

    I did not test lower sizes in either modes.

    Here are some test clips, showing mostly AVCHD FHD, a couple Motion Jpeg HD, and a single AVCHD SH (720p60) which was reduced in speed 50% (I'll upload a transcoded copy of that file unedited shortly).

    Editing in Davinci Resolve 14.3, the lenses used were Panasonic 20mm f/1.7 v.1, Olympus 45mm f/1.8, and an old Pentax-M 50mm f/1.4, and a 1951 Canon Serenar 35mm f/2.8 LTM with a Promaster UHS-I U3 32GB SDHC card (writes at 80MB/sec)

    My modified set file, the user.ini I use would be identical to the one humpman already published.

    =Edit : transcoded the 720p60 clip from AVCHD SH mode and uploaded it unedited=

  • Hey @humpman and all who worked on and helped with this hack, just wanted to express my gratitude to you! I just picked up a gh1 again, (for 110 € plus the 14-42 mega ois, man what a bargain) on ebay as an addition to my 2 GH2s.

    I got super excited over the last months finding and reading the thread and seeing that you got rif of the muddy compression in dark areas which finally got me to search for one again.

    This is definitely the goto patch for the GH1 now, thanks so much! It will be my cam for experiments, light run-and-gun in good lighting conditions, experimentin with black and white and high contrast lighting, throwing it in the bag without holding back, b-roll and so on. Great little toy/tool to have, since i love it's picture characteristics.

    @AlexGH1 great video though it's offline now, what happened?

    All in all thanks to all of you and i hope you had a "geruhsame Weihnacht" as we say here in germany.

    Best, MrZz

  • Hi All. I am Alessandro from Italy. Because I have read all abaut this amazing discussion I would like to sharing my little project. I used GH1 + Canon 50mm ssc FD + last settings by Humpman (thousand thanx). I think that this little camera is amazing, except for its problem abaout NFP noise fixed pattern :( Watch it in 1080, please.

    Here i upload some frames take by original master in cineform, to watch quality.

    Thx and sorry for my English, I'm Italian do You know...

  • Just had shot short film with last settings from January 24

  • @zcream seems I made a rather stupid error in not matching up the FHD/SH bitrate (only the overall changed), so when I bumped them higher than what humpman had, and did a test shot at 3200 in low light, I immediately saw what you were talking about in playing it back for AVCHD the funky mud effect going on. I realized my error when the average bitrate kept staying around 50mbps. (though I did least get some good footage downtown today with only a crash at the end of the night in low light when I was walking one handed with the camera all bouncy in motionjpeg).

    So... yea...

  • Not sure if this is useful to you or not in the mean time.

    In the studio with the lights off (most of the windows are blocked off) I shot the following at ISO 3200, 1/50th, f/2.0 in FHD did some pans, stopped on some darkened scenes, panned back, etc. Using the "Smooth" film mode, -2 sharp, -2 contrast, -2 noise reduction and I uploaded the MTS file directly to youtube.

    the same at ISO 100 with the LED panels turned on and dimmed to 10% to allow for it to give me near the same meter reading at ISO 100 with all other settings the same.


    Looking back at humpman's example I re-did a static shot with the table layered with some texture/pattern.

    I set the light panels so that I got roughly a half a stop to a stop under exposed on the meter and set the camera to ISO 3200, f/3.2, 1/50th, FHD, Smooth (-2 sharp, -2 contrast, -2 noise reduction) and uploaded the MTS file directly to youtube.

  • Iso 3200 at night. Compare the fpn vs humpman. You will notice the difference. The encoder drops to lower bitrate at night, and for underexposed scenes. Humpman setting avoids this.

  • Will do (though I don't shoot PAL, would using 24p/48i achieve the same purpose?)

    PS: just did this ~10 min video (ISO 400, f/3.2, 1/50th, with "Smooth" film mode -2 sharpness, -2 contrast, -2 noise reduction, and graded in Davinci Resolve 12.5)

    When I get to the campus later today, I'll do a controlled series of clips in the studio dimming the lights and what not.

    (I also have an Breakthrough X4 10-stop ND filter to force it outside...)

  • Humpman patch was optimized to reduce fpn in 25p low light. Please compare this with your 120mbps. In low light, over 67mbps, there are issues. Check out humpman video

  • @humpman using your user.ini and configuration examples I kind of 'mashed' this together using LPowell's 100mbps Max Lat patch as a base. ( )

    Changes on top of the Max Lat patch in pTools:

    • Turned off native 24p wrapper
    • Checked the Maximum ISO limitation removal
    • [Motion Jpeg] Checked 720p30 -> 720p24 (drops every 4th frame to create a 24p result)
    • [Motion Jpeg] Increase width/height for 720p30 to 1536x864 (from LPowell's 75mbps peak performance patch)
    • Increased the H[32m], L[22m] and Overall[120m] bitrate as a suggestion by weimar ( ) , though in his example he kept overall at 108 and was using motionjpeg as a 18fps 1728x972 'silent film' kind of configuration keeping the original E#/F# table/quality settings. I also reduced the audio buffer matching his configuration (but kept it at 192kbit instead of 320kbit he had) as I mainly use audio on the GH1 to slate with my external recorder.
    • Your settings from user.ini (The 3 Constants, Min QP, P/I Frames, and 2997i-to-2400)

    Two Video examples against bunch of texture at ISO 100, 1/50th, and f/5.6 on AVCHD and MotionJpeg

    And trying out ISO 1600/3200 with just the user.ini settings alone seems to be very very clean compared to just stock MatLat or 75mbps patch. (would post, but the example I shot is a messy living room lol, will get something tomorrow).

    Tomorrow though I'm going to try to do some recording outside (maybe some heavy foliage if it's bright and sunny) though any suggestion of real world scenes to test it would be appreciated. But just learning about the 48i option from you has been quite nice for my workflow

  • @humpman ok, that's where I was confused, in MediaInfo and other applications, it shows the framerate as 24fps, but also shows that it's interlaced/separated fields, in none of the applications does it say 48i so I was confused as to how there seemed to be a single frame for each frame rate as opposed to a visual mix on pause/pans.

    So I'm still getting each 24 frames progressively in a 24fps timeline, it just doesn't have to do a pull-down from 48i. That's where my confusion was. (I understand progressive well enough, interlaced is where my brain got fried)

    The other night I was trying to get your improvements on top of the 75mbps patch, but I wanted to keep the motion jpeg configuration from LPowell's patch instead of doing a 2fps timelapse mode. Course I guess your user configuration doesn't play nice with Powell's original settings for SH (60p) mode since the camera froze up on some panning tests.

    But for tonight's event I'm using the Lpowell 75mbps configuration with a minor change of using the "2997i to 2400i" option that I discovered from your work thus far (I haven't seen this mentioned anywhere else so far, and it seems to make so much more sense than risking instability attempting a native 24p wrapper)

    Ultimately what I want to get (I'm only working in NTSC):

    From your work:

    • The 48i option (easy enough just checking it on)
    • The nicer noise reduction and movement your configuration demonstrated for AVCHD

    From Lpowell's 75bmps

    • The MotionJpeg configuration giving a nice 4:2:2 result in a larger 1536x864 output @ 30p (that way I can either up sample to 1080p, or do some image stabilization and down sample to 720p)

    Also since I'm using an external recorder for audio most of the time, do you think I would gain any stability by reducing the AC3 bitrate/buffer? I mainly want in-camera audio just to slate it.

  • @kbeezie i don't clearly underastand your problem, but:
    Stock GH1 NTSC mode is 24p and it's packed in 60i interlace with 3:2 pulldown video file.
    With "2997i to 2400i" 24p will pack in to 48i interlace without 3:2 pulldown file.
    Can't see problem here.

  • @humpman so for example if I were to just load up the 75mbps patch in ptools, turn on 2997i to 2400i option, it's pretty much progressive 24p once transcoded and should for all intents and purposes be treated like 24p (in regards to setting shutter etc)?

    My main concern with the interlaced mode is losing frames when transcoding the MTS since Davinci Resolve doesn't support the MTS or the AC3 audio embedded within the container so I have to transcode it anyways and I don't want to lose data if it's not automatically reverse telecining it (in the case of the 75mbps patch being 3:2 pulldown from the 24p sensor output).

    When I tried your patch, the mediainfo didn't show anything different for the interlaced mode other than the frame rate being 24fps.

  • @humpman thank you very much for the patches and video. very helpful!

  • Ok - thanks @humpman

  • @kanth those settings only for interlace, there is new setting to turn 2997i into 2400i(4800), and also interlace in GH1 it's just programm interlace so you can easely turn it to native in video edit programm. Native mode in GH1 is unstable.

  • Thanks @humpman. I used your Jan 24 user.ini and seta.ini. In addition I enabled "Wrapper->Native 24p/25p" because I want 24p but still when I inspect my MTS file using StreamParser I do not see any value for "Stream: Mode" in the "Information" box. I was expecting to see "1080/24pH (GH13 Native Hack)". How do I shoot in native 24p? Thanks!

  • Thanks all for helps. Not only me confused of -;) I am on Mac, run P tool with Wine. When I load the firmware with humpman's video instruction, nothing is shown up in user setting. Will have to click on seta to shown user patch

    Screen Shot 2017-02-22 at 7.15.34 AM.png
    750 x 1242 - 87K
  • @tinbeo just watch this video, tutorial in the end

  • @tinbeo

    user.ini has nothing to do with settings, it adds new patches to selection available.

  • @ yskunto: Do I need to rename that user.ini to b, c ...j then click on that to show user setting then click on set a to save to new firmware? I was confused?

  • to use the @humpman setting, put user.ini in the same directory as the ptool.exe

  • @humpman I was getting used to hack GH1 as following: 1- run ptool,exe 2- load firmware gh1_132.bin 3- click on set a ( or b,c,d...) 4- Save firmware to gh1_133.bin

    How are we using with user and set a? Should I rename user.ini to b or c... then load both together?

  • I have tried the custom firmware outside ( great sunny day ) with sandisk extreme SDHC card, works great, great quality .

    Keep up the good work @humpman !