I have some still shots from a security camera. I want to reduce the archive size while keeping the details. I use
-qb for encoding rather than
-crf blurs the moving objects.
I am experimenting with x265 (HEVC), using FFmpeg 4.2.2. The results are indeed impressive. If I wanted to encode a movie for normal watching, it is a great improvement versus x264 (I observe up to 60 % size, while having better quality).
However, the decoding takes a lot of processing power. I have a 7 years old Lenovo T540, which is still good for pretty much everything, but when I play a x265 video in VLC, it can't keep up and when a new object comes to a scene, the canvas turns gray with artefacts until the next I frame (I assume).
-tune fastdecode this is fixed.
However: What is that I am giving up with
fastdecode? I have found a few resources, but I assume that without the knowledge of x265 internals, I won't understand too much. It turns off these features (uses these flags) - see x265 docs:
--no-deblock --no-sao --no-weightp --no-weightb --no-b-intra
This sounds like disabling quite a lot of key features of x265. Here is the x264 wiki page with some more explanation.
Question: When using
fastdecode, doesn't x265 actually become worse than x264? AFAICT, default x264 preset uses these features, and yet I have no issues playing them. Is it due to HW support? If there is a high chance of dramatic future improvements in playback, then I would opt for the full-blown x265 encoding. Thanks.