GoPro Open Sources the CineForm Codec
Representing the Largest Contribution to Open Source from GoPro to Date
From the desk of David Newman,
GoPro Technical Fellow and former CineForm CTO
The CineForm codec has been in development for 16 years, overseeing many innovations in the video production market: it ushered transition from standard definition to HD, and it was the first to do cinematic compression for RAW capture beyond HD. From there, it became first and only editing codec to support 3D/Stereoscopic. The CineForm codec then ushered the transition from HD to 4K, and now, 360° video beyond 4K.
As one of the original developers of CineForm, I never imagined that this intermediate codec would have such a long future. The CineForm codec uses a fast wavelet technology which conveniently improves in efficiency as the resolution goes up. However, I never foresaw how far resolution would climb and how quickly. The seemingly never-ending increase in resolution is happening again with 360° video. GoPro could not have launched Omni (a 8Kp30 and 6Kp60 video product) without CineForm, as there are no other high-performance, cross-platform codecs that can handle these resolutions. With the upcoming GoPro Fusion, the included desktop utilities will enable 5.2K workflows via the CineForm codec, already bundled with Adobe Creative Cloud products for a streamlined super-high-resolution workflow.
GoPro Fusion Spherical Camera
GoPro has been working on 360° technologies for several years, and is well aware that 4K resolution is insufficient to deliver a product that would meet GoPro’s high level of quality. The problem is there are no hardware based compression solutions that could be put inside a GoPro-sized camera. Popular standards like H.264 can't compress beyond 4K, and the bleeding-edge HEVC compression isn't currently optimized (hardware accelerated) beyond 4K. Today there are no multiple-lens cameras that can compress to a single image beyond 4K. Here at GoPro, we have need beyond that of the existing standards, and this is not the first time that we’ve been in this situation.
Throughout the history of GoPro, our cameras have been on the cutting-edge of technology, producing content that was well beyond the capabilities of consumer hardware to support. The GoPro HERO line of cameras introduced a series of new non-standard resolutions to help capture GoPro's unique perspectives such as 960p, 1440p, 2.7K and now 5.2K. When these resolutions were first introduced, many consumer laptops weren't equipped with hardware to offer smooth playback, so the CineForm codec was used behind the scenes to make playback and editing smoother and faster.
This has been the role of CineForm even before its acquisition by GoPro in 2011. The CineForm compression format was designed for speed on personal computers, so it could bridge the gap between a cutting-edge camera and the existing computer hardware that needed to present the images. CineForm has stayed well ahead of the video standards which take a long time to arrive in hardware, from our laptops to our smartphones. For the upcoming Fusion, just like with Omni, the video is stitched after capture using CineForm to hold more than today's standards can deliver.
Since it is so clearly evident that CineForm is crucial to advancing 360° imaging, GoPro is open-sourcing it to help third-party software developers accelerate high-resolution 360 and future workflows. Eventually, video standards will be the road in which high-resolution consumer 360 cameras will run, but today, where we're going…we don't need roads.
You can join the CineForm open source effort at https://gopro.github.io/cineform-sdk/