| Commit message (Collapse) | Author | Age |
|
|
|
| |
It is no longer needed after this function returns.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Do not pass an options dictionary to the avcodec_open2() in enc_open().
This is cleaner and more robust, as previously various bits of code
would try to interpret the contents of the options dictionary, with
varying degrees of correctness. Now they can just access the encoder
AVCodecContext directly.
Cf. 372c78dd42f2b1ca743473b9c32fad71c65919e0 - analogous change for
decoding.
A non-progressive field order is now written on the container level in
interlaced ProRes encoding tests.
|
|
|
|
|
|
| |
Share the code between encoding and decoding. Instead of checking every
stream's options dictionary (which is also used for other purposes),
track all used options in a dedicated dictionary.
|
|
|
|
| |
It conflicts with the AVCodecContext option of the same name.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This allows one complex filtergraph's output to be sent as input to
another one, which is useful in certain situations (one is described in
the docs).
Chaining filtergraphs was already effectively possible by using a
wrapped_avframe encoder connected to a loopback decoder, but it is ugly,
non-obvious and inefficient.
|
|
|
|
|
| |
Will be useful for filtergraph chaining that will be added in following
commits.
|
|
|
|
|
|
|
| |
First bind all inputs in all filtergraphs, only then check that all
outputs are bound.
Needed by the following commit.
|
|
|
|
|
| |
Store simple filtergraphs in the stream they feed. Keeping the two
separate will be useful in following commits.
|
|
|
|
|
| |
All remaining code accessing it only needs to know whether this
filtergraph output has been bound or not.
|
|
|
|
|
|
| |
Stop digging through encoder options manually.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
|
| |
It is no longer used outside of the muxing code (where we can access the
muxer directly).
|
|
|
|
| |
It is no longer needed outside of of_open() and its children.
|
|
|
|
|
|
| |
The decision whether -apad actually does anything is made based on muxer
properties, and so more properly belongs there. Filtering code only
receives the result.
|
|
|
|
|
|
| |
Do not read them from OutputStream directly.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
|
|
| |
Do not read it from OutputStream directly.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
|
|
| |
Do not read them from OutputStream directly.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
| |
OutputFilter.type contains the same information.
|
|
|
|
|
|
|
| |
Use it for logging where appropriate, avoid logging to OutputStream as
we do not own it.
This is a step towards decoupling filtering from encoding.
|
| |
|
|
|
|
|
| |
fg_finalise_bindings() already checks that all filtergraph outputs are
connected.
|
|
|
|
|
|
| |
Do not construct it from OutputStream manually.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
|
| |
It is used in a single place in the filtering code, so it is better to
inline it there.
|
|
|
|
|
|
| |
Do not read it from OutputStream directly.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
|
|
| |
Pass all the necessary value through OutputFilterOptions.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
| |
That, if anywhere, is a more appropriate place for it.
|
|
|
|
|
| |
Reduces the need to access OutputStream, which will allow decoupling
filtering from encoding in future commits.
|
|
|
|
|
| |
Can do it as soon as that option is parsed, no need to postpone it until
opening the encoder.
|
|
|
|
|
| |
Reduces the need to access OutputStream, which will allow decoupling
filtering from encoding in future commits.
|
|
|
|
|
| |
Reduces the need to access OutputFile, which will allow decoupling
filtering from encoding in future commits.
|
|
|
|
| |
For simple filtergraphs. For complex filtergraphs they always match.
|
|
|
|
|
|
|
| |
Instead pass the encoder through a newly-added output options struct,
analogous to previously added input options.
Will allow decoupling filtering from encoding in future commits.
|
|
|
|
| |
It only needs a list of allowed layouts and the requested layout.
|
|
|
|
|
| |
Analogous to the same constant in avfiltergraph and avcodec.
Cf. f599ae88c25.
|
| |
|
|
|
|
|
|
| |
Fixes checkasm on win64.
Signed-off-by: James Almer <jamrial@gmail.com>
|
|
|
|
| |
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
|
| |
Use context_initialized from the underlying MpegEncContext
instead. Also don't check before ff_mpv_common_end()
in mpeg_decode_end().
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
| |
Possible since 315c956cbd14f021e49dac7fc0b906fad1672aad.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
| |
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
| |
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
| |
These AVFrames are blank and therefore the flag is already unset.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
| |
Obsolete since at least 74d623914f02aa79447df43a742efd0929dded04.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
| |
The ipu decoder never calls ff_mpv_common_init() or allocates
anything else that would need to be freed.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
|
|
| |
H.261 does not have keyframes (or indeed frame types) at all,
so this warning is not warranted.
Also remove an always-true check while at it.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
|
| |
(FF_PTR_ADD has to be kept although MPEG-1/2 only supports
YUV pixel formats because our decoder also supports decoding
to AV_PIX_FMT_GRAY8 depending upon CONFIG_GRAY.)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
| |
This code only gets executed for the first field.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Up until now, ff_mpv_frame_start() offsets the data of the current
picture and doubles the linesizes of all pictures if the current
picture is field-based so that data and linesize allow to address
the current field only.
This is done based upon the current picture_structure value.
Only two mpegvideo-based decoders ever set this field: mpeg1/2
and VC-1; but the latter only does it after ff_mpv_frame_start()
(when using hardware-acceleration and in order to signal it to
the DXVA2 hwaccel) in which case no offset is applied in
ff_mpv_frame_start(). So only one decoder actually wants this
offset*; therefore move the code performing it to mpeg12dec.c.
*: VC-1 doubles linesize when using field_mode (not only the picture's
linesize, but also uvlinesize and linesize), yet it does not offset
anything. This is further proof that this should not be performed
generically.
Also move MPEG-1/2 specific setting of the top-field-first flag.
(The change here implies that the AVFrame in current_picture
may have different top-field-first flags than the AVFrame
from current_picture_ptr, but this doesn't matter as only
the latter's are used.)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
| |
Forgotten in 7800cc6e82068c6dfb5af53817f03dfda794c568.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|
|
|
|
|
|
|
|
|
| |
FRAME_SKIPPED -> h263dec.h
CANDIDATE_MB_TYPE_* -> mpegvideoenc.h
INPLACE_OFFSET -> mpegvideoenc.h
enum OutputFormat -> mpegvideo.h
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
|