Michael Niedermayer
985c5f226a
avcodec/utils: check that extended data has been set correctly instead of forcing it in avcodec_decode_video2()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
999ee28124
avcodec/utils: dont depend on the channel layout in unrefcount_frame()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
37a749012a
lavc: rework handling of refcounted_frames=0
...
Use only proper AVFrame API (no assigning of whole frames, since that
hardcodes sizeof(AVFrame) into lavc).
Make a copy of the side data, so the caller can use av_frame_unref/free
on non-refcounted frames, eliminating the need for
avcodec_get_frame_defaults()/avcodec_free_frame().
11 years ago
Anton Khirnov
a1ee164869
lavc/decode_video(): always unref the frame if there is no output in decode_video
...
Not just on failure. This is the same thing that is done in the audio
path and should prevent leaks in decoders that allocate a frame, but
then end up not writing into it.
11 years ago
Anton Khirnov
85f947aefb
lavc: remove a pointless check in decode_audio4()
...
av_frame_unref() works fine on unallocated frames.
11 years ago
Anton Khirnov
d4f0f2d1e8
lavc: use buf[0] instead of data[0] as the indicator of an allocated frame
...
data[0] may be NULL for valid frames with hwaccel pixel formats.
11 years ago
Anton Khirnov
e5419709f5
lavc: remove the extended_data workarounds.
...
All decoders should now handle it properly.
11 years ago
Michael Niedermayer
133fbfc781
do O(1) instead of O(n) atomic operations in register functions
...
about 1ms faster startup time
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
fdc0b3f8c1
avcodec/utils: remove unused variable
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
01923bab98
avcodec: move end zeroing code from av_packet_split_side_data() to avcodec_decode_subtitle2()
...
This code changes the input packet, which is read only and can in
rare circumstances lead to decoder errors. (i run into one of these in
the audio decoder, which corrupted the packet during av_find_stream_info()
so that actual decoding that single packet failed later)
Until a better fix is implemented, this commit limits the problem.
A better fix might be to make the subtitle decoders not depend on
data[size] = 0 or to copy their input when this is not the case.
11 years ago
Ben Boeckel
34b7c82dd3
avcodec/utils: use the unpack_dictionary function
...
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
b9fb59d2ab
lavc: deprecate avcodec_alloc_frame().
11 years ago
Anton Khirnov
5b9c3b4505
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
11 years ago
Anton Khirnov
cce3e0a49f
Move av_fast_{m,re}alloc from lavc to lavu.
11 years ago
Luca Barbato
08303d7741
hwaccel: Simplify ff_find_hwaccel
...
It is always called by passing fields from an AVCodecContext.
11 years ago
Anton Khirnov
da6506c607
lavc: move AVCodecContext.pkt to AVCodecInternal
...
It's a private field, not meant to be accessed from outside lavc.
11 years ago
Anton Khirnov
38ecc3702d
pthread: store thread contexts in AVCodecInternal instead of AVCodecContext
...
It's a private field, it should not be visible to callers.
Deprecate AVCodecContext.thread_opaque
11 years ago
Stefano Sabatini
a689560428
lavc: remove dead FF_API_AVCODEC_OPEN API
11 years ago
Anton Khirnov
0f6c1d6d64
lavc/utils: stop using deprecated avcodec_set_dimensions
11 years ago
Anton Khirnov
7644f5a807
lavc: replace avcodec_set_dimensions with ff_set_dimensions
...
avcodec_set_dimensions() is supposed to be an internal utility function,
there is no reason whatsoever for it to be public. Therefore deprecate
it.
11 years ago
Anton Khirnov
b9589f5a77
lavc: add error checking to apply_param_change.
11 years ago
Marton Balint
dbe6f9f2c2
lavc: add support for CODEC_CAP_DELAY in subtitles
...
This patch adds CODEC_CAP_DELAY support to avcodec_decode_subtitle2.
For DVB teletext decoding, a single teletext packet can contain multiple
teletext pages. In order to support that, the teletext decoder may buffer
some pages.
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
094c40ca37
avcodec/utils: use a default lock manager that uses a pthread mutex
...
That makes avformat & avcodec thread safe without the need to explicitly
register a lock manager.
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
e146c326b9
avcodec/pthread: add wpp api
...
cherry picked from commit c7765f3295fe7dc0653161c6a3d3e1778b76ee67
cherry picked from commit 0008c4979fc1d1bc24d4d2c791715f6dd017563c
Conflicts:
libavcodec/utils.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Marton Balint
b2d9790c2b
lavc: make avcodec_decode_subtitle2 more robust
...
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
838f461b07
avcodec/utils: add some saftey checks to add_metadata_from_side_data()
...
This fixes potential overreads with crafted files.
Found-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vignesh Venkatasubramanian
0f99aad80f
lavc: Adding seek_preroll to AVCodecContext
...
seek_preroll field is added to the AVCodecContext struct. It indicates
the number of samples to be discarded whenever there is a discontinuity.
The minor version is bumped accordingly.
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
e57dba0d52
avcodec: add av_codec_get_max_lowres()
...
Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Paul B Mahol
7e52080cb1
pcm: support 24-bit/32-bit little-endian planar
...
Used by LXF.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Michael Niedermayer
a072acb108
avcodec: fix duplicate includes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9c8aeacf82
avutil: add av_get_colorspace_name()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
7bc9fb8cde
avcodec/utils: add 16bit planar YUV formats to avcodec_align_dimensions2()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vignesh Venkatasubramanian
889bc79b5f
lavc/utils: Add support for discarding samples from the end
...
Adding support for discarding samples from the end based on the value in
AV_PKT_DATA_SKIP_SAMPLES side data's bytes 5-8.
Signed-off By: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9a0e20817a
avcodec/util: Make size argument of ff_alloc_packet2() int64_t
...
This ensures that huge sizes dont get truncated before the check in ff_alloc_packet2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Clément Bœsch
3e1f507f3e
avcodec: make avcodec_close() more tolerant.
...
See previous commit.
11 years ago
Carl Eugen Hoyos
6fcfafff84
Show subtitle resolution in avcodec_string().
11 years ago
Michael Niedermayer
8da23be458
avcodec/utils: avcodec_string: print colorspace type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
ea07dbdeaa
avcodec/utils: avcodec_string: Print color_range
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
336982a0ce
avcodec/utils: avcodec_string: make the colorspace printing code more extendible.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
811d58e083
avcodec/utils: support non edge emu for grayscale
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
e95930eda1
avcodec/utils: Simplify a condition that combines HAVE_NEON and ARCH_ARM
12 years ago
Thilo Borgmann
f18ccb529f
Fix wrong use of "an" in some comments.
12 years ago
Michael Niedermayer
98fd8a7848
avcodec: Remove ff_packet_free_side_data, use av_packet_free_side_data
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Reimar Döffinger
d4db7c334b
Integrate accessors.h header into internal.h
...
I have no idea why I added a separate header,
I think there is no good reason for it.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years ago
Reimar Döffinger
a48979d715
Reduce MAKE_ACCESSORS code duplication via a new header.
...
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years ago
Diego Biurrun
7950e519bb
Disable deprecation warnings for cases where a replacement is available
12 years ago
Marton Balint
63c0113588
lavc: do not override format if neither text nor bitmap codec prop is set
...
Some decoders may output both, this way the decoder can set it.
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Carl Eugen Hoyos
9375879d57
Show max bitrate for mpeg2 video streams in avcodec_string().
...
See also 25b7aa9
12 years ago
Michael Niedermayer
274a50ab57
avcodec/utils: Warn the user about the lack of a lock manager if insufficient locks are detected
...
A lock manager is not the only possibility to avoid open/close locking
issues but its easier and more robust than maintaining a lot of lock/unlock
calls.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
55db06af64
avcodec/utils: use av_assert0() to check validity of input pointers for start code search
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago