summaryrefslogtreecommitdiffstats
path: root/libavformat/internal.h
Commit message (Collapse)AuthorAgeFilesLines
...
* | avformat/utils: add ff_parse_creation_time_metadataMarton Balint2016-02-141-0/+11
| | | | | | | | Signed-off-by: Marton Balint <[email protected]>
* | Merge commit '9f61abc8111c7c43f49ca012e957a108b9cc7610'Derek Buitenhuis2016-02-101-0/+6
|\| | | | | | | | | | | | | | | | | This also deprecates our old duplicated callbacks. * commit '9f61abc8111c7c43f49ca012e957a108b9cc7610': lavf: allow custom IO for all files Merged-by: Derek Buitenhuis <[email protected]>
| * lavf: allow custom IO for all filesAnton Khirnov2016-01-241-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Some (de)muxers open additional files beyond the main IO context. Currently, they call avio_open() directly, which prevents the caller from using custom IO for such streams. This commit adds callbacks to AVFormatContext that default to avio_open2()/avio_close(), but can be overridden by the caller. All muxers and demuxers using AVIO are switched to using those callbacks instead of calling avio_open()/avio_close() directly. (de)muxers that use the URLProtocol layer directly instead of AVIO remain unconverted for now. This should be fixed in later commits.
* | lavf: add internal API to append a bsf to a stream's listRodger Combs2015-12-281-0/+11
| |
* | lavf: add automatic bitstream filtering; bump versionRodger Combs2015-12-281-0/+17
| | | | | | | | | | | | | | | | | | This solves the problem discussed in https://ffmpeg.org/pipermail/ffmpeg-devel/2015-September/179238.html by allowing AVCodec::write_header to be delayed until after packets have been run through required bitstream filters in order to generate global extradata. It also provides a mechanism by which a muxer can add a bitstream filter to a stream automatically, rather than prompting the user to do so.
* | avformat: Add av_program_add_stream_index()Michael Niedermayer2015-12-111-2/+0
| | | | | | | | | | | | This will be used by the subsequent commit(s) Signed-off-by: Michael Niedermayer <[email protected]>
* | lavf: add FFERROR_REDO to let demuxers return no packet.Nicolas George2015-12-031-0/+6
| |
* | Merge commit '7f4ec4364bc4a73036660c1c6a3c4801db524e9e'Derek Buitenhuis2015-11-221-7/+0
|\| | | | | | | | | | | | | | | | | | | * commit '7f4ec4364bc4a73036660c1c6a3c4801db524e9e': avformat: expose av_stream_new_side_data helper Conflicts: libavformat/internal.h Merged-by: Derek Buitenhuis <[email protected]>
| * avformat: expose av_stream_new_side_data helperJohn Stebbins2015-11-181-7/+0
| | | | | | | | Signed-off-by: Anton Khirnov <[email protected]>
* | Merge commit '8de1ee9f725aa3c550f425bd3120bcd95d5b2ea8'Hendrik Leppkes2015-11-111-0/+12
|\| | | | | | | | | | | | | * commit '8de1ee9f725aa3c550f425bd3120bcd95d5b2ea8': lavf: deprecate compute_pkt_fields2 Merged-by: Hendrik Leppkes <[email protected]>
| * lavf: deprecate compute_pkt_fields2Anton Khirnov2015-11-091-0/+12
| | | | | | | | | | | | | | | | | | All encoders set pts and dts properly now (and have been doing that for a while), so there is no good reason to do any timestamp guessing in the muxer. The newly added AVStreamInternal will be later used for storing all the private fields currently living in AVStream.
* | Merge commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457'Hendrik Leppkes2015-10-271-1/+1
|\| | | | | | | | | | | | | * commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457': avpacket: Replace av_free_packet with av_packet_unref Merged-by: Hendrik Leppkes <[email protected]>
| * avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-261-1/+1
| | | | | | | | | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* | avformat: Remove use of AVFrac and AVStream->ptsMichael Niedermayer2015-08-231-0/+12
| | | | | | | | | | | | | | Move field to internal part of AVStream and struct to internal.h Reviewed-by: Andreas Cadhalpun <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat: Move MAX_PROBE_PACKETS to internal.hMichael Niedermayer2015-08-121-0/+2
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'Michael Niedermayer2015-07-271-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 <[email protected]>
* | avformat: Add ff_configure_buffers_for_index()Michael Niedermayer2015-07-131-0/+2
| | | | | | | | | | | | This allows configuring the io buffer in such way that few seeks are needed for playback Signed-off-by: Michael Niedermayer <[email protected]>
* | libavformat/mux: Add ff_choose_chroma_location()Michael Niedermayer2015-05-221-0/+5
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/internal: Fix warning about struct declarationMichael Niedermayer2015-05-121-0/+3
| | | | | | | | | | | | Moving ffio_open2_wrapper() to internal as it uses AVFormatContext Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/internal: always check arguments of hex_dump_debug()Michael Niedermayer2015-05-071-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/mux: Add avoid_negative_ts_use_ptsMichael Niedermayer2015-05-051-0/+2
| | | | | | | | | | | | This allows using pts instead of dts for negative TS avoidance Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '9deaec782810d098bca11c9332fab2d2f4c5fb78'Michael Niedermayer2015-02-111-0/+42
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '9deaec782810d098bca11c9332fab2d2f4c5fb78': lavf: move internal fields from public to internal context Conflicts: libavformat/avformat.h libavformat/internal.h libavformat/mux.c libavformat/utils.c Merged-by: Michael Niedermayer <[email protected]>
| * lavf: move internal fields from public to internal contextwm42015-02-101-0/+41
| | | | | | | | | | | | | | This is not an API change; the fields were explicitly declared private before. Signed-off-by: Anton Khirnov <[email protected]>
* | avformat/internal: fix av_interleaved_write_frame typo referenceClément Bœsch2015-02-081-1/+1
| |
* | Merge commit '4227e4fe7443733fb906f6fb6c265105e8269c74'Michael Niedermayer2015-01-271-0/+7
|\| | | | | | | | | | | | | | | | | | | | | * commit '4227e4fe7443733fb906f6fb6c265105e8269c74': lavf: add a convenience function for adding side data to a stream Conflicts: libavformat/internal.h libavformat/replaygain.c Merged-by: Michael Niedermayer <[email protected]>
| * lavf: add a convenience function for adding side data to a streamAnton Khirnov2015-01-271-0/+7
| |
* | Merge commit '675ac56b7ee0f204963fde55295197c5df80aa91'Michael Niedermayer2014-11-271-6/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '675ac56b7ee0f204963fde55295197c5df80aa91': Revert "lavf: Don't try to update files atomically with renames on windows" Conflicts: libavformat/dashenc.c libavformat/hdsenc.c libavformat/internal.h libavformat/smoothstreamingenc.c Merged-by: Michael Niedermayer <[email protected]>
| * Revert "lavf: Don't try to update files atomically with renames on windows"Martin Storsjö2014-11-271-6/+0
| | | | | | | | | | | | | | | | | | This reverts commit b9d08c77a44390b0848c06f20bc0e9e951ba6a3c. After taking MoveFileEx into use, we can replace files with renames on windows as well. Signed-off-by: Martin Storsjö <[email protected]>
* | Merge commit '960aff379da46dcaff61504a57714d4d4e758e41'Michael Niedermayer2014-11-251-0/+1
|\| | | | | | | | | | | | | | | | | | | * commit '960aff379da46dcaff61504a57714d4d4e758e41': lavf: Use wchar functions for filenames on windows for mkdir/rmdir/rename/unlink Conflicts: libavformat/os_support.h Merged-by: Michael Niedermayer <[email protected]>
| * lavf: Use wchar functions for filenames on windows for mkdir/rmdir/rename/unlinkMartin Storsjö2014-11-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes sure that the internal utf8 path names are handled properly - the normal file handling functions assume path names are in the native codepage, which isn't utf8. This assumes that the tools outside of lavf don't use the mkdir definition. (The tools don't do the same reading of command line parameters as wchar either - they probably won't handle all possible unicode file parameters properly, but at least work more predictably if no utf8/wchar conversion is involved.) This is moved further down in os_support.h, since windows.h shouldn't be included before winsock2.h, while io.h needs to be included before the manual defines for lseek functions. Signed-off-by: Martin Storsjö <[email protected]>
* | Merge commit 'b9d08c77a44390b0848c06f20bc0e9e951ba6a3c'Michael Niedermayer2014-11-251-0/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit 'b9d08c77a44390b0848c06f20bc0e9e951ba6a3c': lavf: Don't try to update files atomically with renames on windows Conflicts: libavformat/dashenc.c libavformat/hdsenc.c libavformat/internal.h libavformat/smoothstreamingenc.c Merged-by: Michael Niedermayer <[email protected]>
| * lavf: Don't try to update files atomically with renames on windowsMartin Storsjö2014-11-241-0/+6
| | | | | | | | | | | | | | | | | | On windows, rename(2) will fail if the target file exists. On unix this trick is used to make sure that people reading the file either will get the full previous file, or the full new version of the file, but no intermediate version. Signed-off-by: Martin Storsjö <[email protected]>
* | avformat: Print error message on failure of ff_rename()Michael Niedermayer2014-10-251-4/+8
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '7785ce1c769369abf85b276148548a5510aabb5f'Michael Niedermayer2014-10-251-0/+14
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '7785ce1c769369abf85b276148548a5510aabb5f': lavf: replace rename() with ff_rename() Conflicts: libavformat/hdsenc.c libavformat/internal.h See: 95d2fc6a76f3e0a98329f1ca70f98e7c085f0abf Merged-by: Michael Niedermayer <[email protected]>
| * lavf: replace rename() with ff_rename()Luca Barbato2014-10-241-0/+14
| | | | | | | | | | | | | | | | | | The new function wraps errno so that its value is correctly reported when other functions overwrite it (eg. in case of logging). CC: [email protected] Bug-Id: CID 1135748 Signed-off-by: Vittorio Giovara <[email protected]>
* | avformat: Add and use ff_copy_whitelists()Michael Niedermayer2014-10-241-0/+4
| | | | | | | | | | | | | | Fixes potential security issue in case of running out of memory Found-by: ubitux Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '2d6e58497e76836604364b037df9b00ba3d75b69'Michael Niedermayer2014-10-151-1/+1
|\| | | | | | | | | | | | | | | | | | | * commit '2d6e58497e76836604364b037df9b00ba3d75b69': lavf: switch to AVCodecContext.framerate for demuxing Conflicts: libavformat/utils.c Merged-by: Michael Niedermayer <[email protected]>
| * lavf: switch to AVCodecContext.framerate for demuxingAnton Khirnov2014-10-151-1/+1
| |
| * lavf: eliminate ff_get_audio_frame_size()Anton Khirnov2014-08-131-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is basically a wrapper around av_get_audio_frame_duration(), with a fallback to AVCodecContext.frame_size. However, that field is set only when the stream codec context is actually used for encoding or decoding, which is discouraged. For muxing, it is generally the responsibility of the caller to set the packet duration. For demuxing, if the duration is not stored at the container level, it should be set by the parser. Therefore, removing the frame_size fallback should not break any important case.
* | lavf: eliminate ff_get_audio_frame_size()Anton Khirnov2014-08-141-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is basically a wrapper around av_get_audio_frame_duration(), with a fallback to AVCodecContext.frame_size. However, that field is set only when the stream codec context is actually used for encoding or decoding, which is discouraged. For muxing, it is generally the responsibility of the caller to set the packet duration. For demuxing, if the duration is not stored at the container level, it should be set by the parser. Therefore, removing the frame_size fallback should not break any important case. (cherry picked from commit 30e50c50274f88f0f5ae829f401cd3c7f5266719) Conflicts: libavformat/utils.c Signed-off-by: Michael Niedermayer <[email protected]>
* | avformat/mux: support re-interleaving packets in ff_write_chained()Michael Niedermayer2014-07-241-1/+2
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>
* | Merge commit '324ff59444ff5470bb325ff1e2be7c4b054fc944'Michael Niedermayer2014-07-171-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '324ff59444ff5470bb325ff1e2be7c4b054fc944': avpacket: Check for and return errors in ff_interleave_add_packet() Conflicts: libavformat/audiointerleave.c libavformat/internal.h libavformat/mux.c See: 4d7c71c36467331f1e0c0f17af9f371d33308a9c Merged-by: Michael Niedermayer <[email protected]>
| * avpacket: Check for and return errors in ff_interleave_add_packet()Nidhi Makhijani2014-07-171-2/+2
| | | | | | | | Signed-off-by: Diego Biurrun <[email protected]>
* | Various small spelling fixes.Reimar Döffinger2014-04-221-3/+3
| | | | | | | | Signed-off-by: Reimar Döffinger <[email protected]>
* | avformat: add av_format_inject_global_side_data(), and disable it by defaultMichael Niedermayer2014-04-151-0/+2
| | | | | | | | | | | | | | | | | | | | After this commit applications needs to call av_format_inject_global_side_data() or handle AVStream side data by some other means if they want it not to be lost. This fixes a API incompatibility with libav. libav API does not allow the data to be passed through AVPackets Signed-off-by: Michael Niedermayer <[email protected]>
* | lavf: add write_uncoded_frame() API.Nicolas George2014-02-111-0/+14
| |
* | Merge commit '33c859c142ef3f49b7a6227014ad92a680cf4d74'Michael Niedermayer2014-02-041-0/+8
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '33c859c142ef3f49b7a6227014ad92a680cf4d74': lavf: ignore attachment streams for interleaving purposes Conflicts: libavformat/avformat.h libavformat/internal.h libavformat/mux.c Merged-by: Michael Niedermayer <[email protected]>
| * lavf: ignore attachment streams for interleaving purposesAnton Khirnov2014-02-041-0/+8
| | | | | | | | Those streams should never get any packets by definition.
* | Merge commit '50ecf15712354a1d5b3f4dc9a57ff90ed7ee9654'Michael Niedermayer2014-01-261-1/+1
|\| | | | | | | | | | | | | | | | | | | * commit '50ecf15712354a1d5b3f4dc9a57ff90ed7ee9654': avformat: utils: K&R formatting cosmetics Conflicts: libavformat/utils.c Merged-by: Michael Niedermayer <[email protected]>
* | avformat: add ff_get_extradata()Michael Niedermayer2013-12-251-0/+9
| | | | | | | | Signed-off-by: Michael Niedermayer <[email protected]>