summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* lavf/format: use const AVInputFormat for iterationJosh de Kock2018-04-02
| | | | Signed-off-by: Josh de Kock <josh@itanimul.li>
* Revert "avformat/format: temporarily use old next api"Josh de Kock2018-04-02
| | | | | | | | | This reverts commit 909e00ae816df9b6a05b1c4d0cafb794d4d0ca28. There is no need to use the old API anymore as the new API now behaves in the same way (treating devices as formats when loaded). Signed-off-by: Josh de Kock <josh@itanimul.li>
* lavf/allformats: remove left-over index decrementJosh de Kock2018-04-02
| | | | Signed-off-by: Josh de Kock <josh@itanimul.li>
* lavf: move avpriv function definition to internal.hJosh de Kock2018-04-02
| | | | Signed-off-by: Josh de Kock <josh@itanimul.li>
* avformat/mpeg: add missing checkPaul B Mahol2018-04-01
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/mpeg: fix logic failurePaul B Mahol2018-04-01
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/mpeg: fix detection and demuxing of raw AC3 in mpegpsPaul B Mahol2018-04-01
| | | | | | Fixes #4889. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/mpeg: fix PCM-DVD mis-detection as MLPPaul B Mahol2018-04-01
| | | | | | Fixes #6563. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/mov: parse multiple iTunes cover imagesTimo Teräs2018-04-01
| | | | | | | | | Multiple cover images are supported by having multiple data atoms inside the covr atom. AtomicParsley and mutagen amongst others support and document this construct. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavd: remove linked listsJosh de Kock2018-03-31
| | | | Signed-off-by: Josh de Kock <josh@itanimul.li>
* Revert "lavd: add new API for iterating input and output devices"Josh de Kock2018-03-31
| | | | | | | | | | This reverts commit 0fd475704e871ef3a535947596a012894bae3cbd. Revert "lavd: fix iterating of input and output devices" This reverts commit ce1d77a5e7cebce11074bf6f9e38ad6da37338ff. Signed-off-by: Josh de Kock <josh@itanimul.li>
* Merge commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57'James Almer2018-03-29
|\ | | | | | | | | | | | | * commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57': Add Haivision SRT protocol Merged-by: James Almer <jamrial@gmail.com>
| * Add Haivision SRT protocolSven Dueking2018-03-28
| | | | | | | | | | | | | | | | The protocol requires libsrt (https://github.com/Haivision/srt) to be installed Signed-off-by: Sven Dueking <sven.dueking@nablet.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avformat/mpc8: do not return error on stream endPaul B Mahol2018-03-29
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | Merge commit '44a1731011e87fbf4180d026aefb8bfe85d8c7dc'James Almer2018-03-28
|\| | | | | | | | | | | | | | | | | * commit '44a1731011e87fbf4180d026aefb8bfe85d8c7dc': ivf: Support VP9 and AV1 as well See e8f0a463b0d27a4d74c0d9f1857e72a8033d1069 Merged-by: James Almer <jamrial@gmail.com>
| * ivf: Support VP9 and AV1 as wellLuca Barbato2018-03-12
| |
| * hls: Add a discontinuity marker on recoverLuca Barbato2018-03-06
| | | | | | | | | | | | It seems to improve the compatibility with the js demuxers. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * hvcc: zero initialize the nal buffers past the last written byteJames Almer2018-02-23
| | | | | | | | | | | | | | Bug-Id: 1116 Cc: libav-stable@libav.org Signed-off-by: James Almer <jamrial@gmail.com>
* | avformat/dashdec: Support signaling of last segment numbersanilraut2018-03-28
| | | | | | | | | | | | | | | | | | | | Last segment indicated by mpd is not parsed. Example stream: http://dash.akamaized.net/dash264/TestCasesIOP41/LastSegmentNumber/1/manifest_last_segment_num.mpd This patch supports parsing of Supplemental Descriptor with @schemeIdUri set to http://dashif.org/guide- lines/last-segment-number with the @value set to the last segment number. Reviewed-by: Steven Liu <lq@onvideo.cn>
* | avformat/hlsenc: initialize saveptrsTimo Rothenpieler2018-03-27
| | | | | | | | | | | | | | | | | | | | av_strtok calls strspn on a non-NULL *saveptr, so not NULL initializing it is an issue. Fixes CID #1428568 Reviewed-by: Karthick Jeyapal <kjeyapal@akamai.com> Signed-off-by: Steven Liu <lq@onvideo.cn> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/segafilm - fix keyframe detection and set packet flagsGyan Doshi2018-03-26
| | | | | | | | | | | | | | | | | | | | | | Streams from a Segafilm cpk file can't be streamcopied because keyframe flag isn't correctly set in stream index and said flag is never conveyed to the packet Fixes #7091 Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* | avformat/rtpenc_chain: use the proper function to free AVFormatContextJames Almer2018-03-26
| | | | | | | | | | | | Fixes ticket #7075 Signed-off-by: James Almer <jamrial@gmail.com>
* | avformat/mov: Move +1 in check to avoid hypothetical overflow in ↵Michael Niedermayer2018-03-26
| | | | | | | | | | | | add_ctts_entry() Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/hlsenc: use stream's maximum bit rate as fall-back advertised rateJan Ekström2018-03-25
| | | | | | | | | | | | | | | | | | | | Enables having proper bit rate values being written into the master playlist in case of hard-constrained VBR where the maximum bit rate utilized is known before hand. Does the same thing as movenc.c, for example. Signed-off-by: Jan Ekström <jan.ekstrom@aminocom.com>
* | lavf/utils.c: Don't compute start_time from DISCARD packets for video.Sasi Inguva2018-03-24
| | | | | | | | | | Signed-off-by: Sasi Inguva <isasi@isasi.mtv.corp.google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/movenc: write track title metadata for mov filesCourtland Idstrom2018-03-22
| | | | | | | | | | | | | | | | | | Track title (atom 'name') is a well defined user data atom for mov files. Existing code (for mp4) only writes title metadata if present. Relevant reference docs: https://developer.apple.com/library/content/documentation/QuickTime/Reference/QTRef_AtomsResources/Content/QTRef_AtomsResources4.html#//apple_ref/doc/uid/TP40004285-DontLinkChapterID_1--udta- https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFChap2/qtff2.html#//apple_ref/doc/uid/TP40000939-CH204-63839
* | avformat/unix: fix handling of EOF in case of SOCK_STREAM.Bela Bodecs2018-03-21
| | | | | | | | | | | | | | When recv() returns 0 in case of SOCK_STREAM type, it means EOF and with this patch returns value accordingly. Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
* | avformat/mov: Check STSC and remove invalid entriesMichael Niedermayer2018-03-20
| | | | | | | | | | | | | | | | | | | | | | Fixes assertion failure Fixes: crbug 822547, crbug 822666 and crbug 823009 Affects: aark15sd_9A62E2FA.mp4 Found-by: ClusterFuzz Reviewed-by: Matt Wolenetz <wolenetz@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/libopenmpt: Probe file format from file data if possibleJörn Heusipp2018-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building with libopenmpt 0.3, use the libopenmpt file header probing functions for probing. libopenmpt probing functions are allocation-free and designed to be as fast as possible. For libopenmpt 0.2, or when libopenmpt 0.3 file header probing cannot probe successfully due to too small probe buffer, test the filename against the file extensions supported by the libopenmpt library that is actually linked, instead of relying on a hard-coded file extension list. File extension testing is also allocation-free and designed to be fast in libopenmpt. Avoiding a hard-coded file extension list is useful because later libopenmpt versions will likely add support for more module file formats. libopenmpt file header probing is tested regularly against the FATE suite and other diverse file collections by libopenmpt upstream in order to avoid false positives. FATE passes with './configure --enable-libopenmpt' as well as with './configure --enable-libopenmpt --enable-libmodplug'. libopenmpt probing adds about 5%..10% cpu time (depending on precise usage pattern and host CPU and compiler version used for libopenmpt) compared to all current internal FFmpeg probing functions combined in tools/probetest for all of its module formats combined (currently 41 modules formats in libopenmpt 0.3.4 and 234 file formats in FFmpeg). Signed-off-by: Jörn Heusipp <osmanx@problemloesungsmaschine.de> Reviewed-by: Josh de Kock <josh@itanimul.li> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/libopenmpt: Update file extensions list for libopenmpt 0.3Jörn Heusipp2018-03-20
| | | | | | | | | | | | Signed-off-by: Jörn Heusipp <osmanx@problemloesungsmaschine.de> Reviewed-by: Josh de Kock <josh@itanimul.li> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | http: fix potentially dangerous whitespace skipping codewm42018-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | If the string consists entirely of whitespace, this could in theory continue to write '\0' before the start of the memory allocation. In practice, it didn't really happen: the generic HTTP header parsing code already skips leading whitespaces, so the string is either empty, or consists a non-whitespace. (The generic code and the cookie code actually have different ideas about what bytes are whitespace: the former uses av_isspace(), the latter uses WHITESPACES. Fortunately, av_isspace() is a super set of the http.c specific WHITESPACES, so there's probably no case where the above assumption could have been broken.)
* | http: avoid out of bound accesses on broken Set-Cookie headerswm42018-03-18
| | | | | | | | | | | | | | | | It's trivial to craft a HTTP response that will make the code for skipping trailing whitespace access and possibly overwrite bytes outside of the memory allocation. Why this can happen is blindingly obvious: it accesses cstr[strlen(cstr)-1] without checking whether the string is empty.
* | http: do not print a warning message for expired cookieswm42018-03-18
| | | | | | | | | | | | | | libavformat prints a warning that the cookie couldn't be parsed (see callers of parse_cookie()). This is obviously not true - it could be parsed, but was simply ignored. Don't return an error to avoid the warning.
* | avformat/hlsenc: reindent after previous commitsSteven Liu2018-03-18
| | | | | | | | Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/hlsenc: fix fmp4 single init file problemSteven Liu2018-03-18
| | | | | | | | | | | | fix ticket: #7021 Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/hlsenc: fix memleak problem about fmp4_init_filenameSteven Liu2018-03-18
| | | | | | | | | | | | | | move fmp4_init_filename init in if else for first fmp4_init_filename set value operation. Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/hlsenc: reindent after previous commitsSteven Liu2018-03-18
| | | | | | | | Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/hlsenc: fix write wrong init file URI string problemSteven Liu2018-03-18
| | | | | | | | | | | | fmp4_init_filename should append after base_output_dirname Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | lavf/dashenc: remove unneeded call to dash_freeRodger Combs2018-03-18
| |
* | libavformat/dashenc: Option to set timeout for socket I/O operationRavindra2018-03-18
| |
* | avformat/codec2: don't include avcodec objectsJames Almer2018-03-17
| | | | | | | | | | | | They belong in avcodec. Signed-off-by: James Almer <jamrial@gmail.com>
* | avformat/movenc: move the concatenated eac3 packet referenceJames Almer2018-03-15
| | | | | | | | | | | | | | Simplifies code. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* | avformat/dashdec: Correct spelling mistakessanilraut2018-03-15
| | | | | | | | Signed-off-by: Steven Liu <lingjiujianke@gmail.com>
* | avformat/hlsenc: Option to set timeout for socket I/O operationRavindra2018-03-14
| | | | | | | | Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/pcm: decrease delay when reading PCM streams.Philipp M. Scholl2018-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks for the discussion. Here's the next version, now with /25 and removed ff_log2(). The blocksize of the PCM decoder is hard-coded. This creates unnecessary delay when reading low-rate (<100Hz) streams. This creates issues when multiplexing multiple streams, since other inputs are only opened/read after a low-rate input block was completely read. This patch decreases the blocksize for low-rate inputs, so approximately a block is read every 40ms. This decreases the startup delay when multiplexing inputs with different rates. Signed-off-by: Philipp M. Scholl <pscholl@bawue.de> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/hlsenc: fix for zero EXTINF tag durationVishwanath Dixit2018-03-12
| | | | | | | | | | | | | | This is the fix for bug https://trac.ffmpeg.org/ticket/7073 Tested-by: Brainiarc7 Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/mov: Fix integer overflows related to sample_durationMichael Niedermayer2018-03-12
| | | | | | | | | | | | | | | | | | | | Fixes: runtime error: signed integer overflow: -9166684017437101870 + -2495066639299164439 cannot be represented in type Fixes: Chromium bug 791349 Reported-by: Matt Wolenetz <wolenetz@google.com> Reviewed-by: Matt Wolenetz <wolenetz@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/mov.c: Use the correct offset to shift timestamp when seeking.Sasi Inguva2018-03-10
| | | | | | | | | | | | | | | | Fixes seek for files with empty edits and files with negative ctts (dts_shift > 0). Added fate samples and tests. Signed-off-by: Sasi Inguva <isasi@isasi.mtv.corp.google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/img2dec: fix infinite loopMichael Niedermayer2018-03-10
| | | | | | | | | | | | | | | | Fixes: kira-poc Found-by: Kira <kira_cxy@foxmail.com> Change suggested by Kira Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/oggparsedaala: Do not adjust AV_NOPTS_VALUEMichael Niedermayer2018-03-10
| | | | | | | | | | | | Fixes: potential signed integer overflow Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>