FFmpeg/libavformat
Andreas Rheinhardt 92c8b79b5a avformat/segment: Don't overwrite AVCodecParameters after init
The segment muxer copies the user-provided AVCodecParameters to the
newly created child streams in its init function before initializing the
child muxer; and since commit 8e6478b723,
it does this again before calling avformat_write_header() if that is
called from seg_write_header(). The reason for this is complicated:

At that time writing the header was delayed, i.e. it was not triggered
by avformat_write_header() (unless the AVFMT_FLAG_AUTO_BSF was unset),
but instead by writing the very first packet. The rationale behind this
was to allow to run bitstream filters on the packets in the interleavement
queue in order to generate missing extradata from them before the muxer's
write_header function is actually called.

The segment muxer went even further: It initialized the child muxer and
ran the child muxer's check_bitstream functions on the packets in its
own muxing queue and stole any bitstream filters that got inserted. The
reason for this is that the segment muxer has an option to write the
header to a separate file and for this it is needed to write the child
muxer's header without delay, but with correct extradata. Unsetting
AVFMT_FLAG_AUTO_BSF for the child muxer accomplished the first goal and
stealing the bitstream filters the second; and in order for the child
muxer to actually use the updated extradata, the old AVCodecParameters
(set before avformat_init_output()) were overwritten with the new ones.

Updating the extradata proceeded as follows: The bitstream filter itself
simply updated the AVBSFContext's par_out when processing a packet, in
violation of the new BSF API (where par_out may only be set in the init
function); the muxing code then simply forwarded the updated extradata,
overwriting the par_in of the next BSF in the BSF chain with the fresh
par_out of the last one and the AVStream's par with the par_out of the
last BSF. This was an API violation, too, of course, but it made
remuxing ADTS AAC into mp4/matroska work.

But this no longer serves a useful purpose since the aac_adtstoasc BSF
was updated to propagate new extradata via packet side data in commit
f63c3516577d605e51cf16358cbdfa0bc97565d8; the next commit then removed
the code in mux.c passing new extradata along the filter chain. This
alone justifies removing the code for setting the AVCodecParameters a
second time.

But there is even another reason to do so: It is harmful. The ogg muxer
parses the extradata of Theora and Vorbis in its init function and keeps
pointers to parts of it. Said pointers become dangling when the
extradata is overwritten by the segment muxer, leading to
use-after-frees as has happened in ticket #8881 which this commit fixes.

Ticket #8517 is about another issue caused by this: Immediately after
having overwritten the old AVCodecParameters the segment muxer checks
whether the codec_tag is ok (the codec_tag is set generically when
initializing the child muxer based upon muxer-specific lists). The check
used is: If the child output format has such a list and if the codec tag
of the non-child stream does not match the codec id given the list of
codec tags and if there is a match for the codec id in the codec tag
list, then set the codec tag to zero (and not to the existing match),
otherwise set the codec tag of the child stream to the codec tag
of the corresponding stream of the main AVFormatContext (which is btw
redundant given that the child AVCodecParameters have just been
overwritten with the AVCodecParameters of the corresponding stream of
the main AVFormatContext).

Reviewed-by: Ridley Combs <rcombs@rcombs.me>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-09-10 12:44:38 +02:00
..
tests lavf/url: rewrite ff_make_absolute_url() using ff_url_decompose(). 2020-08-12 16:45:21 +02:00
.gitignore
3dostr.c avformat/3dostr: Return directly after having read packet 2020-08-05 23:14:39 +02:00
4xm.c avformat/4xm: Check that a video stream was created before returning packets for it 2020-06-14 21:22:47 +02:00
a64.c
aacdec.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
aadec.c avformat/aadec: Check toc_size to contain the minimum to demuxer uses 2020-05-21 09:31:08 +02:00
ac3dec.c
acm.c
act.c
adp.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
ads.c
adtsenc.c adtsenc: Add ability to write MPEG2 ID 2020-08-30 16:18:37 +02:00
adxdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
aea.c
afc.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
aiff.h
aiffdec.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
aiffenc.c avformat/aiffenc: Don't forget chapters 2020-05-25 05:38:15 +02:00
aixdec.c
allformats.c lavf/img2dec: Auto-detect Kodak Photo CD image files. 2020-09-05 10:45:52 +02:00
alp.c avformat/alp: tweak probe function to return MAX-1 2020-03-09 13:41:12 +01:00
amr.c avformat/amr: Don't reimplement ff_raw_write_packet() 2020-04-14 18:52:44 +02:00
anm.c
apc.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
ape.c avformat/ape: Error out in case of EOF in the header 2020-07-26 18:29:57 +02:00
apetag.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
apetag.h
apm.c avformat/apm: fix APM_FILE_HEADER_SIZE value 2020-07-30 11:48:28 +10:00
apngdec.c avformat/apngdec: Don't free extradata manually 2019-12-12 19:25:33 +01:00
apngenc.c avcodec, avformat: Remove unnecessary initializations of side data size 2020-06-22 12:20:37 +02:00
aptxdec.c
aqtitledec.c avformat/aqtitledec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
argo_asf.c avformat/argo_asf: fix handling of v1.1 files 2020-09-07 13:13:33 +10:00
asf.c
asf.h
asfcrypt.c
asfcrypt.h
asfdec_f.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
asfdec_o.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
asfenc.c avformat/riffenc: indicate storage of flipped RGB bitmaps 2020-07-15 20:52:01 +05:30
assdec.c avformat/assdec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
assenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
ast.c
ast.h
astdec.c
astenc.c avformat: remove unneeded avio_flush() calls from the end of write_trailer functions 2020-01-07 21:51:45 +01:00
async.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
au.c avformat/au: Avoid allocation for metadata string 2020-07-18 18:18:41 +02:00
av1.c avformat/av1: Avoid using dynamic buffer when assembling av1c 2020-06-26 07:12:31 +02:00
av1.h avformat/av1: Avoid allocation + copying when filtering OBUs 2020-01-26 12:41:32 -03:00
av1dec.c avformat/av1dec: don't update temporal_unit_size after it's no longer used 2020-08-15 23:31:41 -03:00
avc.c avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak 2020-06-26 12:13:43 +02:00
avc.h avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak 2020-06-26 12:13:43 +02:00
avformat.h avformat/avformat: Improve documentation of av_stream_get_side_data 2020-06-22 12:20:23 +02:00
avformatres.rc
avi.h
avidec.c avformat/avidec: Fix io_fsize overflow 2020-09-05 17:48:59 +02:00
avienc.c avformat/riffenc: indicate storage of flipped RGB bitmaps 2020-07-15 20:52:01 +05:30
avio_internal.h avformat/aviobuf: Add function to reset dynamic buffer 2020-03-30 05:50:49 +02:00
avio.c URLContext: switch to child_class_iterate() 2020-06-10 12:36:44 +02:00
avio.h avformat/avio: add avio_protocol_get_class 2020-01-30 17:10:12 +08:00
aviobuf.c avformat/aviobuf: Also return truncated buffer in avio_get_dyn_buf() 2020-06-11 04:03:38 +02:00
avisynth.c avformat/avisynth: fix deprecation warning 2020-04-05 01:23:46 +02:00
avlanguage.c
avlanguage.h
avr.c
avs.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
bethsoftvid.c avformat/bethsoftvid: Fix potential memleak upon reallocation failure 2020-03-22 13:00:19 +01:00
bfi.c
bink.c avformat/bink: properly mark packets that are key frames 2020-03-20 14:24:34 +01:00
bintext.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
bit.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
bluray.c
bmv.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
boadec.c
brstm.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
c93.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
cache.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
caf.c
caf.h
cafdec.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
cafenc.c avformat: remove unneeded avio_flush() calls from the end of write_trailer functions 2020-01-07 21:51:45 +01:00
cavsvideodec.c
cdg.c
cdxl.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
chromaprint.c lavf/chromaprint: Silence compilation warnings 2020-04-05 22:47:21 +02:00
cinedec.c avformat/cinedec: check av_strdup() return value 2019-10-19 06:47:10 +02:00
codec2.c
concat.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
concatdec.c avformat/concatdec: Avoid duplicating buffer when adding side-data 2020-05-28 12:01:22 +02:00
crcenc.c
crypto.c avformat/crypto.c: remove unnecessary code 2020-07-20 10:14:53 +08:00
cutils.c
dash.c
dash.h
dashdec.c avformat/dashdec: drop arbitrary DASH manifest size limit 2020-09-05 11:50:49 +03:00
dashenc.c libavformat/dashenc: Reduce confusion in par error message 2020-08-31 23:43:06 +02:00
data_uri.c
dauddec.c
daudenc.c avformat/daudenc: Return proper error codes instead if -1 2020-07-26 16:57:58 +02:00
davs2.c
dcstr.c
derf.c avformat: add derf demuxer 2020-03-17 16:05:49 +01:00
dfa.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
dhav.c avformat/dhav: improve seeking 2019-12-25 22:10:47 +01:00
diracdec.c
dnxhddec.c
dsfdec.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
dsicin.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
dss.c avformat/dss: Remove unnecessary allocation 2020-04-03 17:56:57 +02:00
dtsdec.c avformat/dtsdec: make S16LE discrimination sharper 2020-01-18 18:35:57 +01:00
dtshddec.c
dump.c API: add AV_PKT_DATA_S12M_TIMECODE to AVPacketSideDataType 2020-07-15 05:47:14 +08:00
dv.c avformat/dv: Avoid allocation for reading timecode 2020-08-06 00:02:19 +02:00
dv.h
dvbsub.c
dvbtxt.c
dvenc.c avformat/dvenc: return error code of dv_assemble_frame() 2020-06-19 23:12:49 +08:00
dxa.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
eacdata.c
electronicarts.c avformat/electronicarts: change non failure return of read_header() to 0 2020-09-08 00:06:53 +02:00
epafdec.c
ffmeta.h
ffmetadec.c libavformat/ffmetadec.c: Fix Use-of-uninitialized-value 2020-08-22 22:51:07 +02:00
ffmetaenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
fifo_test.c
fifo.c avformat/fifo: add timeshift option to delay output 2020-06-09 00:57:30 +02:00
file_open.c
file.c avformat/hls: support data protocol in uri for EXT-X-MAP 2020-01-18 22:41:11 +08:00
filmstripdec.c
filmstripenc.c avformat/filmstripenc: Use ff_raw_write_packet() 2020-04-14 19:01:27 +02:00
fitsdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
fitsenc.c
flac_picture.c libavformat/flacdec: Workaround for truncated metadata picture size 2020-05-25 11:59:45 +02:00
flac_picture.h libavformat/flacdec: Workaround for truncated metadata picture size 2020-05-25 11:59:45 +02:00
flacdec.c libavformat/flacdec: Workaround for truncated metadata picture size 2020-05-25 11:59:45 +02:00
flacenc_header.c avformat/flacenc: Add const to ff_flac_write_header() parameter 2019-11-28 18:44:01 +01:00
flacenc.c avformat/vorbiscomment: Switch to AVIOContext from bytestream API 2020-05-03 13:43:54 +02:00
flacenc.h avformat/flacenc: Add const to ff_flac_write_header() parameter 2019-11-28 18:44:01 +01:00
flic.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
flv.h
flvdec.c avformat/flvdec: Cosmetics 2020-06-22 12:19:56 +02:00
flvenc.c avcodec, avformat: Remove unnecessary initializations of side data size 2020-06-22 12:20:37 +02:00
format.c
framecrcenc.c
framehash.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
frmdec.c
fsb.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
ftp.c avformat/ftp: Fix for invalid use of av_strtok 2020-05-10 22:32:34 +08:00
fwse.c avformat: add fwse demuxer 2020-03-17 16:04:42 +01:00
g722.c
g723_1.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
g726.c
g729dec.c
gdv.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
genh.c
gif.c
gifdec.c avformat/gifdec: -1 -> AV_BPRINT_SIZE_UNLIMITED 2020-07-08 23:09:29 +08:00
golomb_tab.c
gopher.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
gsmdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
gxf.c
gxf.h
gxfenc.c avformat: implement retiming directly in mxfenc and gxfenc 2020-05-07 23:12:24 +02:00
h261dec.c
h263dec.c
h264dec.c
hashenc.c avformat: remove avio_flush() calls from the end of write_packet functions 2020-01-07 21:51:45 +01:00
hca.c avformat: add hca demuxer 2020-03-17 16:08:13 +01:00
hcom.c
hdsenc.c avformat/hdsenc: Add explicit deinit function 2020-04-30 08:24:09 +02:00
hevc.c avformat/hevc: Defer initializations in ff_isom_write_hvcc() 2020-07-02 02:09:59 +02:00
hevc.h avformat/av1, avc, hevc: Remove av_freep() 2020-01-26 12:41:32 -03:00
hevcdec.c
hls.c avformat/hls: Use av_init_pkt() directly 2020-08-18 07:03:00 +02:00
hlsenc.c avformat/hlsenc: write temp file for append single file by encryption mode 2020-08-10 15:52:59 +08:00
hlsplaylist.c avformat/hlsenc, hlsplaylist: Cosmetics 2020-05-28 11:18:53 +02:00
hlsplaylist.h avformat/hlsenc, hlsplaylist: Cosmetics 2020-05-28 11:18:53 +02:00
hlsproto.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
hnm.c avformat/hnm: Only keep and parse what is needed later 2020-04-02 21:22:52 +02:00
http.c avformat/http: increase BUFFER_SIZE to MAX_URL_SIZE + HTTP_HEADERS_SIZE 2020-05-21 22:45:21 +02:00
http.h
httpauth.c avformat/httpauth: do not decode plus sign to space in credentials 2020-02-15 18:41:36 +01:00
httpauth.h
icecast.c avformat/icecast: Add option to use TLS connection 2020-07-02 17:14:31 +02:00
icodec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
icoenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
id3v1.c libavformat: fix spelling in ID3v1 genres and extend the list of Winamp extensions. 2020-01-05 20:31:42 +01:00
id3v1.h libavformat: fix spelling in ID3v1 genres and extend the list of Winamp extensions. 2020-01-05 20:31:42 +01:00
id3v2.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
id3v2.h avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
id3v2enc.c avformat/id3v2enc: fix bad ID3v2 tag length 2020-01-10 12:02:13 +01:00
idcin.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
idroqdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
idroqenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
iff.c avformat/id3v2: Remove unnecessary indirection 2020-05-25 07:06:44 +02:00
ifv.c
ilbc.c avformat/ilbc: Add missing #if for muxer 2020-04-07 17:01:58 +02:00
img2_alias_pix.c
img2_brender_pix.c
img2.c avcodec: add PhotoCD decoder 2020-09-04 16:01:53 +02:00
img2.h avformat/img2dec: add option to provide metadata fields related to input path 2020-01-10 23:08:18 +01:00
img2dec.c lavf/img2dec: Auto-detect Kodak Photo CD image files. 2020-09-05 10:45:52 +02:00
img2enc.c ffplay, avcodec, avformat: Don't initialize before av_packet_ref() 2020-03-28 04:17:20 +01:00
ingenientdec.c
internal.h avformat/mux: Set AV_PKT_FLAG_KEY for is_intra_only packet 2020-05-07 07:12:24 +08:00
ip.c
ip.h
ipmovie.c
ircam.c
ircam.h
ircamdec.c
ircamenc.c
isom.c avformat/isom: add comment to mov_mdhd_language_map 2020-07-01 11:41:35 +02:00
isom.h avformat/mov: Only read the mfra size once during sidx parsing 2020-09-03 19:04:29 +01:00
iss.c
iv8.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
ivfdec.c
ivfenc.c avformat/ivfenc: move bsf insertion to the init function 2020-05-11 19:41:59 -03:00
jacosubdec.c avformat/jacosubdec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
jacosubenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
jvdec.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
kvag.c avformat: add kvag muxer 2020-05-31 00:55:12 +02:00
latmenc.c avcodec, avfilter, avformat: Remove redundant avpriv_align_put_bits 2020-08-01 18:56:32 +02:00
libamqp.c avformat/libamqp: add option delivery_mode 2020-06-24 23:15:52 -04:00
libavformat.v
libgme.c
libmodplug.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
libopenmpt.c
librtmp.c
libsmbclient.c
libsrt.c avformat/libsrt: close listen fd in listener mode 2020-08-20 16:24:46 +02:00
libssh.c
libzmq.c avformat/libzmq: Make default pkt_size value consistent with amqp 2020-03-09 22:07:18 +01:00
lmlm4.c
loasdec.c
log2_tab.c
lrc.c
lrc.h
lrcdec.c avformat/lrcdec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
lrcenc.c
lvfdec.c
lxfdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
m4vdec.c
Makefile lavf/img2dec: Auto-detect Kodak Photo CD image files. 2020-09-05 10:45:52 +02:00
matroska.c avformat/matroska: Move mime_tag lists to matroskadec 2020-04-20 21:24:18 +02:00
matroska.h avformat/matroska: Move mime_tag lists to matroskadec 2020-04-20 21:24:18 +02:00
matroskadec.c avformat/matroskadec: Slightly simplify version check 2020-07-24 04:25:45 +02:00
matroskaenc.c avformat/riffenc: indicate storage of flipped RGB bitmaps 2020-07-15 20:52:01 +05:30
mccdec.c avformat: add MCC demuxer 2020-06-18 21:31:13 +02:00
md5proto.c
metadata.c
metadata.h
mgsts.c
microdvddec.c avformat/microdvddec: skip malformed lines without frame number. 2020-06-25 12:50:22 +02:00
microdvdenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
mj2kdec.c
mkvtimestamp_v2.c
mlpdec.c
mlvdec.c avformat/mlvdec: Only store dimensions after having validated them 2020-08-18 14:26:40 +02:00
mm.c avformat/mm: Check for existence of audio stream 2020-07-10 20:36:31 +02:00
mmf.c avformat: remove unneeded avio_flush() calls from the end of write_trailer functions 2020-01-07 21:51:45 +01:00
mms.c
mms.h
mmsh.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
mmst.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
mods.c avformat: add MODS demuxer 2020-09-03 18:11:00 +02:00
moflex.c avformat: add moflex demuxer 2020-09-03 18:10:28 +02:00
mov_chan.c
mov_chan.h
mov_esds.c
mov.c avformat/mov: Stash mfra size if we're reading it anyway 2020-09-03 19:04:29 +01:00
movenc.c avformat/movenc: write the colr atom by default 2020-08-21 10:01:58 -07:00
movenc.h avformat/movenc: remove the write_clli mov flag 2020-04-13 10:37:45 -06:00
movenccenc.c
movenccenc.h
movenchint.c
mp3dec.c Revert "lavf/mp3dec: don't adjust start time; packets are not adjusted." 2020-06-08 22:08:37 +02:00
mp3enc.c avcodec, avformat: Remove unnecessary initializations of side data size 2020-06-22 12:20:37 +02:00
mpc8.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
mpc.c avformat/mpc: Simplify cleanup 2020-04-19 02:37:46 +02:00
mpeg.c avformat/mpeg: Check avio_read() return value in get_pts() 2020-08-18 14:56:04 +02:00
mpeg.h
mpegenc.c avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE 2020-05-21 09:31:08 +02:00
mpegts.c avformat/mpegts: only reset timestamps to NOPTS for DVB teletext 2020-08-18 22:29:22 +03:00
mpegts.h avformat/mpegtsenc: support DVB 6A descriptor for AC-3 2020-08-23 07:19:11 +08:00
mpegtsenc.c avformat/mpegtsenc: reindent the code 2020-08-26 14:20:10 +08:00
mpegvideodec.c
mpjpeg.c avformat/mpjpeg: Remove mpjpeg_write_trailer 2020-01-08 01:32:26 +01:00
mpjpegdec.c avformat/mpjpegdec: Remove redundant initializations 2020-02-11 00:15:19 +01:00
mpl2dec.c avformat/mpl2dec: Avoid variable that is always zero 2020-06-22 13:16:53 +02:00
mpsubdec.c avformat/mpsubdec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
msf.c
msnwc_tcp.c
mtaf.c
mtv.c avformat/mtv: check av_strdup() return value 2019-10-19 06:54:53 +02:00
musx.c avformat/musx: improve probing 2020-09-03 18:03:18 +02:00
mux.c avformat/mux: Remove unnecessary unreferencing of AVPacket 2020-05-23 05:43:42 +02:00
mvdec.c avformat/mvdec: Fix integer overflow with billions of channels 2020-06-27 12:43:51 +02:00
mvi.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
mxf.c avformat/mxfdec: Read color metadata from MXF 2020-08-06 12:52:34 +02:00
mxf.h avformat/mxfdec: Read color metadata from MXF 2020-08-06 12:52:34 +02:00
mxfdec.c avformat/mxfdec: Read video range from CDCIEssenceDescriptor 2020-08-29 11:02:35 +02:00
mxfenc.c libavformat/mxfenc: color_range should be inclusive 2020-08-29 11:02:35 +02:00
mxg.c
ncdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
network.c
network.h network: Define ENOTCONN as WSAENOTCONN if not defined 2019-12-11 22:18:09 +02:00
nistspheredec.c
nspdec.c
nsvdec.c avformat/nsvdec: Use av_packet_move_ref() for packet ownership transfer 2020-03-26 20:06:15 +01:00
nullenc.c
nut.c libavformat/nut: Support SSA and ASS subtitles 2020-08-22 22:51:07 +02:00
nut.h
nutdec.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
nutenc.c avformat/nutenc: Write size into right dynamic buffer 2020-05-05 19:35:38 +02:00
nuv.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
oggdec.c avformat/oggdec: Disable mid stream codec changes 2020-06-14 18:34:59 +02:00
oggdec.h oggdec: remove the oggparsedaala subdemuxer 2020-05-23 19:07:20 +01:00
oggenc.c avformat/oggenc: Avoid allocating and copying when writing page data 2020-05-09 16:18:39 +02:00
oggparsecelt.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
oggparsedirac.c
oggparseflac.c avformat/oggparseflac: Replace skip_bits_long() by skip_bits() where possible 2019-12-31 18:43:50 +01:00
oggparseogm.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
oggparseopus.c oggdec: add support for proper demuxing of chained Opus files and streams 2020-04-30 23:05:51 +01:00
oggparseskeleton.c
oggparsespeex.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
oggparsetheora.c avformat/oggparsetheora: Don't update start time when lastpts is AV_NOPTS_VALUE. 2020-05-31 00:52:08 +02:00
oggparsevorbis.c avformat/oggdec: Avoid duplicating buffer when adding side-data 2020-05-28 12:04:26 +02:00
oggparsevp8.c
oma.c
oma.h
omadec.c avformat/omadec: Fix memleaks upon read_header failure 2020-06-15 16:35:29 +02:00
omaenc.c
options_table.h remove CHAR_MIN/CHAR_MAX usage 2020-03-17 22:46:36 +01:00
options.c AVFormatContext: switch to child_class_iterate() 2020-06-10 12:36:44 +02:00
os_support.c
os_support.h
paf.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
pcm.c
pcm.h
pcmdec.c
pcmenc.c
pjsdec.c avformat/pjsdec: Avoid variable that is always zero 2020-06-22 13:16:58 +02:00
pmpdec.c
pp_bnk.c avformat: add demuxer for Pro Pinball Series' Soundbanks 2020-05-05 20:07:19 +02:00
prompeg.c lavf/prompeg: prompeg_write() must report data all was written 2020-06-14 12:27:49 +08:00
protocols.c URLContext: switch to child_class_iterate() 2020-06-10 12:36:44 +02:00
psxstr.c avformat: Improve returned error codes 2020-01-08 01:32:26 +01:00
pva.c
pvfdec.c
qcp.c
qtpalette.c
qtpalette.h
r3d.c libavformat/r3d.c: Fix Use-of-uninitialized-value in filename. 2020-08-20 13:27:22 +02:00
rawdec.c avformat/rawdec: fix identifier names 2020-06-06 00:25:00 +02:00
rawdec.h avformat/rawdec: fix identifier names 2020-06-06 00:25:00 +02:00
rawenc.c
rawenc.h
rawutils.c
rawvideodec.c
rdt.c
rdt.h
realtextdec.c
redspark.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
replaygain.c
replaygain.h
riff.c avcodec: add NotchLC decoder 2020-05-19 20:09:25 +02:00
riff.h avformat/riffenc: indicate storage of flipped RGB bitmaps 2020-07-15 20:52:01 +05:30
riffdec.c avcodec: fix pcm zork decoder 2020-02-16 12:54:57 +01:00
riffenc.c avformat/riffenc: correct calculation for extradata size 2020-07-26 11:09:39 +05:30
rl2.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
rm.c
rm.h
rmdec.c avformat: Improve returned error codes 2020-01-08 01:32:26 +01:00
rmenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
rmsipr.c
rmsipr.h
rpl.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
rsd.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rso.c
rso.h
rsodec.c
rsoenc.c avformat/rso: Don't reimplement ff_raw_write_packet() 2020-04-14 18:57:59 +02:00
rtmp.h
rtmpcrypt.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
rtmpcrypt.h
rtmpdh.c
rtmpdh.h
rtmpdigest.c
rtmphttp.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
rtmppkt.c
rtmppkt.h
rtmpproto.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
rtp.c
rtp.h
rtpdec_ac3.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_amr.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_asf.c
rtpdec_dv.c
rtpdec_formats.h
rtpdec_g726.c
rtpdec_h261.c
rtpdec_h263_rfc2190.c
rtpdec_h263.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_h264.c
rtpdec_hevc.c avformat/rtpdec_hevc: Don't reimplement ff_alloc_extradata 2019-12-12 19:25:33 +01:00
rtpdec_ilbc.c
rtpdec_jpeg.c lavf/rtpdec_jpeg: Fix JFIF version. 2020-08-25 19:29:34 +02:00
rtpdec_latm.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
rtpdec_mpa_robust.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_mpeg4.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
rtpdec_mpeg12.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_mpegts.c
rtpdec_qcelp.c
rtpdec_qdm2.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
rtpdec_qt.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec_rfc4175.c
rtpdec_svq3.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
rtpdec_vc2hq.c
rtpdec_vp8.c
rtpdec_vp9.c
rtpdec_xiph.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
rtpdec.c avformat: remove unneeded avio_flush() calls before calling avio_close_dyn_buf() 2020-01-07 21:51:45 +01:00
rtpdec.h
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c
rtpenc_chain.h
rtpenc_h261.c
rtpenc_h263_rfc2190.c
rtpenc_h263.c
rtpenc_h264_hevc.c
rtpenc_jpeg.c
rtpenc_latm.c
rtpenc_mpegts.c avformat/rtpenc_mpegts: removed unused check of avformat_free_context 2019-12-02 00:08:21 +08:00
rtpenc_mpv.c
rtpenc_vc2hq.c
rtpenc_vp8.c
rtpenc_vp9.c
rtpenc_xiph.c
rtpenc.c avcodec, avformat: Remove unnecessary initializations of side data size 2020-06-22 12:20:37 +02:00
rtpenc.h Revert "avformat/utils: make ff_ntp_time() accept a timestamp as input argument" 2020-01-16 22:27:35 -03:00
rtpproto.c avformat/rtpproto: av_dict_set() -> av_dict_set_int() 2020-06-02 22:25:11 +08:00
rtpproto.h
rtsp.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
rtsp.h
rtspcodes.h
rtspdec.c avformat/rtspdec: av_dict_set() -> av_dict_set_int() 2020-06-02 22:25:11 +08:00
rtspenc.c
s337m.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
samidec.c avformat/samidec: Fix memleak upon read header failure 2020-06-15 16:54:05 +02:00
sapdec.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
sapenc.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
sauce.c
sauce.h
sbcdec.c
sbgdec.c avformat/sbgdec: Check for overflow in parse_timestamp() 2020-07-20 19:47:27 +02:00
sccdec.c avformat/sccdec: Avoid variable that is always zero 2020-06-22 13:17:02 +02:00
sccenc.c
sctp.c
sdp.c avformat/sdp: Fix potential write beyond end of buffer 2020-07-10 20:36:31 +02:00
sdr2.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
sdsdec.c
sdxdec.c
segafilm.c avformat/segafilm: Reorder elements of struct to make it smaller 2020-07-26 16:58:42 +02:00
segafilmenc.c avformat/segafilmenc: Avoid seek when writing header 2020-07-26 17:10:06 +02:00
segment.c avformat/segment: Don't overwrite AVCodecParameters after init 2020-09-10 12:44:38 +02:00
serdec.c
shortendec.c avformat/shortendec: Check k in probe 2019-10-16 19:17:57 +02:00
sierravmd.c avformat/sierravmd: Don't return packets for non-existing stream 2020-08-09 19:07:23 +02:00
siff.c avformat/siff: Reject audio packets without audio stream 2020-08-20 13:27:22 +02:00
smacker.c avformat/smacker: Don't return packets for streams with AVDISCARD_ALL 2020-07-28 06:29:58 +02:00
smjpeg.c
smjpeg.h
smjpegdec.c avformat/smjpegdec: Check the existence of referred streams 2020-07-07 15:15:34 +02:00
smjpegenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
smoothstreamingenc.c avformat/smoothstreaming: Add deinit function 2020-06-27 23:19:58 +02:00
smush.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
sol.c
sox.h
soxdec.c
soxenc.c avformat: remove unneeded avio_flush() calls from the end of write_trailer functions 2020-01-07 21:51:45 +01:00
spdif.c
spdif.h
spdifdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
spdifenc.c avformat/spdifenc: fix TrueHD streams over 48kHz 2020-02-20 23:04:50 +02:00
srtdec.c avformat/srtdec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
srtenc.c
srtp.c
srtp.h
srtpproto.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
stldec.c avformat/stldec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
subfile.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
subtitles.c avformat/subtitles: Don't increment packet counter prematurely 2020-03-22 13:00:19 +01:00
subtitles.h
subviewer1dec.c avformat/subviewer1dec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
subviewerdec.c avformat/subviewerdec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
supdec.c
supenc.c
svag.c
swf.c
swf.h
swfdec.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
swfenc.c avformat/swfenc: Fix integer overflow in frame rate handling 2020-05-21 09:31:08 +02:00
takdec.c
tcp.c
tedcaptionsdec.c avformat/tedcaptionsdec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
tee_common.c
tee_common.h
tee.c lavf/tee: pass options to protocol. 2020-06-04 10:52:42 +02:00
teeproto.c
thp.c avformat/thp: Check fps 2020-06-13 00:43:09 +02:00
tiertexseq.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
tls_gnutls.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
tls_libtls.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
tls_mbedtls.c lavf/tls_mbedtls: fix resource leak 2020-04-22 12:41:29 +08:00
tls_openssl.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
tls_schannel.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
tls_securetransport.c avformat: Replace ffurl_close() by ffurl_closep() where appropriate 2020-05-25 13:11:36 +02:00
tls.c
tls.h
tmv.c
tta.c
ttaenc.c avformat/ttaenc: Defer freeing dynamic buffer 2020-05-21 05:30:26 +02:00
tty.c lavf/tty: Reduce probe score to fix ffmetadata auto-detection. 2020-03-14 15:38:34 +01:00
txd.c
ty.c avformat/ty: Remove write-only array and variable 2020-08-11 16:44:11 +02:00
udp.c lavf/udp: fix the comments for default UDP socket recvbuf size 2020-07-12 08:13:00 +08:00
uncodedframecrcenc.c
unix.c
url.c lavf/url: rewrite ff_make_absolute_url() using ff_url_decompose(). 2020-08-12 16:45:21 +02:00
url.h lavf/url: rewrite ff_make_absolute_url() using ff_url_decompose(). 2020-08-12 16:45:21 +02:00
urldecode.c avformat/urldecode: add the ability to not decode plus sign to space 2020-02-15 18:41:36 +01:00
urldecode.h avformat/urldecode: add the ability to not decode plus sign to space 2020-02-15 18:41:36 +01:00
utils.c avformat/utils: reorder duration computation to avoid overflow 2020-07-01 11:41:35 +02:00
v210.c
vag.c
vapoursynth.c
vc1dec.c
vc1test.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
vc1testenc.c avformat: remove unneeded avio_flush() calls from the end of write_trailer functions 2020-01-07 21:51:45 +01:00
version.h lavf/img2dec: Auto-detect Kodak Photo CD image files. 2020-09-05 10:45:52 +02:00
vividas.c avformat/vividas: Check allocation for success 2020-08-09 19:07:23 +02:00
vivo.c avformat/vivo: set packet duration 2020-02-20 14:41:26 +01:00
voc_packet.c
voc.c
voc.h
vocdec.c
vocenc.c
vorbiscomment.c avformat/vorbiscomment: Switch to AVIOContext from bytestream API 2020-05-03 13:43:54 +02:00
vorbiscomment.h avformat/vorbiscomment: Switch to AVIOContext from bytestream API 2020-05-03 13:43:54 +02:00
vpcc.c
vpcc.h
vpk.c avformat/vpk: add seeking support 2020-03-12 18:47:39 +01:00
vplayerdec.c avformat/vplayerdec: Fix memleak upon read header failure 2020-06-15 16:54:06 +02:00
vqf.c avformat: Remove unnecessary av_packet_unref() 2020-02-10 22:41:38 +01:00
w64.c
w64.h
wavdec.c avformat/wavdec: add support for chapters 2020-09-01 14:19:19 +02:00
wavenc.c avformat/wavenc: simplify, use av_rescale_q() instead 2020-05-10 22:32:34 +08:00
wc3movie.c avformat/wc3movie: fix memleak when read content size not equvipe input size 2019-10-28 14:26:22 +08:00
webm_chunk.c avformat/webm_chunk: Open AVIOContext before initializing sub-muxer 2020-05-23 07:15:35 +02:00
webmdashenc.c avformat/webmdashenc: Cosmetics 2020-07-26 16:47:01 +02:00
webpenc.c
webvttdec.c avformat/webvttdec: Accept \r as newline 2020-06-26 07:48:10 +02:00
webvttenc.c avformat: remove avio_flush() calls from the end of write_header functions 2020-01-07 21:51:45 +01:00
westwood_aud.c
westwood_vqa.c avformat: Forward errors where possible 2019-12-12 19:25:33 +01:00
wsddec.c
wtv_common.c
wtv.h
wtvdec.c avformat/wtvdec: Forward errors when reading packet 2020-02-19 22:37:30 +01:00
wtvenc.c avformat/riffenc: indicate storage of flipped RGB bitmaps 2020-07-15 20:52:01 +05:30
wv.c
wv.h
wvdec.c avformat/wvdec: Export version as extradata 2020-04-02 07:17:34 +02:00
wvedec.c
wvenc.c
xa.c
xmv.c avformat: Don't free old extradata before ff_alloc/get_extradata 2019-12-12 19:25:33 +01:00
xvag.c
xwma.c avformat/xwma: return always proper error codes 2020-03-19 10:58:07 +01:00
yop.c avformat/yop: Use av_packet_move_ref() for packet ownership transfer 2020-03-26 20:51:34 +01:00
yuv4mpeg.h
yuv4mpegdec.c avformat/yuv4mpegdec: add support for 444alpha 2020-03-19 17:34:31 +01:00
yuv4mpegenc.c avformat/yuv4mpegenc: Add const where appropriate 2020-09-04 17:34:44 +02:00