Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-18avformat/aviobuf: ffio_copy_url_optionsPierre-Anthony Lemieux
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com> Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
2021-10-24avformat/avio{,buf}: introduce public AVIOContext::bytes_{read,written}Jan Ekström
Such fields can be seen as generally useful in cases where the API user is not implementing custom AVIO callbacks, but still would like to know if data is being read or written out, such as in case data is being read from input but no AVPacket has been received yet.
2021-10-24avformat/avio: privatize source of truth for AVIOContext::writtenJan Ekström
Looking at 3f75e5116b900f1428aa13041fc7d6301bf1988a, the field was supposed to be private, but during merging the field and the group that had the comment about it got separated. Thus, move the actual privately utilized state of this variable into the private FFIOContext. Additionally, name the private field somewhat better, so that it does not get confused with the amount of bytes written out.
2021-10-04avformat/{aviobuf,avio_internal}: add max_len argument to ↵Jan Ekström
ff_read_string_to_bprint_overwrite This is especially useful when reading things such as null-terminated strings from MOV/MP4-likes, where the size of the box is known, but not the exact size of the string. Signed-off-by: Jan Ekström <jan.ekstrom@24i.com>
2021-10-04avformat/{aviobuf,avio_internal}: add ff_read_string_to_bprint_overwriteJan Ekström
For now, same as ff_read_line_to_bprint_overwrite, but reads until the end of a null-terminated string. Signed-off-by: Jan Ekström <jan.ekstrom@24i.com>
2021-09-24avformat/aviobuf: Extend ffio_fill to 64bitsAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-08-26avformat/avio: Move internal AVIOContext fields to avio_internal.hAndreas Rheinhardt
Currently AVIOContext's private fields are all over AVIOContext. This commit moves them into a new structure in avio_internal.h instead. Said structure contains the public AVIOContext as its first element in order to avoid having to allocate a separate AVIOContextInternal which is costly for those use cases where one just wants to access an already existing buffer via the AVIOContext-API. For these cases ffio_init_context() can't fail and always returned zero, which was typically not checked. Therefore it has been made to not return anything. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-08-26avformat/aviobuf: Make ffio_set_buf_size() staticAndreas Rheinhardt
Possible since 9c3adb7ce23522dcceb264bc0bffd3592dd3e1a5. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-07-29avformat/internal: Move ff_read_line_to_bprint_overwrite to avio_internal.hAndreas Rheinhardt
It only uses an AVIOContext and an AVBPrint. When doing so, it turned out that several non-users of ff_read_line_to_bprint_overwrite() and ff_bprint_to_codecpar_extradata() relied on libavformat/internal.h to include bprint.h or avstring.h for them. In order to avoid a repeat of this and in order to reduce unnecessary dependencies, a forward declaration of struct AVBPrint is used instead of including bprint.h. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2020-10-09avformat/aviobuf: discard part of the IO buffer in ffio_ensure_seekback if ↵Marton Balint
needed Previously ffio_ensure_seekback never flushed the buffer, so successive ffio_ensure_seekback calls were all respected. This could eventually cause unlimited memory and CPU usage if a demuxer called ffio_ensure_seekback on all it's read data. Most demuxers however only rely on being able to seek back till the position of the last ffio_ensure_seekback call, therefore we change the semantics of ffio_ensure_seekback so that a new call can invalidate seek guarantees of the old. In order to support some level of "nested" ffio_ensure_seekback calls, we document that the function only invalidates the old window (and potentially discards the already read data from the IO buffer), if the newly requested window does not fit into the old one. This way we limit the memory usage for ffio_ensure_seekback calls requesting consecutive data windows. Signed-off-by: Marton Balint <cus@passwd.hu>
2020-03-30avformat/aviobuf: Add function to reset dynamic bufferAndreas Rheinhardt
Resetting a dynamic buffer means to keep the AVIOContext and the internal buffer used by the dynamic buffer. This is done in order to save (re)allocations when one has a workflow where one opens and closes dynamic buffers in sequence. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2019-08-15lavf/avio: add a ffio_realloc_buf API for AVIO buffer realloctomajsjiang
Add new API ffio_realloc_buf for AVIO buffer realloc. Signed-off-by: Zhongxing Jiang <tomajsjiang@tencent.com>
2017-11-29libavformat/avio: Utility function to return URLContextJeyapal, Karthick
2017-09-01lavf: make avio_read_partial() publicwm4
Main use-case is proxying avio through a foreign I/O layer and a custom AVIO context, without losing latency and performance characteristics. Signed-off-by: Luca Barbato <lu_zero@gentoo.org> Merged from Libav commit 173b56218f39c64.
2016-08-04avformat/avio: add a crc callback function for CRC-32 IEEE-LEJames Almer
Reviewed-by: Nicolas George <george@nsup.org> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
2016-03-16hls: read protocol options through the AVIOContextHendrik Leppkes
This reverts commit 9f9ed79d4cb40e5d9093899f8a79086ff23da844. The hlsopts member was never set anywhere and always NULL, furthermore the HLS demuxer needs to retrieve the proper options from the underlying http protocol (cookies, user-agent, etc), so a dummy context won't help. Instead, use the AVIOContext directly to access the options.
2016-03-04avformat: Add a protocol blacklisting APIDerek Buitenhuis
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-29hls: Add and use a memebr of AVIOInternal rather than abuse opaqueDerek Buitenhuis
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24Merge commit '29c2d06d67724e994980045afa055c6c34611b30'Derek Buitenhuis
* commit '29c2d06d67724e994980045afa055c6c34611b30': cosmetics: Drop empty comment lines Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-18cosmetics: Drop empty comment linesDiego Biurrun
2016-02-02avformat: add protocol_whitelistMichael Niedermayer
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>
2015-06-01Merge commit 'bff0349d9da527084e1433167466d8afc9e25c7f'Michael Niedermayer
* commit 'bff0349d9da527084e1433167466d8afc9e25c7f': avio: Add avio_read wrapper to simplify error checking Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-31avio: Add avio_read wrapper to simplify error checkingVittorio Giovara
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-12avformat/internal: Fix warning about struct declarationMichael Niedermayer
Moving ffio_open2_wrapper() to internal as it uses AVFormatContext Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-11avformat: add callback for opening further filesMichael Niedermayer
Previous version reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-01Merge commit 'c86d8aed748adc3ba8df96fb1fe14aa45da77a31'Michael Niedermayer
* commit 'c86d8aed748adc3ba8df96fb1fe14aa45da77a31': avio: Rename avclass symbols relating to avio Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-28avio: Rename avclass symbols relating to avioMartin Storsjö
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-25Merge commit '8a273a746061a112e5e35066a8fd8e146d821a62'Michael Niedermayer
* commit '8a273a746061a112e5e35066a8fd8e146d821a62': avio: Add an internal utility function for freeing dynamic buffers Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-25avio: Add an internal utility function for freeing dynamic buffersMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-30Add int64_t probesize2 instead of int probesize to AVFormatContext.Carl Eugen Hoyos
Allows to set a probesize >2G. Tested-by: Oliver Fromme
2014-06-03fix various typosLou Logan
Signed-off-by: Lou Logan <lou@lrcd.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-18Merge commit '32d05934abc7427bb90380a4c1ab20a15fd7d821'Michael Niedermayer
* commit '32d05934abc7427bb90380a4c1ab20a15fd7d821': mp3dec: decode more data from Info header Conflicts: libavformat/mp3dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-17mp3dec: decode more data from Info headerAlessandro Ghedini
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-19Do not leave positive values undefined when negative are defined as errorMichael Niedermayer
Define positive return values as non errors and leave further meaning undefined This allows future extensions to use these values Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-20Merge commit '3627ce2f1dab1d33b7f99d78907a3e4d86b7d847'Michael Niedermayer
* commit '3627ce2f1dab1d33b7f99d78907a3e4d86b7d847': aviobuf: Add functions for null buffers Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19aviobuf: Add functions for null buffersMartin Storsjö
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-08-08Merge commit '5afe1d27912be9b643ffb4ddc21f6d920260dbb0'Michael Niedermayer
* commit '5afe1d27912be9b643ffb4ddc21f6d920260dbb0': avio: Add const qualifiers to ffio_read_indirect Conflicts: libavformat/mpegts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-08avio: Add const qualifiers to ffio_read_indirectBen Avison
This provides at least some protection against potential accidental corruption of AVIO buffer workspace. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-08-06Merge commit 'daf1e0d3de03bd424016e2a7520e4e94ece5c0ac'Michael Niedermayer
* commit 'daf1e0d3de03bd424016e2a7520e4e94ece5c0ac': avio: Add an internal function for reading without copying Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-05avio: Add an internal function for reading without copyingBen Avison
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-07-04avformat/aviobuf: Add ffio_ensure_seekback()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-19Merge commit '523c7bd23c781aa0f3a85044896f5e18e8b52534'Michael Niedermayer
* commit '523c7bd23c781aa0f3a85044896f5e18e8b52534': misc typo, style and wording fixes Conflicts: libavcodec/options_table.h libavutil/pixfmt.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-18misc typo, style and wording fixesDiego Biurrun
2012-10-13avio: redesign ffio_rewind_with_probe_data()Michael Niedermayer
This prevents a double free Fixes CID718285 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-19lavf: split out ffio_limit()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: lavf: pass options from AVFormatContext to avio. avformat: Use avio_open2, pass the AVFormatContext interrupt_callback onwards avio: add avio_open2, taking an interrupt callback and options avio: add support for passing options to protocols. avio: add and use ffurl_protocol_next(). avformat: Pass the interrupt callback on to chained muxers/demuxers avio: Add an AVIOInterruptCB parameter to ffurl_open/ffurl_alloc avformat: Use ff_check_interrupt avio: Add an internal utility function for checking the new interrupt callback avio: Add AVIOInterruptCB texi2html: remove stray \n doc: prettyfy the texi2html documentation swscale: handle unaligned buffers in yuv2plane1 Conflicts: libavformat/avformat.h libavformat/avio.c libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13avio: add avio_open2, taking an interrupt callback and optionsMartin Storsjö
The interrupt callback has to be passed in during opening (setting it after opening isn't enough), since a blocking open couldn't be interrupted otherwise. Options are passed down to procotols and also need to be available during open() in most cases. Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-22Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: ffmpeg: get rid of the -vglobal option. dct32: Add AVX implementation of 32-point DCT dct32: Change pass 6 permutation to allow for AVX implementation dct32: port SSE 32-point DCT to YASM multiple inclusion guard cleanup avio: document buffer must created with av_malloc() and friends avio: check AVIOContext malloc failure swscale: point out an alternative to sws_getContext svq3: Do initialization after parsing the extradata add changelog entries for 0.7_beta2 mp3lame: add #include required for AV_RB32 macro. Conflicts: Changelog libavcodec/svq3.c libavcodec/x86/dct32_sse.c libavfilter/vsrc_buffer.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-21multiple inclusion guard cleanupDiego Biurrun
Add missing multiple inclusion guards; clean up #endif comments; add missing library prefixes; keep guard names consistent.
2011-04-13Merge remote branch 'qatar/master'Michael Niedermayer
* qatar/master: Partially merged:flvdec: Allow parsing keyframes metadata without seeking in most cases Error out if vaapi is not found avio: undeprecate av_url_read_fseek/fpause under nicer names libvo-*: Don't use deprecated sample format names and enum names DUPLICATE flvdec: Fix support for flvtool2 "keyframes based" generated index DUPLICATE libavcodec: Use "const enum AVSampleFormat[]" in AVCodec initialization Fix the conversion of AV_SAMPLE_FMT_FLT and _DBL to AV_SAMPLE_FMT_S32. Convert some undefined 1<<31 shifts into 1U<<31. Conflicts: configure libavcodec/libvo-aacenc.c libavcodec/libvo-amrwbenc.c libavformat/flvdec.c Marged-by: Michael Niedermayer <michaelni@gmx.at>