Audio timestamps are passed through by default and when the input
doesnt contain clean timestamps this can lead to non monotonicity
errors. (rounding to a course timebase can cause this too)
Print a warning when the errors in the timestamps are large
Fixes Ticket1167 (regression since timestamps are passed through)
This is a generic workaround that is intended to handle
slightly incorrect input files. It is very possible that some
demuxers contain bugs that lead to wrong timestamps, these demuxers
should of course still be fixed even if this change happens to
hide the issue.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Partially based on the port by Niel van der Westhuizen
<nielkie@gmail.com>, done for GCI 2010. Same output as the original
filter and as fast.
See thread:
Subject: [FFmpeg-devel] [PATCH] Port MPlayer 2xSaI filter to libavfilter
Date: Thu, 25 Nov 2010 01:31:24 +1000
All code should use the local variable, the
AVCodecContext might not yet have the updated value.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Fixes potential out-of-bounds writes.
This is mostly possible when muxing ALS files where from
an extradata size of about 1050 put_bits would write data
outside the buffer.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
For the FATE test sample used, this only avoids a warning
message.
However for other samples like al05_44.mp4 the converted
file can be played only after this fix.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
This will only work for DSEs that are first in a packet, but
that is enough to fix handling of the reference files in
fate-suite/aac (though most of them still have other issues).
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
If channel residues are have not been decoded from bitstream, they should be
initialized to 0 instead of using values from previous subframe.
This causes bursts of noise in silent parts of some files.
This patch fixes bug #1055
Reviewed-by: Benjamin Larsson <benjamin@southpole.se>
Reviewed-by: Mashiat Sarker Shakkhar <mashiat.sarker@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Otherwise for muxers like e.g. latmenc that never call
avio_flush (and do not have a write_trailer function)
a part of the data will always be missing.
Also update references for the voc muxer, which was also
buggy before and did not write out all data.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* qatar/master:
avplay: Don't free video filters string until the end of decoding.
movenc: small refactor mov_write_packet
movenc: remove redundant check
interplayvideo: fix av_dlog parameter type mismatch
Drop some pointless #ifdefs.
Conflicts:
libavcodec/interplayvideo.c
libavcodec/libxvidff.c
libavcodec/snowenc.c
libavformat/movenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Previously it would just silently write out incorrect data.
This also fixes a potential integer overflow in the allocation.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
"Fix" in so far as at least it will no longer overread and possibly
crash and makes somewhat sense, but no idea whether there is anything
that can play the resulting files (FFmpeg can't).
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Add support for all x86-64 registers
Prefer caller-saved register over callee-saved on WIN64
Support up to 15 function arguments
Also (by Ronald S. Bultje)
Fix up our asm to work with new x86inc.asm.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Currently they end up twice in the binary, since both
encoder and decoder include the header and thus each gets
their own copy.
This is clearly nonsense for the const tables, but shouldn't
be necessary for the RLTable either.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
av_freep()ing inside configure_video_filters() leaves a dangling
reference in the calling code, and the filter string is needed again when
reconfiguring video filters for a size change.
During failure conditions ff_h264_decode_init() leaks memory
allocated for nal units. Found via valgrind.
Valgrind traces: http://pastebin.com/GqTqxs8T
Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Using swr_flags instead of plain flags will avoid conflicts that
arise with plain flags and multiple libs (which all have AVOption flags)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Share the formerly internal write_packet with the hinter and move the
fragment flush logic to the user facing one since it is not concerned
about movtrack-only streams.
Fixes bug #263
Signed-off-by: Martin Storsjö <martin@martin.st>