Review: V-Nova Perseus: Does its Compression Live Up to the Hype?
As mentioned earlier, V-Nova encoded all Perseus-encoded files for me, which I decoded in my office for objective quality benchmarks and playback performance testing. V-Nova encoded three test clips I’ve used in the past, a real-world test file (the New file) at 1920x1080 resolution, and excerpts from Blender Foundation movies Sintel and Tears of Steel at 1920x856 resolution. V-Nova encoded all clips to 500Kbps, 1Mbps, 1.5Mbps, 2Mbps, 3Mbps, and 4Mbps. In addition to resolution and data rate controls, the Perseus codec has one encoder setting in which the user chooses between Robust and Sharp. V-Nova sent clips encoded with both settings.
With these clips in hand, I produced equivalently sized MP4 and HEVC clips in-house. Since the Perseus clips are all constant bitrate (CBR), I produced both sets of clips in CBR. With x264/FFmpeg, I set the target data rate, max data rate, and buffer to the same target to achieve a relatively constant bitrate. With x265, I did the same, and I inserted the “–strict-cbr” switch as well. With both encoders, I used the medium preset, which is the default, and two-pass encoding. Then, to simulate live encoding with HEVC, I re-encoded the New clip using x265’s fast preset in a single pass.
I calculated the Peak Signal-to-Noise Ratio (PSNR) and Multi-Scale Structural Similarity (MSSSIM) values for all clips using the Moscow State University Video Quality Measurement Tool (VQMT), and the SSIMplus score using the SSIMWave Quality-of-Experience Monitor. In general, the results from all tests tracked what’s shown in Figure 3. In a nutshell, here are my findings:
- HEVC always delivered the best quality, even in Fast mode.
- Perseus delivered better quality at the low end than MP4, but H.264 crossed over between 1.5Mbps and 3Mbps in all tests for all clips.
- Perseus Robust was almost always better than Perseus Sharp except at the 500Kbps configuration.
Figure 3. PSNR comparisons for the New clip.
The fact that HEVC delivered higher quality than Perseus is not surprising given that the Hybrid Perseus files in our tests were using H.264 for the lower levels, not HEVC. A fairer and more relevant test would be HEVC quality compared with a hybrid Perseus-encoded file built upon an HEVC-encoded file. This is a critical point. It’s easy to read these results as proof that HEVC delivers higher quality than Perseus, but until we can compare hybrid Perseus with HEVC as the base layer, or pure Perseus with HEVC-encoded video, that claim can’t be made.
While at Sky in Italy, I compared H.264-encoded clips against Perseus-encoded clips side-by-side with two large screen TVs connected to the service’s set-top boxes. With H.264 as high as 8Mbps and Perseus as low as 2.5Mbps, I saw very little difference in quality, even when I stopped playback and compared single frames. It may be that x265 and FFmpeg working offline output higher quality than the real-time encoders used by Sky in Italy, which is typically the case. So I’m not sure I would put all my evaluation eggs in the objective benchmark basket, though you certainly can’t discount the objective benchmarks entirely.
The other point relates to how Perseus degrades, particularly as compared with HEVC when simulating live operation by encoding in a single pass and using the fast preset. This is shown in Figure 4, which is the Results visualization screen from the Moscow State University VQMT, which plots the MSS-SIM results for the Perseus Sharp clip (in red) and the HEVC clip (in blue) at 1500Kbps. As you can see, the HEVC clip has significant drops in quality that would be noticeable to users, typically at a scene change. Though HEVC’s overall score was higher than the Perseus clip’s, Perseus delivers a more consistent experience without the transient quality drops.
Figure 4. Dips in the blue plot reveal noticeable quality drops in the HEVC-encoded clip in the single-pass encode (fast preset).
Perseus’ graceful degradation was also particularly noticeable in comparisons with H.264 in the very low data rates. Where H.264 often showed macroblocks, Perseus simply lost detail, which is much less distracting.
Highly Efficient Playback
I tested playback efficiency on a Samsung Nexus 10 tablet, using the MX Player for HEVC and H.264, and the VisualOn player for Perseus, enabling hardware decode in both players. I measured CPU Utilization with an app called CPU Monitor Advanced Pro while playing back the New file at 4Mbps and the Sintel file at 3Mbps. Average CPU consumption was 29.5 for H.264, 31.5 for Perseus, and 75 for HEVC.
Interestingly, during my first pass with Perseus, hardware decode wasn’t enabled and CPU use averaged 68.5, just slightly behind HEVC. After chatting with V-Nova, I enabled hardware H.264 decode, which dramatically reduced Perseus’ CPU load.
I also tested decode on the Intel NUC using the same two files, displaying the Perseus file via V-Nova’s Linux decoder and playing the HEVC and H.264 files using FFplay. I recorded 1 minute of playback in System Monitor. Figure 5 shows the comparison between HEVC and Perseus when playing the New clip. On this computer, Perseus decode was slightly lower than HEVC, with a much more consistent and less bursty usage pattern. For the record, H.264 playback was slightly lower than Perseus, right around 20 percent.
Figure 5. Perseus requires lower and more consistent CPU usage than HEVC.
It’s tough to know what conclusions to draw from the second set of tests. While the graphics chip that powers the NUC has H.264 playback acceleration, I couldn’t tell if it was enabled by FFplay or the V-Nova player.
If you’re distributing H.264 video to set-top boxes and are looking for a way to reduce your streaming bandwidth costs, Perseus is worth checking out. Though the H.264 objective comparisons weren’t encouraging at higher bitrates, Sky Italia’s results certainly warrant a look, particularly given the dearth of other software-only upgrade alternatives.
If you’re distributing ultra-low-bitrate video to mobile devices, the quality and playback tests reported earlier, plus the FastFilmz design-in, make Perseus a natural. Note that VisualOn has an iOS player as well as Android; FastFilmz focused on Android because of Android’s popularity in its target market.
In a more general sense, it’s tough to see Perseus playing a role in general-purpose streaming for browser-based playback anytime soon, since getting playback in browsers is so problematic. This is probably okay with V-Nova’s management and investors, since the revenue opportunities for browser-based playback seem minimal. The world really doesn’t need another competitor with VP9 and the Alliance for Open Media AV1 codec in this space.
Overall, V-Nova has made substantial progress over the last year, with real products and real customers. The management and staff that I met were impressive, as was the investment group. Anyone who still thinks that Perseus is an April Fools’ joke will probably find that the joke is on them.
This article originally ran in the June 2016 issue of Streaming Media magazine as “Review: V-Nova Perseus.”
Every compressionist fantasizes about discovering the perfect configuration option, but our columnist learns that some results are too good to be true.
Hybrid Perseus is now using HEVC as the base layer, and V-Nova is working on adding inter-frame compression to the codec.
In this session, learn if and how H.265 compression and deployment options can be used in typical online streaming workflows, and, more importantly, if your target audiences can benefit.
Flash or Silverlight? Adaptive streaming or regular? This guide helps you choose your target platforms for video delivery and then configure the streams yourself.
Companies and Suppliers Mentioned