I have digitalized a set of old family VHS tapes. As you know, VHS relied on chroma subsampling. And the capture device creates files with the 4:2:2 tag. Now, when I encode again with ffmpeg to get smaller files but for archival purposes, should I specify '-pix_fmt yuv444p' to make sure the chroma images do not get further degradation, or by using the same subsampling scheme as the source (i.e. yuv422p) the chroma images are not difuminated further due to subsampling?
I am looking for a technical, objective answer. I don't mind if the degradation is subjectively small or something.
To better explain the question, let's say we are transcoding video A into B, where A was done originalyy with a 4:2:2 subsampling and we specify the same 4:2:2 scheme to create B. Then, which one of the following possibilities is true?
- Ffmpeg reads some tags inside video A and "knows" it was done using a 4:2:2 subsampling. Then, since the destination image has the same 4:2:2 scheme, it translates directly the chroma images into the destination video without performing any subsampling.
- Ffmpeg reads the original chroma image blindly and applies a 4:2:2 subsampling, no matter where the original material comes from.
The first option seems more logical but in that case, what would happen if the subsampling scheme we ask for in the destination video is different than the original? How do you "translate" consistently from, say, 4:2:0 to 4:2:2?
Edit: From my own tests, the accepted answer, and a little bit of thinking about it, it seems clear that using the same chroma scheme does not produce degradation, as long as the resolution and size of the image is kept unchanged. It's difficult to explain without doing some drawings, but there is an analog working with audio. A signal sampled at 44.1 kHz for instance, can be resampled at the same frequency without losing information. If, e.g. a square cluster of 4 luma pixels corresponds to one unique color value (4:2:0), then resampling that image will assign the same color value to that 4 pixels.