annotate DOCS/tech/swscaler_methods.txt @ 33298:f0733d37f56b

Fix bug with gfree() definition in Win32 GUI. gfree (taking pointer of pointer) was erroneously defined free (taking pointer). Get rid of gfree() by using suitable free() statements. Patch by Stephen Sheldon, sfsheldo gmail com.
author ib
date Fri, 06 May 2011 09:35:46 +0000
parents 0ad2da052b2e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
1
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
2 artifact types:
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
3 ---------------------------------------------------------------------
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
4 ringing
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
5 wave or noise like patterns around sharp edges
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
6 bad: sinc, lanczos (with high filter length)
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
7 acceptable: lanczos (with low filter length), cubic, spline
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
8 ok: area, (fast)blinear, gauss, point
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
9
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
10 blur
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
11 loss of detail / high frequency
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
12 bad: gauss with high variance
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
13 acceptable: (fast)bilinear, area
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
14 ok: others
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
15
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
16 aliasing (only downscale)
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
17 straight lines look like staircases
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
18 areas of high detail look worse
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
19 regular patterns turn into a funny looking mess (moire patterns)
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
20 bad: fast bilinear, point, gauss with low variance
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
21 acceptable: area
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
22 ok: others
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
23
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
24 blocky (upscale only)
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
25 looks like the image is made of rectangular blocks like a mosaic
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
26 bad: point
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
27 ok: others
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
28
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
29 recommendations: (based upon my personal opinion many ppl might disagree ...)
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
30 ---------------------------------------------------------------------
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 16295
diff changeset
31
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
32 the recommended scalers for upscaling:
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
33 fast_bilinear, point if speed is important
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
34 cubic, spline, lanczos if quality is important
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
35
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
36 the recommended scalers for downscaling:
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
37 fast_bilinear, point if speed is important
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
38 gauss, bilinear if quality is important
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
39 cubic, spline, lanczos if a sharper picture is important
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
40
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 16295
diff changeset
41 note: when encoding at a limited amount of bits (not constant quantizer)
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 16295
diff changeset
42 then a slightly blurred input might look better after decoding than a slightly
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
43 sharpened one, especially for lower bitrates
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
44
16295
567c3d5da0ca More typos. One noticed by Nico. Added an empty line at the end to make syncmail happy
gpoirier
parents: 16294
diff changeset
45 sws numbers / names / artifact types
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
46 -------------------------------------------------------------------------
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
47 r ringing
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
48 b blurry
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
49 a aliasing (downscale only)
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
50 m mosaic (blocky) (upscale only)
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
51
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
52 -sws 0 fast bilinear bA
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
53 -sws 1 bilinear b
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
54 -sws 2 bicubic high sharpness r
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
55 low sharpness b
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
56 -sws 3 experimental ????
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
57 -sws 4 nearest neighbour AM
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
58 -sws 5 area ba
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
59 -sws 6 luma bicubic / chroma bilinear r
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
60 -sws 7 gauss low sharpness B
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
61 high sharpness AM
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
62 -sws 8 sinc R
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
63 -sws 9 lanczos long filter R
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
64 short filter b
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
65 -sws 10 bicubic spline r
6685
ca8da0cc0cdf swscaler methods recommendation & artifact types
michael
parents:
diff changeset
66
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 16295
diff changeset
67 Notes:
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30633
diff changeset
68 area upscale is identical to bilinear