When we started to work on REC, we set out to create a full-featured video app useful to professionals and accessible to everyone. In our first release we concentrated on the basics —manual controls, intuitive design, judicious auto exposure system—, but of course we kept working on what the evolution should be. The new version of REC is now available, and it is a major update that brings a few features rarely seen in even the most professional apps.
10-bit HDR video recording (iPhone 12 only)
We’ve been waiting for the new iPhones to be announced since around WWDC (Apple’s Developer Conference) in June. At the time we were debating whether to introduce some sort of log format to allow for better color grading in post-production. We decided against it for a few reasons:
- Footage shot and stored in that format usually looks dull and plain until you have done any grading. If you want to imagine what it could look like, you need to apply some sort of transformation table (a color LUT, or lookup table). This might be OK for professionals that have planned a post-production step, but it’s inconvenient for everyone.
- No matter what method you choose to encode the colors, the fact remains that the iPhone sensors deliver (or used to deliver) video data in 8-bit color depth. You can choose what colors you want to preserve the most, but you won’t be able to get more information than what the original sensor provides.
- We suspected (or, should I say, hoped) that the iPhone 12 sensor would have support for 10-bit color capture. We haven’t discussed it with anybody at Apple, we just thought that the camera systems usually get a lot of love in new devices, and we imagined the time was ripe for such a change.
So we crossed our fingers and waited, preparing our code as if a new 10-bit sensor was made available at some time. And of course, it was.
So our first major feature is the ability to capture footage in 10-bit HDR, and save it in such a way that it looks great in any screen, even before the color grading. The format is called HLG (Hybrid Log Gamma), and it is the same one used by Apple for videos shot with the system camera, when 10-bit recording is active.
What’s the difference, then? In addition to the UI and the manual controls, REC provides three different bitrate qualities that squeeze the last bit of performance out of the video encoder.
If you set bit rate to Normal, REC configures the HEVC video encoder at a bit rate of about 25 Mbps. This might seem low, taking into consideration the amount of information that has to be stored. However, HEVC encoders have variants called profiles, and the one used to encode 10-bit color is extremely efficient. The profile used in previous devices is called “Main”, and the new one is simply called “Main 10” (those are the actual official names from the standard HEVC specification).
In a way, it’s like the HEIF vs JPG formats for still pictures: a HEIF is much smaller than a JPG of the same size (or, given two files with the same size, HEIF looks better). When we tested on our new iPhone 12 and 12 Pro (which we received last Friday, just like everyone else), we were surprised that this was very much the case in 10-bit videos: the codec is very efficient and can do great with a relatively low bitrate.
So, for “Normal” bitrate, we use the Main 10 profile at Level 5 (L5). The Level is the final parameter you can tweak to balance quality vs storage: a higher level means higher quality at the cost of videos taking larger amounts of storage.
To the best of our knowledge, this is exactly the same thing Apple does in the system camera.
- However, if you select High instead of “Normal”, we configure the encoder to use Level 6.1. This allows for a much higher bitrate, depending on the nature of the scene and how much the exposure is changing. This provides better quality, but videos are much larger.
- In addition to that, you may also chose Max quality. If you do so, we ask the encoder to use Level 6.2, which is the best one available in the iPhone 12 and iPhone 12 Pro. In this mode you’ll get the best quality that the sensor and the encoding pipeline can possibly cope with.
To give you a broad idea of how they compare in terms of size, we took the following figures from one of our tests. This was a handheld outdoors scene in broad daylight, with minor subject movement, shot in 4K @ 30 fps, with HDR enabled.
- A minute at “Normal” took about 191 MB of space. A bitrate of 25 Mbps was used.
- A minute at “High” (similar framing) took 691 MB of disk space. The bitrate was 91.2 Mbps.
- A minute at “Max” took 750 MB of space. It could have gone much higher if the scene had demanded it.
To sum it up: you can use REC to shoot 10-bit HDR videos in different qualities, and use all that color information in post-processing to achieve great results.
Of course, 10-bit recording is only available in iPhone 12 or better, and it requires the use of the HEVC encoder.
Timecode support, even for Tentacle Sync devices!
This is another area that has traditionally been associated with high-end cameras and expensive budgets. The idea is simple, though: if you use several cameras and/or several microphones to record a scene, then you need to be able to synchronize everything together when you want to produce your final cut. Timecode is a mechanism to assign the same timing information to all the video and sound clips, so it becomes much easier to line them up together when editing.
Traditional timecode solutions, however, are very expensive and require time to setup and manage. This is where Tentacle Sync comes to the rescue. Their products (the Tentacle Sync E and the Tentacle Track E) are small devices, really simple to use and synchronize. They can provide timecode via audio, and also via bluetooth. This way you have a lot of flexibility to configure your shooting, and it will be dead simple to synchronize everything when you edit your movie. This is a great way to record multi-angle video, using your phone as another camera!
We have spent the summer working with the Tentacle Sync team, and we are proud to announce that REC 2.0 provides support for Tentacle devices through bluetooth, giving you a simple and very accurate synchronization solution. Just select the Tentacle you want to get timecode from in REC’s settings, and that’s it. From that point on, all videos recorded will contain a timecode track with precise timing information.
In case you don’t have a Tentacle device (they are highly recommended), you can also use the “Time of Day” synchronization method, which simply records your device’s clock information alongside the video. Just make sure that the rest of your devices are using the same time. You might not get frame-accurate timing, but it should be close.
Stereo Sound (iOS 14 only)
REC 2.0 takes full advantage of the recent release of iOS 14, by bringing stereo recording to your iPhone videos. At this time, stereo is only available as an option for internal microphones. In order to use it, you first need to select one of the compatible microphones and then the Stereo polar pattern. If you don’t need Stereo, you can also select other polar patterns that are better suited for the kind of work you are producing. For example, you may use the “Front” microphone (which captures sound coming into the screen) and the Cardioid polar pattern if you want to record your voice for a podcast. REC 2.0 shows you exactly what’s happening when you select each of the different options, to make it as easy as possible for you to choose the best configuration.
Timecode, 10-bit HDR and Stereo are the three major features we are most excited about, but we have also given some love to the rest of the app. We’ve improved the video browser with additional options, and fixed all the bugs we’ve found (so far!). Please, let us know your thoughts about the new version by using the contact option in the app’s menu!