[Libav-user] Encoding with no compression with OpenH264
muller at vki.com
Tue Mar 8 22:25:25 CET 2016
First of all, thanks for your patience on staying with me on this. I truly appreciate it.
I'm trying to understand and digest your responses:
>> version 3.0 Copyright (c) 2000-2016 the FFmpeg developers
>Still not recommended...
Understood. I may need to get the git head.
>> Stream #0:0: Video: png, rgb24(pc), 1536x856,
>> 10 fps, 10 tbr, 10 tbn, 10 tbc
> Note that there is an unavoidable quality loss if you compress rgb input with (baseline) h264 which implies yuv420p. If quality is really relevant, use qtrle (or keep png which can also be put into mov).
I use the command line ffmpeg and asked for the qtrle codec. You are right: the quality is great. I assume that by default it does not keep the png files.
1) How could I force it to do just that?
2) I assume that if I choose to write a MOV file instead I can skip the RGB->YUV conversion step and use the RGB directly. In this case I would call avformat_alloc_output_context2(&oc,NULL,"mov",NULL), correct?
>> Stream #0:0: Video: h264 (libopenh264) ( / 0x0021),
>> yuv420p, 1536x856, q=2-31, 200 kb/s,
>If you want to keep this (known to be bad quality) encoder, you have to use a very high bitrate if you want the best possible quality.
> Test with something like -b:v 20k
No visible difference between the 2 files.
More information about the Libav-user