I'm making use of x264 for remote desktop streaming. The goal is to achieve both low bitrate and high video quality within the computation budget. The current parameter set I used almost achieve this goal, but it fails in handling images with many texts (e.g. browsing websites scene). The text in image is blurred and affects the user experience.
I think it's the quantization in x264 that causes this. The quantization after DCT transform will eliminate high frequency sinals which mainly correspond to texts in image.
So, my question is how to improve the text quality in x264 encoding?
My idea: when the bitrate stays at a low level for a period of time,
- set
crf
to be 0 (lossless); - encode current frame as an IDR frame and then send it;
- recover the
crf
.
Also, a flag should be used to prevent resending when bitrate keeps low for a long time. I haven't try this method since I don't know how to mark a frame as an IDR frame manully and then encode it.