Raw pictures with a GoPro Camera

There is a hack to shoot pictures in .raw encoding using GoPro HERO3 Black camera.
In order the hack to work, the camera will take a picture 5 seconds after you turn the camera on and it will render a .raw that will take the camera around 14 seconds, it will stop rendering the .raw picture when it takes another photo. Then it turns off. See the list below for better understanding:
  1. You turn the camera on
  2. The GoPro waits 5 seconds
  3. The GoPro takes a picture (2 beeps)
  4. The GoPro waits ~14 seconds (you will hear a beep,
    the camera will take a picture when it finishes rendering the other image. The picture taken after the rendering of the first picture will NOT be in raw)
  5. Then you can turn the camera off 5 seconds after the second picture is taken (the dummy one).

So the camera acts as in One button mode. The GoPro will generate these files:

Reddit

This hack has been researched and corrected by users in reddit. If you want to join the conversation, just drop your comment.

Demo

Normal JPG imageRAW image without text file post processingRAW image with text file post processing
(done by /u/RarelyCoherent)
See the image in full screen:
http://i.imgur.com/x85tMCu.jpg
See the image in full screen:
http://i.imgur.com/hMCQTr1.png?1
See the image in full screen:
http://i.imgur.com/iZoaz9h.jpg

Download the RAW image here

Download the JPG without text post processing image here

Download the txt information here

Download the .bin, .Y and .UV files: here

Download a zip file containing 3 pictures (1 picture is files .RAW, .JPG, .Y, .UV, .BIN, .bin): here


Download


Download the hack here: autoexec.ash
Here are instructions on how to install the hack on your GoPro camera: instructions

Handling the raw pictures


If you are on linux, install UFRAW, an easy way is sudo apt-get install ufraw
then open a shell and $ ufraw

Click on the screenshot for full screen image:


You can use also Shotwell from Ubuntu.

What about .Y file + .UV file = YUV!?

The GoPro generates certain files when taking a raw picture, listed below the table. The interesting files are the .RAW, the .Y, the .UV and the .txt information

So, lets see this in action: The GoPro takes a picture, it generates GOPR2853.JPG, GOPR2853.txt, GOPR2853.RAW (24MB), GOPR2853.UV (12MB), GOPR2853.Y (12MB)

So, GOPR2853.UV (12MB) + GOPR2853.Y (12MB) = GOPR2853.RAW (24MB)!


First of all, what is YUV? (GOPR2853.UV 12MB + GOPR2853.Y 12MB)

YUV is a color space typically used as part of a color image pipeline.

the .RAW file is a "neutral" file (I mean, no container such as .DNG and .CR2) so its a bit useless because the only program that can edit the picture is UFRAW or Shotwell. The .RAW is the sum of the .Y file and the .UV file.

GoPro's Ambarella Shell command t app yuv2jpg seems to assemble the two 12MB files into a jpg.

Video