MaxLt
10th April 2024, 19:36
I ran into an odd issue with videos I need to compress.
The video is of gymnasts performing, and the issue is particularly with floor routines. It's a 4K 60 FPS HLG HDR video with an unimportant mostly flat background (beige carpet) but a very important human quickly moving in random directions. The videos are for coaching and judging, so they are different from the broadcast style - no motion blur (shutter 1/200 or faster), and more zoomed out to show the position on the carpet better. There is low noise and no grain.
In compression, the priority is entirely on the gymnast, and it's important to be able to see fine details, like toe and hand positions and even facial expressions (judges want them to smile, no matter how gruelling the stuff they do is).
Compressing it straight with default x265 settings and CRF 19 (for example) crushes the video into ridiculously low 7-9mbit with much of the details being just blurred, especially high-motion parts. My guess is that much of the frame being flat carpet, the low contrast between carpet and gymnast, and the gymnast being a small part of the frame fool the compression algo into treating it as a low-complexity scene.
Lowering CRF helps very little with this problem (it seems most of the extra bits go not to gymnast but elsewhere) and also makes zoomed-in scenes shoot through the roof (>150Mbit, and I'm trying to keep it under 100mbit). I tried no-sao, and it helped a bit but also added some (small) artifacts around quick-moving limbs and on faces.
I guess I need to "tell" hevc to pay more attention and give more bits to that small, low-contrast, quick-moving object on a very flat and static background.
Any ideas? :confused:
The video is of gymnasts performing, and the issue is particularly with floor routines. It's a 4K 60 FPS HLG HDR video with an unimportant mostly flat background (beige carpet) but a very important human quickly moving in random directions. The videos are for coaching and judging, so they are different from the broadcast style - no motion blur (shutter 1/200 or faster), and more zoomed out to show the position on the carpet better. There is low noise and no grain.
In compression, the priority is entirely on the gymnast, and it's important to be able to see fine details, like toe and hand positions and even facial expressions (judges want them to smile, no matter how gruelling the stuff they do is).
Compressing it straight with default x265 settings and CRF 19 (for example) crushes the video into ridiculously low 7-9mbit with much of the details being just blurred, especially high-motion parts. My guess is that much of the frame being flat carpet, the low contrast between carpet and gymnast, and the gymnast being a small part of the frame fool the compression algo into treating it as a low-complexity scene.
Lowering CRF helps very little with this problem (it seems most of the extra bits go not to gymnast but elsewhere) and also makes zoomed-in scenes shoot through the roof (>150Mbit, and I'm trying to keep it under 100mbit). I tried no-sao, and it helped a bit but also added some (small) artifacts around quick-moving limbs and on faces.
I guess I need to "tell" hevc to pay more attention and give more bits to that small, low-contrast, quick-moving object on a very flat and static background.
Any ideas? :confused: