This commit also makes sure the extradata and subtitle_header are NUL
terminated, without taking into account the trailing '\0' in account in
the size.
At the same time, it should fix 'warning: dereferencing type-punned
pointer will break strict-aliasing rules' warning for compilers who
don't consider uint8_t** and char** compatibles.
* commit 'bd255f9feb4deea4c990e582f0ba3b90d7b64b4c':
lavc: set frame parameters after decoding only if necessary
Conflicts:
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Direct rendering capable decoders call get_buffer() which will set the
frame parameters.
Prevents frames with wrong parameters when a decoder outputs delayed
frames after a resolution or pixel format change.
* commit '57231e4d5b467833fb289439cd35a92513bb55c1':
tak: demuxer, parser, and decoder
Not merged as requested by Author and Maintainer of tak in FFmpeg.
I just merged a few typo fixes and minor cosmetic improvments.
Conflicts:
Changelog
libavcodec/Makefile
libavcodec/allcodecs.c
libavcodec/avcodec.h
libavcodec/tak.c
libavcodec/tak.h
libavcodec/tak_parser.c
libavcodec/takdec.c
libavcodec/version.h
libavformat/takdec.c
libavformat/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Will be used in future patches, together with the
variable that allows checking whether the lock is held.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* commit '387bef95d28019c13c6805cfa4079e59948284e5':
lavc: factorise setting buffer type in avcodec_default_get_buffer().
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'e57c4706e969afa1f2384481b955ccd9494cddb5':
lavc: don't reuse audio buffers
This commit causes a 0.5% speedloss for mp3 and 2% for raw pcm, that is
"time ffmpeg" style tested thus includes disk IO, demux and parsing
I would not have merged it if it wasnt required for the "new" buffer API
but sadly it is.
Once the new API is in ill reimplement proper buffer reuse, which will
fix this speedloss. In case we choose not to merge the "new" buffer
API then this commit here should be reverted.
Conflicts:
libavcodec/internal.h
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'ff953fecffd3b9a616a046723fb9d4690be032a6':
lavc: set frame properties in ff_get_buffer().
Conflicts:
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Removes limitation of max 2 channels for pcm_s8_planar decoder by moving
it to more natural place.
AV_CODEC_ID_8SVX_RAW is not used by anything anymore and is going to be
removed.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
* qatar/master:
dv1394: Swap the min and max values of the 'standard' option
rtpdec_vp8: Don't parse fields that aren't used
lavc: add some AVPacket doxy.
audiointerleave: deobfuscate a function call.
rtpdec: factorize identical code used in several handlers
a64: remove interleaved mode.
doc: Point to the new location of the c99-to-c89 tool
decode_audio3: initialize AVFrame
ws-snd1: set channel layout
wmavoice: set channel layout
wmapro: use AVCodecContext.channels instead of keeping a private copy
wma: do not keep private copies of some AVCodecContext fields
Conflicts:
libavcodec/wmadec.c
libavcodec/wmaenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '8ac0f6767bf63d3e6b308ee6648ff02598b81e03':
dcadec: allow the decoder to change the channel layout mid-stream
cook: use av_dlog() for debug logging instead of av_log() with AV_LOG_ERROR
cook: move samples_per_frame from COOKSubpacket to where it is used
cook: use av_get_channel_layout_nb_channels() instead of cook_count_channels()
cook: reverse a condition so that the code makes more sense
cook: remove unneeded COOKContext variable, sample_rate
cook: remove unneeded COOKContext variable, bit_rate
cook: use AVCodecContext.channels instead of keeping a private copy
bmvaudio: set channel layout at init() rather than validating it
atrac1: do not keep a copy of channel count in the private context
dsicinaudio: set channels and channel layout
g722dec: set channel layout at initialization instead of validating it
amrwbdec: set channels, channel_layout, and sample_rate
amrnbdec: set channels, channel_layout, and sample_rate
dca_parser: allow the parser to change the sample rate
lavc: check channel count after decoder init
lavc: move SANE_NB_CHANNELS to internal.h and use it in the PCM decoders
Conflicts:
libavcodec/dcadec.c
libavcodec/pcm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Ensures the decoder did not set channel count to an insanely high value
during initialization, which could cause large memory usage when it tries to
get a buffer during decoding.