]> git.sesse.net Git - ffmpeg/blobdiff - doc/swscale.txt
doc/indevs: Note improved behaviour of kmsgrab with Linux 5.7
[ffmpeg] / doc / swscale.txt
index 5909bf150a0cc8e99a04e8fb7bda8c3ee1111a6c..dbb4e2901ecc83bfaa2f2557f1e6e474e605a26a 100644 (file)
@@ -10,12 +10,12 @@ Current (simplified) Architecture:
                /                       \
        special converter     [Input to YUV converter]
               |                         |
-              |          (8bit YUV 4:4:4 / 4:2:2 / 4:2:0 / 4:0:0 )
+              |         (8-bit YUV 4:4:4 / 4:2:2 / 4:2:0 / 4:0:0 )
               |                         |
               |                         v
               |                  Horizontal scaler
               |                         |
-              |      (15bit YUV 4:4:4 / 4:2:2 / 4:2:0 / 4:1:1 / 4:0:0 )
+              |     (15-bit YUV 4:4:4 / 4:2:2 / 4:2:0 / 4:1:1 / 4:0:0 )
               |                         |
               |                         v
               |          Vertical scaler and output converter
@@ -30,7 +30,7 @@ slices, that is, consecutive non-overlapping rectangles of dimension
 
 special converter
     These generally are unscaled converters of common
-    formats, like YUV 4:2:0/4:2:2 -> RGB15/16/24/32. Though it could also
+    formats, like YUV 4:2:0/4:2:2 -> RGB12/15/16/24/32. Though it could also
     in principle contain scalers optimized for specific common cases.
 
 Main path
@@ -49,21 +49,21 @@ Main path
 
 Input to YUV Converter
     When the input to the main path is not planar 8 bits per component YUV or
-    8-bit gray then it is converted to planar 8-bit YUV. 2 sets of converters
+    8-bit gray, it is converted to planar 8-bit YUV. Two sets of converters
     exist for this currently: One performs horizontal downscaling by 2
-    before the conversion, the other leaves the full chroma resolution
+    before the conversion, the other leaves the full chroma resolution,
     but is slightly slower. The scaler will try to preserve full chroma
-    here when the output uses it. It is possible to force full chroma with
+    when the output uses it. It is possible to force full chroma with
     SWS_FULL_CHR_H_INP even for cases where the scaler thinks it is useless.
 
 Horizontal scaler
     There are several horizontal scalers. A special case worth mentioning is
-    the fast bilinear scaler that is made of runtime-generated MMX2 code
+    the fast bilinear scaler that is made of runtime-generated MMXEXT code
     using specially tuned pshufw instructions.
     The remaining scalers are specially-tuned for various filter lengths.
     They scale 8-bit unsigned planar data to 16-bit signed planar data.
-    Future >8 bits per component inputs will need to add a new scaler here
-    that preserves the input precision.
+    Future >8 bits per component inputs will need to add a new horizontal
+    scaler that preserves the input precision.
 
 Vertical scaler and output converter
     There is a large number of combined vertical scalers + output converters.
@@ -96,4 +96,3 @@ would benefit from it.
 Also, as already hinted at, initFilter() accepts an optional convolutional
 filter as input that can be used for contrast, saturation, blur, sharpening
 shift, chroma vs. luma shift, ...
-