Define the reasons for the difference in the difference between the gray-scale summary
definition
Here is the definition of both in FFmpeg
av_pix_fmt_yuv420p, ///< planar YUV 4:2:0, 12BPP, (1 Cr & Cb sample per 2x2 Y samples)
av_pix_fmt_yuvj420p, ///< Planar YUV 4:2:0, 12BPP, full scale (JPEG), deprecated in favor of av_pix_fmt_yuv420p and setting Color_range
Note: The same point is not discussed here. difference between the manifestation of the difference
The difference between the two is that the color space is different.
Avcol_range_jpeg
/**
* MPEG vs JPEG YUV range.
*
/enum Avcolorrange {
avcol_range_unspecified = 0,
avcol_range_mpeg = 1,///< the normal 219*2^ ( n-8) "MPEG" YUV ranges
avcol_range_jpeg = 2,///< the normal 2^n-1 "JPEG" YUV
Ranges RANGE_NB,///< not part of ABI
};
The literal meaning of yuvj420p is "using the yuv420p of the JPEG color range, the pixel uses the range of values that represent the color."
YUV420P's pixel color range is [16,235],16 = black, 235 is white
The pixel color range of the yuvj420p is [0,255]. 0 indicates black, 255 is white
From this point of view, it seems that yuvj420p said more accurate. the reason for the difference
yuv420p corresponds to the TV.
The yuvj420p corresponds to the monitor. Gray Scale
What is the gray order? In general, a point that people see on the LCD screen, a pixel, is made up of three sub-pixel pixels, red, green, and Blue (RGB). Each sub-pixel, the light source behind it, can show a different level of brightness. The gray scale represents the level of the different brightness from the darkest to brightest. The more the middle level, the more exquisite the effect of the picture can be rendered. Take 8bit panel For example, can show 2 of 8 times, equal to 256 brightness levels, we call it 256 gray scale. Each pixel on the LCD screen is composed of different brightness levels of red, green and blue, which eventually form different color points. In other words, the color change of each point on the screen is actually caused by the gray-scale changes of the three RGB pixels that make up this point.
If the computer wants to display the accurate color, then must 0-255 gray-scale all complete. The loss of grey-scale means the loss of color. For PC hosts, the gray-level output is 0-255. When the gray-level output is 0, the whole black screen is displayed, and the gray level is 255, the whole white screen is displayed. Liquid crystal display in order to adapt to the PC mainframe, the acceptable gray-level signal range is also 0-255.
256 grayscale output graphs, if the PC is connected to the TV, there will be 13% of gray-scale loss and LCD TV is different, its gray scale range is 16-235, when the signal 16 o'clock, the LCD TV to restore it to white, when the signal 235, display full white screen. Television input devices, such as cable TV signals, DVD players and other output is also 16-235 of gray-level signal. If the LCD TV receives a signal below 16, it will be considered a dry scratch, will not be displayed, if received more than 235 of the signal, most LCD TV can only do cutting processing, that is still as 235 signal to deal with. To put it simply, 0-15 shows all pure black, 236-255 shows all white, the middle of the transition total loss.
(The paragraph above is a section from the "difference between LCD TV and liquid crystal display") Summary
There's no big difference.
If the bias is not serious, you can also explain to the customer that the color of the display, not your program problem.