Until now, the decoding API was restricted to outputting 0 or 1 frames
per input packet. It also enforces a somewhat rigid dataflow in general.
This new API seeks to relax these restrictions by decoupling input and
output. Instead of doing a single call on each decode step, which may
consume the packet and may produce output, the new API requires the user
to send input first, and then ask for output.
For now, there are no codecs supporting this API. The API can work with
codecs using the old API, and most code added here is to make them
interoperate. The reverse is not possible, although for audio it might.
From Libav commit 05f66706d1.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Fixes out of array read
Fixes: mozilla bug 1266129
Found-by: Tyson Smith
Tested-by: Tyson Smith
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
The yasm/nasm preprocessor only checks the first token, which means that
parameters such as `dword [rax]` are treated as identifiers, which is
generally not what we want.
This commit is a no-op.
* commit '8833f1508b7b6afc3172a8017934a7a54428c686':
opt: Add const to av_opt_next
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '933dec0e29ec4d2cb83474279a6c52d62fdb7310':
file: Add an option for following a file that is being written
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit 'd44f3e4059506a182f59218b1e967d42b01e097c':
avio: Apply avoptions on the URLContext itself as well
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
This commit is a no-op. wm4 is working to get these into ffmpeg
proper, with ffmpeg versions of the patches.
* commit '8bc4accc37ab047d2fd85d672c577b39dfc918e1':
lavf: use new decode API
avconv: use new encode API
avconv: use new decode API
lavc: introduce a new decoding/encoding API with decoupled input/output
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
These commits are no-ops. Not going to merge these since our opt
tests are more complex, and have several blocks with different
options.
* commit '0d2fcdb1c5c9e844c232e5429130727121990d0e':
opt-test: Merge struct declaration and initialization
opt-test: Move some variable declarations to avoid block braces
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Add number of input and output frames to possible variables.
Add option eval to reevaluate coordinate expressions during
initialization or for every frame.
This commit is a no-op.
* commit 'a84713e70d06238100cb0f867ad6031c272054b0':
parseutils-test: Move some variable declarations to avoid block braces
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '65a802401c6cc136576bb2e613c0577cbf622aa8':
build: Add component for the SRTP common code
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '30e9ef21cea09fa5e880e979c9f5b39edccbb6f4':
timefilter-test: Only compile timefilter-test if JACK is enabled
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '48362ceadeb2eb5286ae94ef7f9542d990ff7ec7':
doc: Update paths to match new examples location
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '42244ce07a1f4f5108ae86d50fe72db785d483ed':
intrax8: Move a comment to the place it corresponds
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* commit '709c0f79d8032fcf733bfe58e79ca7ff0858c8bc':
nuv: Use the correct context for av_image_check_size
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>