Mercurial > mplayer.hg
view DOCS/tech/swscaler_methods.txt @ 24589:9118be6575da
demux_audio.c: Fix timestamp handling
The code calculated the pts values of audio packets by adding the length
of the current packet to the pts of the previous one. The length of the
previous packet should be added instead. This broke WAV timestamps near
the end of the stream where a short packet occurs.
Change the code to store the pts of the next packet instead of the last
one. This fixes the WAV timestamps and allows some simplifications.
MP3 timestamps are not affected as packets are always treated as
constant decoded length, and FLAC timestamps still have worse problems
(FLAC is treated as as if it was constant bitrate even though it isn't).
Also store the timestamps as double instead of float.
author | uau |
---|---|
date | Mon, 24 Sep 2007 21:49:56 +0000 |
parents | 567c3d5da0ca |
children | 0f1b5b68af32 |
line wrap: on
line source
artifact types: --------------------------------------------------------------------- ringing wave or noise like patterns around sharp edges bad: sinc, lanczos (with high filter length) acceptable: lanczos (with low filter length), cubic, spline ok: area, (fast)blinear, gauss, point blur loss of detail / high frequency bad: gauss with high variance acceptable: (fast)bilinear, area ok: others aliasing (only downscale) straight lines look like staircases areas of high detail look worse regular patterns turn into a funny looking mess (moire patterns) bad: fast bilinear, point, gauss with low variance acceptable: area ok: others blocky (upscale only) looks like the image is made of rectangular blocks like a mosaic bad: point ok: others recommendations: (based upon my personal opinion many ppl might disagree ...) --------------------------------------------------------------------- the recommended scalers for upscaling: fast_bilinear, point if speed is important cubic, spline, lanczos if quality is important the recommended scalers for downscaling: fast_bilinear, point if speed is important gauss, bilinear if quality is important cubic, spline, lanczos if a sharper picture is important note: when encoding at a limited amount of bits (not constant quantizer) then a slightly blurred input might look better after decoding than a slightly sharpened one, especially for lower bitrates sws numbers / names / artifact types ------------------------------------------------------------------------- r ringing b blurry a aliasing (downscale only) m mosaic (blocky) (upscale only) -sws 0 fast bilinear bA -sws 1 bilinear b -sws 2 bicubic high sharpness r low sharpness b -sws 3 experimental ???? -sws 4 nearest neighbour AM -sws 5 area ba -sws 6 luma bicubic / chroma bilinear r -sws 7 gauss low sharpness B high sharpness AM -sws 8 sinc R -sws 9 lanczos long filter R short filter b -sws 10 bicubic spline r Notes: area upscale is identical to bilinear