Derek Buitenhuis
9f9ed79d4c
hls: Add and use a memebr of AVIOInternal rather than abuse opaque
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 20:10:11 +00:00
Derek Buitenhuis
b9aa4ccff5
Merge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'
...
* commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d':
aviobuf: add a private data struct for avio_open()ed contexts
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29 18:43:16 +00:00
Anton Khirnov
cae448cfbf
aviobuf: add a private data struct for avio_open()ed contexts
...
It will be useful in the following commits.
2016-02-22 11:36:47 +01:00
Michael Niedermayer
1dba8371d9
avformat: add protocol_whitelist
...
Note to maintainers: update tools
Note to maintainers: set a default whitelist for your protocol
If that makes no sense then consider to set "none" and thus require the user to specify a white-list
for sub-protocols to be opened
Note, testing and checking for missing changes is needed
Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-02 03:39:34 +01:00
Michael Niedermayer
8fac0d6403
avformat/avio: free url/avio options
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-29 19:23:02 +01:00
Michael Niedermayer
115fb6d03e
avformat/aviobuf: Fix end check in put_str16()
...
Fixes out of array read
Fixes: 03c406ec9530e594a074ce2979f8a1f0/asan_heap-oob_7dec26_4664_37c52495b2870a2eaac65f53958e76c1.flac
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-13 03:09:08 +01:00
Reynaldo H. Verdejo Pinochet
baf4c489e5
avio: add detail to avio_printf() size warning
...
Previous "currently size is limited" didn't give away
much in terms of useful info.
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
2015-12-27 00:09:16 -08:00
Bryan Huh
a01ba7f579
avformat/aviobuf: Simplify avio_read() and avio_seek()
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-11-16 12:14:03 +01:00
Bryan Huh
a01c24e8c5
avformat/aviobuf: Improve readability of aviobuf (Add comments and docs)
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-11-16 12:14:03 +01:00
Stephan Holljes
63c07a956b
lavf/avio: add avio_accept and avio_handshake
...
Signed-off-by: Stephan Holljes <klaxa1337@googlemail.com>
2015-08-01 00:58:31 +02:00
Michael Niedermayer
29d147c94d
Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'
...
* commit '059a934806d61f7af9ab3fd9f74994b838ea5eba':
lavc: Consistently prefix input buffer defines
Conflicts:
doc/examples/decoding_encoding.c
libavcodec/4xm.c
libavcodec/aac_adtstoasc_bsf.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.h
libavcodec/asvenc.c
libavcodec/avcodec.h
libavcodec/avpacket.c
libavcodec/dvdec.c
libavcodec/ffv1enc.c
libavcodec/g2meet.c
libavcodec/gif.c
libavcodec/h264.c
libavcodec/h264_mp4toannexb_bsf.c
libavcodec/huffyuvdec.c
libavcodec/huffyuvenc.c
libavcodec/jpeglsenc.c
libavcodec/libxvid.c
libavcodec/mdec.c
libavcodec/motionpixels.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/noise_bsf.c
libavcodec/nuv.c
libavcodec/nvenc.c
libavcodec/options.c
libavcodec/parser.c
libavcodec/pngenc.c
libavcodec/proresenc_kostya.c
libavcodec/qsvdec.c
libavcodec/svq1enc.c
libavcodec/tiffenc.c
libavcodec/truemotion2.c
libavcodec/utils.c
libavcodec/utvideoenc.c
libavcodec/vc1dec.c
libavcodec/wmalosslessdec.c
libavformat/adxdec.c
libavformat/aiffdec.c
libavformat/apc.c
libavformat/apetag.c
libavformat/avidec.c
libavformat/bink.c
libavformat/cafdec.c
libavformat/flvdec.c
libavformat/id3v2.c
libavformat/isom.c
libavformat/matroskadec.c
libavformat/mov.c
libavformat/mpc.c
libavformat/mpc8.c
libavformat/mpegts.c
libavformat/mvi.c
libavformat/mxfdec.c
libavformat/mxg.c
libavformat/nutdec.c
libavformat/oggdec.c
libavformat/oggparsecelt.c
libavformat/oggparseflac.c
libavformat/oggparseopus.c
libavformat/oggparsespeex.c
libavformat/omadec.c
libavformat/rawdec.c
libavformat/riffdec.c
libavformat/rl2.c
libavformat/rmdec.c
libavformat/rtpdec_latm.c
libavformat/rtpdec_mpeg4.c
libavformat/rtpdec_qdm2.c
libavformat/rtpdec_svq3.c
libavformat/sierravmd.c
libavformat/smacker.c
libavformat/smush.c
libavformat/spdifenc.c
libavformat/takdec.c
libavformat/tta.c
libavformat/utils.c
libavformat/vqf.c
libavformat/westwood_vqa.c
libavformat/xmv.c
libavformat/xwma.c
libavformat/yop.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 23:15:19 +02:00
Vittorio Giovara
059a934806
lavc: Consistently prefix input buffer defines
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:59 +01:00
wm4
dc87758775
avio: fix potential crashes when combining ffio_ensure_seekback + crc
...
Calling ffio_ensure_seekback() if ffio_init_checksum() has been called
on the same context can lead to out of bounds memory accesses and
crashes. The reason is that ffio_ensure_seekback() does not update
checksum_ptr after reallocating the buffer, resulting in a dangling
pointer.
This effectively fixes potential crashes when opening mp3 files.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-17 01:13:19 +02:00
Michael Niedermayer
4e640f0560
avformat/avio: move short seek threshold to the context
...
This allows us to adjust it internally.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-11 13:42:06 +02:00
Michael Niedermayer
0023ea4e20
avformat/aviobuf: Check for ffio_set_buf_size() failure
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-07 14:57:36 +02:00
Luca Barbato
252d6200c3
avio: Add avio_put_str16be
2015-06-07 10:14:45 +02:00
Michael Niedermayer
ebab902a1c
Merge commit 'bff0349d9da527084e1433167466d8afc9e25c7f'
...
* commit 'bff0349d9da527084e1433167466d8afc9e25c7f':
avio: Add avio_read wrapper to simplify error checking
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 00:43:50 +02:00
Vittorio Giovara
bff0349d9d
avio: Add avio_read wrapper to simplify error checking
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 13:05:13 +02:00
Michael Niedermayer
541d75f9a0
avformat: add callback for opening further files
...
Previous version reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-11 21:55:18 +02:00
Michael Niedermayer
46778ab212
avformat/aviobuf: Do not resize the buffer in ffio_ensure_seekback() if there is no read function
...
Without a read function there can never be more data read than the buffer could
hold
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-27 05:06:36 +02:00
Michael Niedermayer
22af79a9c8
Merge commit 'b97f427fb56bdbf7de8e2d4b72d01114aa6eceda'
...
* commit 'b97f427fb56bdbf7de8e2d4b72d01114aa6eceda':
lavf: Explicitly convert types at function pointer assignment
Conflicts:
libavformat/avio.c
libavformat/aviobuf.c
libavformat/swfenc.c
See: a76a2ffe9d
and others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-12 12:38:20 +01:00
Diego Biurrun
b97f427fb5
lavf: Explicitly convert types at function pointer assignment
...
This fixes a number of "assignment from incompatible pointer type" warnings.
2015-03-11 23:53:13 +01:00
Mark Reid
81a91269a2
libavformat/avio: added avio_put_str16be
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-03 17:49:15 +01:00
Michael Niedermayer
1fb3642317
Merge commit 'c86d8aed748adc3ba8df96fb1fe14aa45da77a31'
...
* commit 'c86d8aed748adc3ba8df96fb1fe14aa45da77a31':
avio: Rename avclass symbols relating to avio
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-28 23:02:42 +01:00
Martin Storsjö
c86d8aed74
avio: Rename avclass symbols relating to avio
...
Don't prefix them ffio_url, which is misleading, sounding too
much like the urlprotocol layer (like ffurl_*).
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-28 22:07:04 +02:00
Michael Niedermayer
6e9bbaca6c
Merge commit '8a273a746061a112e5e35066a8fd8e146d821a62'
...
* commit '8a273a746061a112e5e35066a8fd8e146d821a62':
avio: Add an internal utility function for freeing dynamic buffers
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-25 00:33:09 +01:00
Martin Storsjö
8a273a7460
avio: Add an internal utility function for freeing dynamic buffers
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 23:07:41 +02:00
Michael Niedermayer
58ed152857
avformat/aviobuf: Allow seeking to the end of the buffer for read only buffers
...
This undoes the effect of 3c18a7b188
for reading
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-28 20:56:50 +01:00
Michael Niedermayer
0b4fc4bacd
Merge commit '3c18a7b18807de81566381a1bcbe9f6103c0296b'
...
* commit '3c18a7b18807de81566381a1bcbe9f6103c0296b':
avio: Do not consider the end-of-buffer position valid
Conflicts:
libavformat/aviobuf.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-28 20:37:28 +01:00
Luca Barbato
3c18a7b188
avio: Do not consider the end-of-buffer position valid
...
Trigger a refill if the seek action moves the pointer
at the end of the buffer.
Before this patch the read action following the seek would trigger
the refill, while write action would write outside the buffer.
In the Libav codebase few muxers seek forward outside of what
already has been written so it is quite unlikely to experience
the problem with the default buffer size.
CC: libav-stable@libav.org
2015-01-28 16:28:10 +01:00
Michael Niedermayer
ed86dbd05d
avformat/aviobuf: Check that avio_seek() target is non negative
...
Fixes out of array access
Suggested-by: Andrew Scherkus <scherkus@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-14 17:39:53 +01:00
Michael Niedermayer
eac5c7b837
avformat/aviobuf: Fix infinite loop in ff_get_line()
...
Fixes ticket4152
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-03 19:05:56 +01:00
Michael Niedermayer
36552345d0
Merge commit 'd7f530b0d67fe3996dbfa990a47c865e0d1400a2'
...
* commit 'd7f530b0d67fe3996dbfa990a47c865e0d1400a2':
aviobuf: check context before using it
See: 7441d1ec33
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-20 21:25:37 +02:00
Vittorio Giovara
d7f530b0d6
aviobuf: check context before using it
...
Avoid a possible null pointer dereference.
CC: libav-stable@libav.org
Bug-Id: CID 1135769
2014-10-20 10:38:38 +01:00
wm4
c8422f04a3
avformat/aviobuf: fix avio_flush() for read streams
...
avio_flush() did nothing useful for read streams. Fix it to behave as
expected, and discard the currently read buffer properly.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-30 21:31:08 +02:00
Michael Niedermayer
7a2c380e93
avformat/aviobuf: remove uses of deprecated url_feof()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-27 22:30:07 +02:00
James Almer
5c3c67126f
lavf/avio: rename url_feof() to avio_feof()
...
It's a public function and should use the avio_ namespace
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 00:48:22 +02:00
Carl Eugen Hoyos
ff9a154157
Add int64_t probesize2 instead of int probesize to AVFormatContext.
...
Allows to set a probesize >2G.
Tested-by: Oliver Fromme
2014-07-30 11:09:25 +02:00
Nicolas George
04bc370072
lavf/avio: do not include bprint.h.
...
C++ chokes on the definition of AVBPrint.
Including avio.h from c++ code used to work.
Fix trac ticket #3800 .
Signed-off-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-25 05:37:45 +02:00
Andrey Utkin
8a4c0866dc
avio: Introduce avio_read_to_bprint(avioctx, bp, max_size)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 18:42:41 +02:00
Michael Niedermayer
46380e8d26
avformat/aviobuf/ff_get_line: also accept \r as end of line character
...
Fixes Ticket3108
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-17 23:49:05 +02:00
Michael Niedermayer
cdc166acd8
Merge commit '32d05934abc7427bb90380a4c1ab20a15fd7d821'
...
* commit '32d05934abc7427bb90380a4c1ab20a15fd7d821':
mp3dec: decode more data from Info header
Conflicts:
libavformat/mp3dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-18 00:38:07 +02:00
Alessandro Ghedini
32d05934ab
mp3dec: decode more data from Info header
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-04-17 20:08:19 +02:00
Michael Niedermayer
61b5ef7754
libavformat/aviobuf: keep track of the original buffer-size and restore it after probe/ensure-seekback
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-26 23:58:48 +01:00
Michael Niedermayer
0d4a66ee7f
avformat/aviobuf: ffio_ensure_seekback: only copy the initialized part of the buffer
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-26 23:52:38 +01:00
Michael Niedermayer
9600486d10
avformat/aviobuf: optimize sequential backward seeking
...
This reduces the number of protocol seeks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-01 23:57:40 +01:00
Michael Niedermayer
2adf422ce2
avformat/aviobuf: factorize buffer_size out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-01 23:27:37 +01:00
Michael Niedermayer
7441d1ec33
avformat/aviobuf: fix null dereference in avio_close_dyn_buf()
...
Fixes CID1135769
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-11 16:16:04 +01:00
Michael Niedermayer
269f5d902a
avformat/aviobuf: return error from avio_put_str16le() for invalid input
...
Found-by: Stefano Sabatini
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-13 19:16:27 +01:00
Michael Niedermayer
b52ae27edf
avio_put_str16le: Print error message in case of invalid UTF8 input
...
Found-by: Stefano Sabatini
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-13 19:09:04 +01:00