zcream
Well-known member
The Panasonic GH1/GF1 debuted in 2009 with a sensor in between 16mm and 35mm Academy size. It is approx a 2x crop sensor related to SLR terminology. The short focal distance allows the usage of any lens built for cameras – except the CS-mount lenses. On the dvxuser forums, a Russian hacker tester13 figured out a way to modify the firmware to give custom recording rates – among other goodies. At this point in time, the GH1 has the best recorded image out of ANY camera less than 10K. Here is my article about installing the firmware for noobs.
The previous version of this article appears here.
The article also appears here.
This is a very simple tutorial that will attempt to organize everything for first time users.
Video is essentially a sequence of still images taken 24,25,30,50 or 60 times a second. Also, during a video recording there is a spatial relationship between successive stills. The camera records in 2x formats - AVCHD and MJPEG.
MJPEG records video as a sequence of JPEG stills (also called an intraframe codec). Hence, it can be easily edited on any computer. On the flipside, it is less efficient than AVCHD for storage. Both the GH1/GF1 only record 30p videos in MJPEG.
AVCHD uses the spatial relationship to record each frame as a DIFFERENCE of stills (called an interframe codec). This encoding is called a Group of Pictures (GOP) encoding. So, the sensor takes its snapshots which it passes to the encoder. The encoder takes the first snapshot, saves it as a still, and calls it an I-frame. The next few frames are encoded as a difference frame, encoding only the regions that have changed. These are called P-frames. There are also D and B frames, that are variations on this theme. If there is lots of movement (i.e. foliage on a windy day, or ocean current), the encoder gets stressed trying to calculate P-frames. This causes errors while using your camera. AVCHD can record in 24P, 25P, 50P or 60P.
Finally, we need to understand colorspace. If you have ever painted, you know that all colors are composed of the primary RGB (Red-Blue-Green) spectrum. So, a basic representation of a color image involves at least 3 values for R, G and B. Depending on the color depth (8,16 or 32-bit), this can mean 24, 48 or 96-bits per pixel. That is a LOT of information. Hence, another colorspace is used for encoding stills and video - called YCrCb. The intensity of light on a pixel is called luma, and the color value (a composite of Red, Green, Blue) is called chroma. In practice we only need 3 values, Y (luma) Cr (Y - Red) and Cb (Y-Blue). The value of green can be derived from these 3 values. Now, the human eye is more sensitive to luma than chroma. So, a common scheme is to reduce the sampling for Cr and Cb. This is called 4:2:2 colorspace, where luma is sampled at twice the rate of chroma. A more efficient alternative is to sample Y at twice the rate of Cr and Cr at twice the rate of Cb. This is called 4:2:0 sampling. Obviously 4:2:2 sampling will stress the sensor circuitry and cause more errors.
MJPEG can offer 4:2:2 or 4:2:0 sampling, while AVCHD can only offer 4:2:0 sampling.
Finally we need to understand interlaced vs progressive footage. Consider standard NTSC rates of 60i or 30p. In progressive mode, a sequence of 30 still images are written to disk in 30p mode. In interlaced mode, the encoder reads the odd or even lines on each image. Thus even though the sensor is sending out 30 images each second, the encoder takes each image and encodes the odd lines on odd frames, and even lines on even frames. In interlaced mode, there are 60 calls to the encoder to write 1920x540 resolution images per second. In progressive mode, there are 30 calls to the encoder to write 1920x1080 resolution images per second. Obviously a progressive encoding for the progressive image generated by the sensor is more efficient but also more stressful for the encoder.
Having read this, lets start with the hack. First check this Serial FAQ to see if you can even hack your GH1.
1. Use a Windows PC for this. Things can work with Parallels or other emulators on a mac. Winebottler can cause a problem where the bottom part of the hack utility (with options for various hack settings) is not seen.
2. Download the LATEST version of ptool from here. http://www.gh1-hack.info/ptool3d.zip Unzip it into a GH1-hack directory
3. In the past, we had to modify each individual setting. It was a tedious task to setup a GH1 or GF1. Now we can have multiple settings files that can be used, as long as they are in the same directory as the ptool. Check out the Ptool FAQ and the various settings available.
4. Now I will offer what I do for my shoots. I use AVCHD as its the only choice for 24p/25p footage. 30p is pointless unless all you need is to post videos on Vimeo. There are 3 hacks, available for the GH1 which offer Reliable, Turbo and Extreme modes of the hack. I use 3 cheap SD cards, some 16MB cards I have lying around. Format them in the camera and load 1 setting per card as shown in the FAQ above. Use a sharpie to write down Reliable, Turbo and Extreme. The 3 settings are provided by lpowell.
They are :-
Reliable
Turbo
Extreme
The failure rates are obviously greater for Extreme than Turbo than Reliable. At night, or for places indoors use the Extreme patch. If it does not work, use the Turbo patch. For dense foliage, or clip with running water use the Reliable patch.
5. After recording, you may decide to view the video files for errors or out of curiosity. Please download cbrandin's StreamParser for more fun.
The previous version of this article appears here.
The article also appears here.
This is a very simple tutorial that will attempt to organize everything for first time users.
Video is essentially a sequence of still images taken 24,25,30,50 or 60 times a second. Also, during a video recording there is a spatial relationship between successive stills. The camera records in 2x formats - AVCHD and MJPEG.
MJPEG records video as a sequence of JPEG stills (also called an intraframe codec). Hence, it can be easily edited on any computer. On the flipside, it is less efficient than AVCHD for storage. Both the GH1/GF1 only record 30p videos in MJPEG.
AVCHD uses the spatial relationship to record each frame as a DIFFERENCE of stills (called an interframe codec). This encoding is called a Group of Pictures (GOP) encoding. So, the sensor takes its snapshots which it passes to the encoder. The encoder takes the first snapshot, saves it as a still, and calls it an I-frame. The next few frames are encoded as a difference frame, encoding only the regions that have changed. These are called P-frames. There are also D and B frames, that are variations on this theme. If there is lots of movement (i.e. foliage on a windy day, or ocean current), the encoder gets stressed trying to calculate P-frames. This causes errors while using your camera. AVCHD can record in 24P, 25P, 50P or 60P.
Finally, we need to understand colorspace. If you have ever painted, you know that all colors are composed of the primary RGB (Red-Blue-Green) spectrum. So, a basic representation of a color image involves at least 3 values for R, G and B. Depending on the color depth (8,16 or 32-bit), this can mean 24, 48 or 96-bits per pixel. That is a LOT of information. Hence, another colorspace is used for encoding stills and video - called YCrCb. The intensity of light on a pixel is called luma, and the color value (a composite of Red, Green, Blue) is called chroma. In practice we only need 3 values, Y (luma) Cr (Y - Red) and Cb (Y-Blue). The value of green can be derived from these 3 values. Now, the human eye is more sensitive to luma than chroma. So, a common scheme is to reduce the sampling for Cr and Cb. This is called 4:2:2 colorspace, where luma is sampled at twice the rate of chroma. A more efficient alternative is to sample Y at twice the rate of Cr and Cr at twice the rate of Cb. This is called 4:2:0 sampling. Obviously 4:2:2 sampling will stress the sensor circuitry and cause more errors.
MJPEG can offer 4:2:2 or 4:2:0 sampling, while AVCHD can only offer 4:2:0 sampling.
Finally we need to understand interlaced vs progressive footage. Consider standard NTSC rates of 60i or 30p. In progressive mode, a sequence of 30 still images are written to disk in 30p mode. In interlaced mode, the encoder reads the odd or even lines on each image. Thus even though the sensor is sending out 30 images each second, the encoder takes each image and encodes the odd lines on odd frames, and even lines on even frames. In interlaced mode, there are 60 calls to the encoder to write 1920x540 resolution images per second. In progressive mode, there are 30 calls to the encoder to write 1920x1080 resolution images per second. Obviously a progressive encoding for the progressive image generated by the sensor is more efficient but also more stressful for the encoder.
Having read this, lets start with the hack. First check this Serial FAQ to see if you can even hack your GH1.
1. Use a Windows PC for this. Things can work with Parallels or other emulators on a mac. Winebottler can cause a problem where the bottom part of the hack utility (with options for various hack settings) is not seen.
2. Download the LATEST version of ptool from here. http://www.gh1-hack.info/ptool3d.zip Unzip it into a GH1-hack directory
3. In the past, we had to modify each individual setting. It was a tedious task to setup a GH1 or GF1. Now we can have multiple settings files that can be used, as long as they are in the same directory as the ptool. Check out the Ptool FAQ and the various settings available.
4. Now I will offer what I do for my shoots. I use AVCHD as its the only choice for 24p/25p footage. 30p is pointless unless all you need is to post videos on Vimeo. There are 3 hacks, available for the GH1 which offer Reliable, Turbo and Extreme modes of the hack. I use 3 cheap SD cards, some 16MB cards I have lying around. Format them in the camera and load 1 setting per card as shown in the FAQ above. Use a sharpie to write down Reliable, Turbo and Extreme. The 3 settings are provided by lpowell.
They are :-
Reliable
Turbo
Extreme
The failure rates are obviously greater for Extreme than Turbo than Reliable. At night, or for places indoors use the Extreme patch. If it does not work, use the Turbo patch. For dense foliage, or clip with running water use the Reliable patch.
5. After recording, you may decide to view the video files for errors or out of curiosity. Please download cbrandin's StreamParser for more fun.
Last edited: