summaryrefslogtreecommitdiff
path: root/libavformat/mov.c
Commit message (Collapse)AuthorAge
* avformat/mov: Fix memleaks for duplicate STCO/CO64/STSC atomsMichael Niedermayer2014-11-26
| | | | | | | | | Also see [FFmpeg-devel] [PATCH] avformat/mov: strengthen some table allocations which contains more fixes but is unfinished Fixes: signal_sigabrt_7ffff6ac7bb9_3484_cov_1830000177_starfox2.mov Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '2007082d2db25f9305b8a345798b840ea7784fdb'Michael Niedermayer2014-11-18
|\ | | | | | | | | | | | | | | | | | | | | * commit '2007082d2db25f9305b8a345798b840ea7784fdb': mov: check ff_get_wav_header() return value Conflicts: libavformat/mov.c See: 6d55a40b00801899f7975b22401bdd96bbc228af Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: check ff_get_wav_header() return valueVittorio Giovara2014-11-18
| | | | | | | | | | CC: libav-stable@libav.org Bug-Id: CID 717497
* | 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 '82ee7d0dda0fec8cdb670f4e844bf5c2927ad9de'Michael Niedermayer2014-10-26
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '82ee7d0dda0fec8cdb670f4e844bf5c2927ad9de': Use gmtime_r instead of gmtime and localtime_r instead of localtime Conflicts: libavformat/mov.c libavformat/mxfenc.c libavformat/wtvdec.c libavutil/parseutils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Use gmtime_r instead of gmtime and localtime_r instead of localtimeMartin Storsjö2014-10-26
| | | | | | | | | | | | | | | | | | | | | | gmtime isn't thread safe in general. In msvcrt (which lacks gmtime_r), the buffer used by gmtime is thread specific though. One call to localtime is left in avconv_opt.c, where thread safety shouldn't matter (instead of making avconv depend on the libavutil internal header). Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '9dcf2397219ca796f0fafce2a703770d6fd09920'Michael Niedermayer2014-10-26
|\| | | | | | | | | | | | | | | | | | | * commit '9dcf2397219ca796f0fafce2a703770d6fd09920': lavf: Check the return value of strftime Conflicts: libavformat/wtvdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavf: Check the return value of strftimeMartin Storsjö2014-10-26
| | | | | | | | | | | | | | | | If the buffer provided to strftime is too small, the buffer contents are indeterminate - it does not guarantee actually null terminating the buffer. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '50dbe6b3544fa64d5611e16553bf542fd71276b8'Michael Niedermayer2014-10-25
|\| | | | | | | | | | | | | | | | | | | | | * commit '50dbe6b3544fa64d5611e16553bf542fd71276b8': mov: fix assigment check Conflicts: libavformat/mov.c See: af2e5061bbcabf5eae780929fa25784b6127759e Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: fix assigment checkVittorio Giovara2014-10-24
| | | | | | | | | | CC: libav-stable@libav.org Bug-Id: CID 1197050
* | mov.c: reasonable bitrate for fragmented mp4Mika Raento2014-10-21
| | | | | | | | | | | | | | | | If using MFRA for timestamps, the stream may start from a large offset and/or have gaps. With this change we calculate the bitrate based on frames we've seen. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/mov.c: Prevent memory leak in case of invalid metadata reads.Thilo Borgmann2014-10-21
| | | | | | | | | | Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/mov.c: Allocate buffer in case of long metadata entries.Thilo Borgmann2014-10-20
| | | | | | | | | | | | Fixes ticket #4018 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '74b02377980321934e33969c84733ace7e9f4eeb'Michael Niedermayer2014-10-15
|\| | | | | | | | | | | | | * commit '74b02377980321934e33969c84733ace7e9f4eeb': mov: Correctly check the color transfer characteristics range Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Correctly check the color transfer characteristics rangeVittorio Giovara2014-10-15
| | | | | | | | Reported-by: Ruoyu <liangry@ucweb.com>
* | avformat/mov: auodetect "use_mfra_for"Michael Niedermayer2014-10-15
| | | | | | | | | | Reviewed-by: Mika Raento <mikie@iki.fi> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'a74f8121d88e0bdf0d69c22e4b3713032da9300a'Michael Niedermayer2014-10-14
|\| | | | | | | | | | | | | * commit 'a74f8121d88e0bdf0d69c22e4b3713032da9300a': mov: Handle tfdt atoms Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Handle tfdt atomsMartin Storsjö2014-10-14
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | avformat/mov: fix mix of declaration and statementMichael Niedermayer2014-10-13
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mov.c: allow reading fragment start dts/pts from fragmented mp4Mika Raento2014-10-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces a new option to the mov demuxer: -use_mfra_for (pts|dts). When it's given and moofs and a MFRA are present, the MFRA's TFRAs are read for fragment start times. Unfortunately some programs that produce fragmented mp4s use the TFRA time field for dts and some for pts. There is no realistic way to detect which is the case, hence the responsibility is punted onto the user. This also means that no behavioural change is enabled by default - you must pass either dts or pts for anything to happen. Without this change, timestamps for some discontinuous fragmented mp4 are wrong, and cause audio/video desync and are not usable for generating HLS. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mov: E-AC-3 streams need parsing too.Benoit Fouet2014-10-09
| | | | | | | | | | | | | | syncframes in E-AC-3 can be combined to provide 6 audio blocks per sample, thus requiring parsing for proper decoding. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mov: Fix 'warning: format specifies type unsigned short but the ↵Michael Niedermayer2014-10-09
| | | | | | | | | | | | argument has type int' Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '0d8a3656ba4c0ae8e4e0c91ff6b07d72a317f9f6'Michael Niedermayer2014-10-09
|\| | | | | | | | | | | | | * commit '0d8a3656ba4c0ae8e4e0c91ff6b07d72a317f9f6': mov: support the Color Parameter Atoms 'colr' Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: support the Color Parameter Atoms 'colr'Vittorio Giovara2014-10-08
| |
* | avformat/mov: do not overwrite extradata in mov_read_glbl()Michael Niedermayer2014-10-06
| | | | | | | | | | | | | | | | | | | | Fixes regression from Ticket3962 This basically favors the first global header while since 34751f8313a41bf94e004ffa9491f35d96763558 it was the last. If this heuristic turns out worse, do not hesitate to revert this and reopen 3962 as a feature request for multiple STSD Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Support decoding 32bit pcm audio in mov.Carl Eugen Hoyos2014-10-02
| | | | | | | | Such files are written by Convergent Design's Odyssey 7Q recorder.
* | Do not print a useless error number if mov header reading fails.Carl Eugen Hoyos2014-08-24
| | | | | | | | The error string is printed by ffmpeg as for other demuxers.
* | avformat/mov: use 64bit for size in mov_skip_multiple_stsd()Michael Niedermayer2014-08-21
| | | | | | | | | | | | | | | | Fixes integer overflow Fixes Ticket 3866 Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '86dfcfd0e30d6645eea2c63c1c60a0550e7c97ea'Michael Niedermayer2014-08-19
|\| | | | | | | | | | | | | * commit '86dfcfd0e30d6645eea2c63c1c60a0550e7c97ea': mov: Drop unused parameter from ff_mov_read_esds() Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Drop unused parameter from ff_mov_read_esds()Diego Biurrun2014-08-19
| | | | | | | | This is cleaner and avoids an uninitialized variable warning with MSVC.
* | Use new av_dict_set_int helper function.Reimar Döffinger2014-08-16
| | | | | | | | | | | | | | Get rid of the many, slightly differing, implementations of basically the same thing. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | Drop remaining unneeded != NULLMichael Niedermayer2014-08-15
| | | | | | | | | | Reviewed-by: Clément Bœsch <u@pkh.me> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96'Michael Niedermayer2014-08-13
|\| | | | | | | | | | | | | | | | | | | * commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96': mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes. Conflicts: libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever ↵Andrew Stone2014-08-13
| | | | | | | | | | | | metadata changes. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avformat/mov: Support reading Avid's metadata for DNXHD codec.Marek Fort2014-08-08
| | | | | | | | | | | | | | The AALP atom is necessary to properly decode the alpha channel. Needed for ticket #3707 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | replace calls to url_feof() with avio_feof()James Almer2014-08-08
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mov: read reel_name metadata from tmcd atomMark Reid2014-08-07
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/mov: XMP metadata suppor.Marek Fort2014-08-07
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | movdec: remove nonsensical snprintf.Reimar Döffinger2014-07-30
| | | | | | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | avformat/mov: Pass through iTunSMPB from MOV.Dale Curtis2014-07-22
| | | | | | | | | | | | | | Allows demuxing of iTunes files into adts while preserving gapless metadata. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'edb1af7c466ebb28bfdb0c076e498e527b43d24f'Michael Niedermayer2014-07-09
|\| | | | | | | | | | | | | * commit 'edb1af7c466ebb28bfdb0c076e498e527b43d24f': mov: free the dv demux context with avformat_free_context() Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: free the dv demux context with avformat_free_context()Anton Khirnov2014-07-09
| |
* | Merge commit '18fb38fb9ea7e2d5997c096fccfcd4cb43f70294'Michael Niedermayer2014-07-08
|\| | | | | | | | | | | | | | | | | | | * commit '18fb38fb9ea7e2d5997c096fccfcd4cb43f70294': mov: Remove a variable that is set but never used Conflicts: libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Remove a variable that is set but never usedMartin Storsjö2014-07-08
| | | | | | | | | | | | This silences a warning with gcc. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Do not detect jp2 images as mov files.Carl Eugen Hoyos2014-07-05
| |
* | Merge commit '20f95f21f9b9595608ba668a6eca78f2d508be67'Michael Niedermayer2014-07-01
|\| | | | | | | | | | | | | * commit '20f95f21f9b9595608ba668a6eca78f2d508be67': mov: Support default-base-is-moof. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Support default-base-is-moof.Yusuke Nakamura2014-07-01
| | | | | | | | | | | | | | | | | | default-base-is-moof shall be set to track fragments compatible with DASH Media Segments. So, this is a fundamental support for ISOBMFF ver. DASH. This is meaningful only when base-data-offset-present is absent and two or more track fragments are present in a movie fragment. Signed-off-by: Martin Storsjö <martin@martin.st>
* | avformat/mov: fix "warning: variable altitude set but not used" warningMichael Niedermayer2014-06-06
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c'Michael Niedermayer2014-06-06
|\| | | | | | | | | | | | | | | | | | | * commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c': mov: Export geotag metadata fields Conflicts: libavformat/mov.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mov: Export geotag metadata fieldsMartin Storsjö2014-06-06
| | | | | | | | | | | | | | | | | | | | | | | | The '?xyz' form is used by android devices (and according to apple mailing list archives, also by older iOS devices). The 'loci' field (defined in 3GPP 26.244) is used by recent iOS devices. Even though the loci field can contain an altitude, it was plain 0 in my sample. Just export longitude and latitude, in a string format matching the one used by the '?xyz' metadata field. Signed-off-by: Martin Storsjö <martin@martin.st>