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 ' b97f427fb5'
...
* commit 'b97f427fb5 ':
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 ' c86d8aed74'
...
* commit 'c86d8aed74 ':
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 ' 8a273a7460'
...
* commit '8a273a7460 ':
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 ' 3c18a7b188'
...
* commit '3c18a7b188 ':
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 ' d7f530b0d6'
...
* commit 'd7f530b0d6 ':
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 ' 32d05934ab'
...
* commit '32d05934ab ':
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
Michael Niedermayer
81c3bb78ac
Merge commit ' d07b51bf07'
...
* commit 'd07b51bf07 ':
aviobuf: Handle a NULL buffer in avio_close_dyn_buf
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-01 19:28:39 +01:00
Martin Storsjö
d07b51bf07
aviobuf: Handle a NULL buffer in avio_close_dyn_buf
...
This simplifies proper error handling in rtsp.c/rtspdec.c. When
broadcasting over RTSP in TCP mode, the AVIOContext is closed and
recreated for each sent packet, and if the recreation fails, we might
try to close a NULL buffer when freeing things at the end.
Previously, if recreating the buffer in rtspdec.c failed, this would
crash later due to trying to close a NULL buffer.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-01 09:56:27 +02:00
Michael Niedermayer
72eddc10fa
Merge commit ' d872fb0f7f'
...
* commit 'd872fb0f7f ':
lavf: Reset the entry count and allocation size variables on av_reallocp failures
Conflicts:
libavformat/avienc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-27 12:13:41 +02:00
Martin Storsjö
d872fb0f7f
lavf: Reset the entry count and allocation size variables on av_reallocp failures
...
When av_reallocp fails, the associated variables that keep track of
the number of elements in the array (and in some cases, the
separate number of allocated elements) need to be reset.
Not all of these might technically be needed, but it's better to
reset them if in doubt, to make sure variables don't end up
conflicting.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-26 23:14:03 +03:00
Michael Niedermayer
2ad8056c5e
Merge commit ' 3627ce2f1d'
...
* commit '3627ce2f1d ':
aviobuf: Add functions for null buffers
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20 12:26:09 +02:00
Martin Storsjö
3627ce2f1d
aviobuf: Add functions for null buffers
...
Null buffers are useful for simulating writing to a real buffer
for the sake of measuring how many bytes are written.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-19 22:42:37 +03:00
Michael Niedermayer
20dfab33f5
Merge commit ' 5626f994f2'
...
* commit '5626f994f2 ':
avformat: Use av_reallocp() where suitable
Conflicts:
libavformat/avidec.c
libavformat/avienc.c
libavformat/aviobuf.c
libavformat/oggparsevorbis.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 11:01:26 +02:00
Alexandra Khirnova
5626f994f2
avformat: Use av_reallocp() where suitable
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-09-18 18:28:38 +02:00
Michael Niedermayer
a0fb608396
Merge commit ' 5afe1d2791'
...
* commit '5afe1d2791 ':
avio: Add const qualifiers to ffio_read_indirect
Conflicts:
libavformat/mpegts.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-08 12:04:46 +02:00
Ben Avison
5afe1d2791
avio: Add const qualifiers to ffio_read_indirect
...
This provides at least some protection against potential accidental
corruption of AVIO buffer workspace.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-08-08 11:09:00 +03:00
Michael Niedermayer
8878aef048
Merge commit ' daf1e0d3de'
...
* commit 'daf1e0d3de ':
avio: Add an internal function for reading without copying
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-06 15:02:27 +02:00
Ben Avison
daf1e0d3de
avio: Add an internal function for reading without copying
...
As long as there is enough contiguous data in the avio buffer,
just return a pointer to it instead of copying it to the caller
provided buffer.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-08-05 15:14:25 +03:00
Hendrik Schreiber
b512360184
avio: Don't set the seekable flag if no seek function is provided
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-26 21:46:18 +03:00
Hendrik Schreiber
650355089c
avformat/aviobuf/ffio_init_context: set seekable automatically
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-23 17:19:32 +02:00
Michael Niedermayer
186ec17843
avformat/aviobuf: Add ffio_ensure_seekback()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 19:13:38 +02:00
Michael Niedermayer
2ca48e4666
avformat: Append data in fill_buffer() when possible
...
Data is appended in fill_buffer() when there is sufficient space left
and the data pointer only reset when needed.
Previously the data pointer was more often reset, loosing more seekback
space than otherwise needed.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-04 19:13:38 +02:00
Michael Niedermayer
ad6a50c0ed
avformat: add writeout_count statistic
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 13:30:40 +02:00