summaryrefslogtreecommitdiff
path: root/libavcodec/tscc2.c
diff options
context:
space:
mode:
authorJindřich Makovička <makovick@gmail.com>2013-03-09 10:08:09 +0100
committerAnton Khirnov <anton@khirnov.net>2013-03-22 20:09:34 +0100
commit20a8ee3061e6d777600c13db731bee3c25878991 (patch)
tree103f498a4e78898034296d1f5d249e2c1bfcc7df /libavcodec/tscc2.c
parent1e8b9738fa70e20967ddb542d2f9d5552fc51ec6 (diff)
af_asyncts: fix compensation and PTS monotonicity
This patch improves af_asyncts behavior on streams with bogus PTS, which are either non-monotonic, or contain PTS jitter, and trigger the non-monotonicity error. With this patch, af_asyncts is able to correct these streams and avoid the error. Firstly, it fixes resample compensation calculation by supplying proper units to avresample_set_compensation (sample count per second instead of sample count per some arbitrary frame size). Also, the calculation of the compensation itself is fixed - delta is proportional to an adjustment of the compensation, not the compensation itself. Ideally, the compensation should converge to a value that keeps delta at zero. To be able to deal with sources with PTS jitter even without resampling, small PTS errors are adjusted, so the output frames do not overlap. Finally, one more monotonicity check is added. The FATE reference changes because now there is 8 less samples of silence because of the pts jitter. Signed-off-by: Jindřich Makovička <makovick@gmail.com>
Diffstat (limited to 'libavcodec/tscc2.c')
0 files changed, 0 insertions, 0 deletions