summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
...
| * tools: Add a sidxindex toolMartin Storsjö2014-11-17
| | | | | | | | | | | | | | This tool can write an MPD file for fragmented MP4 files with a sidx index at the start of the file. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '40ed1cbf147d09fc0894bee160f0b6b6d9159fc5'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | | | | | | | * commit '40ed1cbf147d09fc0894bee160f0b6b6d9159fc5': movenc: Allow writing a DASH sidx atom at the start of files Conflicts: libavformat/movenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Allow writing a DASH sidx atom at the start of filesMartin Storsjö2014-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mapped to the faststart flag (which in this case perhaps should be called "shift and write index at the start of the file"), which for fragmented files will write a sidx index at the start. When segmenting DASH into files, there's usually one sidx at the start of each segment (although it's not clear to me whether that actually is necessary). When storing all of it in one file, the MPD doesn't necessarily need to describe the individual segments, but the offsets of the fragments can be fetched from one large sidx atom at the start of the file. This allows creating files for the DASH ISO BMFF on-demand profile. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '3847f3ab58b3b74604807394247bf68827258103'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | * commit '3847f3ab58b3b74604807394247bf68827258103': movenc: Add tfra entries for all tracks in a moof Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Add tfra entries for all tracks in a moofMartin Storsjö2014-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously only tfra entries were added for the first track in each moof. The frag_info array used for tfra can also be used for writing other kinds of fragment indexes, where it's more important to include all tracks. When the separate_moof option is enabled (as in ismv), we write a separate moof for each track, so this doesn't make any difference in that case. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'fe5e6e34c05e274f98528be4f77f3c474473f977'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit 'fe5e6e34c05e274f98528be4f77f3c474473f977': lavf: Add an MPEG-DASH ISOFF segmenting muxer Conflicts: Changelog libavformat/Makefile libavformat/allformats.c libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavf: Add an MPEG-DASH ISOFF segmenting muxerMartin Storsjö2014-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly to serve as a reference example on how to segment the output from the mp4 muxer, capable of writing the segment list in four different ways: - SegmentTemplate with SegmentTimeline - SegmentTemplate with implicit segments - SegmentList with individual files - SegmentList with one single file per track, and byte ranges The muxer is able to serve live content (with optional windowing) or create a static segmented MPD. In advanced cases, users will probably want to do the segmenting in their own application code. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '2ded57371abead879bcee56da5131e5fac0d17ef'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | | | | | | | | | * commit '2ded57371abead879bcee56da5131e5fac0d17ef': movenc: Add support for writing sidx atoms for DASH segments Conflicts: Changelog libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Add support for writing sidx atoms for DASH segmentsMartin Storsjö2014-11-17
| | | | | | | | | | | | | | | | | | | | A flag "dash" is added, which enables the necessary flags for creating DASH compatible fragments. When this is enabled, one sidx atom is written for each track before every moof atom. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '2d9d6afb8d2f284f5e620ecc19f643d5cd3facb8'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | * commit '2d9d6afb8d2f284f5e620ecc19f643d5cd3facb8': movenc: Factorize adding fragment info into a separate function Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Factorize adding fragment info into a separate functionMartin Storsjö2014-11-17
| | | | | | | | | | | | | | | | By calling this after writing the moof the first time (for calculating the moof size), we can avoid intermediate storage of tfrf_offset in MOVTrack. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '0f9eb9165bb7d7982fdedf64f6bcec856f1bedd6'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | * commit '0f9eb9165bb7d7982fdedf64f6bcec856f1bedd6': movenc: Include empty tracks in iods when writing fragmented mp4 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Include empty tracks in iods when writing fragmented mp4Martin Storsjö2014-11-17
| | | | | | | | | | | | | | | | | | When writing fragmented streams with an empty initial moov, we won't have any samples in any tracks when writing the moov atom, thus trust that any tracks that are added actually will be present. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Read (display) aspect ratio from mxf files.Carl Eugen Hoyos2014-11-17
| | | | | | | | Fixes ticket #4107.
* | avformat/flvenc: remove unused variableMichael Niedermayer2014-11-17
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'c64f3615118d757dcf76040fe5407bf2b3883206'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | * commit 'c64f3615118d757dcf76040fe5407bf2b3883206': flvenc: Send new metadata when FLAG_METADATA_UPDATED is set. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * flvenc: Send new metadata when FLAG_METADATA_UPDATED is set.Andrew Stone2014-11-17
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit '4d0cd5f58c892276716f46f4b2702915e5018215'Michael Niedermayer2014-11-17
|\| | | | | | | | | | | | | | | | | | | * commit '4d0cd5f58c892276716f46f4b2702915e5018215': flvenc: move metadata updates into a single function Conflicts: libavformat/flvenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * flvenc: move metadata updates into a single functionAndrew Stone2014-11-17
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * Icecast: Send content-type in all casesMarvin Scholz2014-11-15
| | | | | | | | | | | | | | | | This is needed because Icecast since version 2.4.1 doesn't default to audio/mpeg anymore. AVOption default not used here, since a later check if -content_type is set is performed and would break. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avformat/mpeg: fix memleak of sub_name on errorMichael Niedermayer2014-11-16
| | | | | | | | | | | | Fixes CID1254666 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/hlsenc: Free context after hls_append_segmentMichael Niedermayer2014-11-16
| | | | | | | | | | | | Fixes reading uninitialized memory Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/segment: export inner muxer timebaseMichael Niedermayer2014-11-16
| | | | | | | | | | | | | | Fixes "Non-monotonous DTS in output stream 0:0" Fixes Ticket4020 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/ffmdec: reident after last commitLukasz Marek2014-11-16
| | | | | | | | Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* | lavf/ffm: use AVOption API to store/restore stream propertiesLukasz Marek2014-11-16
| | | | | | | | | | | | | | | | | | | | | | This is a generic solution that will not reqiore modifications when new options are added. This also fixes problem with current implementation when qmin or qmax=-1. Only 8 bits was sent and read back as 255. Fixes #1275 Fixes #1461 Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* | lavf/ffm: store/restore private codec contextLukasz Marek2014-11-16
| | | | | | | | Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* | avformat/http: simplify chained_options copyingMichael Niedermayer2014-11-15
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Fix the timeout option not working when connecting to a HTTP url that ↵Brandon Lees2014-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | requires authentication. In http_open_cnx, the patch restores the AVDictionary if connection needs to be re-tried because of a authentication/redirect status code. Previously, if a 401/407/30x status code was encountered, http_open_cnx would restart at the redo label, but any options used by the underlying protocol would be missing because they were removed by the first attempt. Signed-off-by: Brandon Lees <brandon@n-hega.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mov.c: fix handling of seek return in read_mfraMika Raento2014-11-15
| | | | | | | | | | | | this would cause mfra to be ignored in files larger than 2G Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '3a6bb9735053c453f806ceab1d91124648d90aca'Michael Niedermayer2014-11-15
|\| | | | | | | | | | | | | | | * commit '3a6bb9735053c453f806ceab1d91124648d90aca': Icecast: Send 100-continue header if possible See: 17dc39e76baf8a481fc8b1d24ee4cf7a6ffe1c1d Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Icecast: Send 100-continue header if possibleMarvin Scholz2014-11-15
| | | | | | | | | | | | | | | | | | | | This allows for proper error reporting. Only do this for non-legacy requests as only Icecast >2.4.0 will reply with a proper status. Libav seems to accept both, 100 and 200 status codes, but let's stay close to spec. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | libavformat/mxfdec.c: refactored resolving timecode componentMark Reid2014-11-15
| | | | | | | | | | Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '4b39cc1a093c239412ded522c4a899744e7f2008'Michael Niedermayer2014-11-15
|\| | | | | | | | | | | | | * commit '4b39cc1a093c239412ded522c4a899744e7f2008': riff: support ProRes in avi (APCN fourcc) Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * riff: support ProRes in avi (APCN fourcc)Vittorio Giovara2014-11-14
| |
* | cinedec: report white balance gain coefficients using metadataPeter Ross2014-11-13
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/tcp: Clarify that the -timeout option takes microseconds.Carl Eugen Hoyos2014-11-12
| |
* | lavf/webmdashenc: Representation IDs should be unique.Vignesh Venkatasubramanian2014-11-12
| | | | | | | | | | | | | | | | | | According to the DASH spec, Representation IDs should be unique across all adaptation sets. Fixing that and updating the fate reference file to reflect this change. Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Icecast: Use 100-continue if possible for proper error handlingMarvin Scholz2014-11-11
| | | | | | | | | | | | | | | | | | Using 100-continue ffmpeg will only send data if the server confirms it, so if there is an error with auth or mounpoint, this allows that it is properly reported to the user. Else ffmpeg sends data and just quits at some point without an error message. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Icecast: always send a content-typeMarvin Scholz2014-11-11
| | | | | | | | | | | | | | | | use a default (audio/mpeg for historical reason) if none. Required since Icecast 2.4.1 Not using AVOption default because this breaks content-type warnings (needs to detect if no type was set by the user) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/librtmp: fix swfurlMichael Niedermayer2014-11-09
| | | | | | | | | | Found-by: JULIAN GARDNER <joolzg@btinternet.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mpegts: improve first valid PMT heuristicMichael Niedermayer2014-11-08
| | | | | | | | | | | | | | This checks for audio+video instead of streams > 2 Fixes Ticket4090 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mpegts: add scan_all_pmts optionMichael Niedermayer2014-11-08
| | | | | | | | | | | | | | | | | | | | This allows selecting if the demuxer should consider all streams to be found after the first PMT and add further streams during decoding or if it rather should scan all that are within the analyze-duration and other limits Fixes Ticket3762 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '9a5ac36b69ede4563e9ecd734141b12ea3280fbc'Michael Niedermayer2014-11-08
|\| | | | | | | | | | | | | | | | | | | * commit '9a5ac36b69ede4563e9ecd734141b12ea3280fbc': movenc: Require samples before trying to write edts Conflicts: libavformat/movenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Require samples before trying to write edtsMartin Storsjö2014-11-08
| | | | | | | | | | | | | | This avoids a potential crash if writing a fragmented psp mp4 (which probably is only a hypothetical scenario). Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '8cb7b7b461b52898765b38e3eff68c0ce88347f3'Michael Niedermayer2014-11-08
|\| | | | | | | | | | | | | | | | | | | * commit '8cb7b7b461b52898765b38e3eff68c0ce88347f3': movenc: Avoid leaking locally allocated data when returning on errors Conflicts: libavformat/movenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Avoid leaking locally allocated data when returning on errorsMartin Storsjö2014-11-08
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '95a449d3ce8e15522df47a80a8a4593ea5c2b1bb'Michael Niedermayer2014-11-08
|\| | | | | | | | | | | | | | | | | | | * commit '95a449d3ce8e15522df47a80a8a4593ea5c2b1bb': movenc: Remove an outdated comment Conflicts: libavformat/movenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Remove an outdated commentMartin Storsjö2014-11-08
| | | | | | | | | | | | | | QuickTime does support files with an empty initial movie these days. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Fix read-after-free in matroska_read_seek().Xiaohan Wang2014-11-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In matroska_read_seek(), |tracks| is assigned at the begining of the function. However, functions like matroska_parse_cues() could reallocate the tracks so that |tracks| can get invalidated. This CL assigns |tracks| only before we use it so that it won't be invalidated. BUG=427266 TEST=Test case in associated bug passes now. Change-Id: I9c7065fe8f4311ca846076281df2282d190ed344 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '9cbf70fa0e44613590b019cef1fe99aa3f3c5d9d'Michael Niedermayer2014-11-08
|\| | | | | | | | | | | | | | | | | | | * commit '9cbf70fa0e44613590b019cef1fe99aa3f3c5d9d': movenc: Write correct presentation timestamps in tfra Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>