It currently does the following:
1) get a zeroed audio buffer
2) copy some properties (but not the data) of the input buffer to it
3) pass this buffer to the output filter
This looks useless and is indeed not used by any filters, therefore
delete it.
Make ff_null_filter_samples() (just pass the buffer to the next filter)
the new default.
Add request_frame() which checks the black duration when the end of the
stream is signalled. Allow to detect black video segments at the end of
the stream.
Note that the reported last black video segment duration is not very
accurate, since we still miss the duration information in the video
buffer.
Address trac ticket #1470.
It's redundant, since the input buffer is passed as a parameter to the
filter_samples() callback, and can lead to stale pointers remaining on
the link.
mirror() borrowed from dwt.c, this could be moved to libavutil and made
public API, Ill submit a patch for this
Fixes Ticket1278
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Reduce audio fragment alignment jitter by penalizing alignment
correction offsets that deviate too much from the target offset.
This is accomplished by multiplying the cross correlation search
window with a quadratic function.
Signed-off-by: Pavel Koshevoy <pavel@homestead.aragog.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Use av_frame_* accessors for the newly added fields in AVFrame (for which
we are supposed to use such accessors), and group the istructions
accordingly.
While here:
- add missing .version and .category,
- make .class_name consistent across filters,
- align declarations.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Add atempo audio filter for adjusting audio tempo without affecting
pitch. This filter implements WSOLA algorithm with fast cross
correlation calculation in frequency domain.
Signed-off-by: Pavel Koshevoy <pavel@homestead.aragog.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Remove duplicated out-of-loop init code, and do color matrix
initialization at the beginning of each y iteration.
Allow factorization and avoid an useless matrix update in the last
iteration.
The previous table appears to be wrong (it was copied from the original
MPlayer super2xsai filter in order to keep binary compatibility).
The new table is consistent with the init code and apparently fixes a
combing artifact on the left edge of the generated image.
Use the same values of the video output link.
Avoid the need to override the default_start_frame() with an ad-hoc
start_frame() callback.
In particular, fix the super2xsai filter which was setting the
input w/h values in the output.
The function will abort through an assert if the source is not defined,
or if the internal state of the source is inconsistent (e.g. type = AUDIO
&& !src->audio).