As announced the BBC have launched a UHD1 channel using HEVC on the COM8 multiplex.
This uses standard DVB-T2 modulation parameters and can be captured using an off the shelf USB capture stick. FFmpeg supports HEVC decoding and by extension most other Open Source multimedia software.
So the output of ffprobe looks like this:
Input #0, mpegts, from ‘BBCUHD1.ts’: Duration: 00:00:45.35, start: 404.054433, bitrate: 35862 kb/s Program 61440 Metadata: service_name : Test service_provider: Stream #0:0[0x65]: Video: hevc (Main) ([36][0][0][0] / 0x0024), yuv420p(tv), 3840×2160 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0:1[0x66](eng): Audio: aac_latm ([17][0][0][0] / 0x0011), 48000 Hz, stereo, fltp Program 61504 Metadata: service_name : Test. service_provider: Stream #0:0[0x65]: Video: hevc (Main) ([36][0][0][0] / 0x0024), yuv420p(tv), 3840×2160 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0:1[0x66](eng): Audio: aac_latm ([17][0][0][0] / 0x0011), 48000 Hz, stereo, fltp
As expected Main Profile HEVC at 59.94 fps is used. Let’s try decoding it (Sandy Bridge Xeon 4-cores 3.4GHz):
./ffmpeg -benchmark -i BBCUHD1.ts -f rawvideo -y /dev/null
<snip>
frame= 187 fps= 45 q=0.0 size= 2272050kB time=00:00:03.11 bitrate=5966002.6kbit
45fps is not bad but significantly below 59.94fps to watch the match in realtime. On the OpenHEVC decoder that will eventually have parts merged in FFmpeg on a 2x 6 core Xeon, it’s possible to decode at around 127fps. This is because it has intrinsics for more functions (notably the transforms) than mainline FFmpeg. However, FFmpeg does not accept intrinsics for maintenance and performance reasons. Plans are afoot to get this viewable in realtime before the first match is on. More technical information will be posted in due course.
At the moment the feed is showing a recording of some trees and the back of the W12 Media Village.
Read part two which has an analysis of the HEVC encoding technology.