Commit Graph

1109 Commits

Author SHA1 Message Date
Michael Niedermayer
caa7a3914f avformat/mov: check atom nesting depth
Fixes call stack overflow
Fixes: case1_call_stack_overflow.mp4
Found-by: Michal Zalewski <lcamtuf@coredump.cx>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-16 23:37:24 +01:00
Michael Niedermayer
1a86e29ff0 Merge commit '6f4364aba9d70dc5fd9f1c88b9c03bf9ea893d40'
* commit '6f4364aba9d70dc5fd9f1c88b9c03bf9ea893d40':
  mov: Fix handling of zero-length metadata values

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-16 02:23:43 +01:00
Martin Storsjö
6f4364aba9 mov: Fix handling of zero-length metadata values
Since 3cec81f4d4, a zero-length metadata value would try to
allocate 2*0 bytes, where av_malloc() returns NULL.

Always add one to the allocated length, to allow space for
a null terminator in the zero-length case.

Incidentally, this fixes fate-alac on RVCT 4.0, where a compiler
bug seems to mess up the mov muxer to the point that it writes
the wrong sort of metadata. Previously this bug was undetected,
but since 3cec81f4d4 such mov files started returning
AVERROR(ENOMEM) in the mov demuxer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-15 23:42:10 +02:00
Michael Niedermayer
d7de48f0df avformat/mov: Simplify code by using OFFSET() and FLAGS macros
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-13 15:06:19 +01:00
Michael Niedermayer
e2829a8175 avformat/mov: Disable XMP metadata by default
This was suggested by cbsrobot, ubitux and koda

There are files with huge amounts of XMP data, which would otherwise
be displayed in the terminal output of FFmpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-11 21:47:37 +01:00
Michael Niedermayer
99bf26fc6b Merge commit '3c01039e0bc7d269900e15551f8171c4328a0223'
* commit '3c01039e0bc7d269900e15551f8171c4328a0223':
  mov: further expand the list of parsed metadata tags

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-09 11:50:48 +01:00
Michael Niedermayer
885e74622e Merge commit 'e2e07dbaab1f17e995842b7eacec4665d44c3d14'
* commit 'e2e07dbaab1f17e995842b7eacec4665d44c3d14':
  mov: expand the list of parsed metadata tags

Conflicts:
	libavformat/mov.c

See: 543f3db978
See: dadf668df2
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 23:16:43 +01:00
Michael Niedermayer
0dcebe2620 Merge commit 'b704b648f9ecb830874627db958a37e004107d1b'
* commit 'b704b648f9ecb830874627db958a37e004107d1b':
  mov: parse XMP metadata on demand

Conflicts:
	libavformat/isom.h
	libavformat/version.h

See: 054c506e3d

The default is left unchanged at enabled
We can change the default if people prefer but i do not want to do that
in a merge.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 22:59:16 +01:00
Michael Niedermayer
420aebf0c5 Merge commit '174c5fde90060faab67796a5eaef742630f1db6e'
* commit '174c5fde90060faab67796a5eaef742630f1db6e':
  mov: parse @PRM and @PRQ metadata tags

Conflicts:
	libavformat/mov.c

See: f540851ce3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 22:14:29 +01:00
Michael Niedermayer
82f0f0482e Merge commit '35384934d6e27e0334060a23a0c83a3cb5cef198'
* commit '35384934d6e27e0334060a23a0c83a3cb5cef198':
  mov: cosmetics: reorder the list of tags

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 21:59:08 +01:00
Dave Rice
3c01039e0b mov: further expand the list of parsed metadata tags
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-08 14:28:16 +00:00
Vittorio Giovara
e2e07dbaab mov: expand the list of parsed metadata tags
Based on L-Smash code by Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>.
2014-12-08 14:28:09 +00:00
Vittorio Giovara
b704b648f9 mov: parse XMP metadata on demand
The Extensible Metadata Platform tag can contain various kind of data
which are not strictly related to the video file, such as history of edits
and saves from the project file. So display XMP metadata only when the
user explicitly requires it.

Based on a patch by Marek Fort <marek.fort@chyronhego.com>.
2014-12-08 13:53:30 +00:00
Vittorio Giovara
174c5fde90 mov: parse @PRM and @PRQ metadata tags
These tags describe the product and quicktime library version respectively.
They originate from Adobe Premiere, but also some other programs use them.
Contrary to other tags, they contain 'raw' data which is not to be
interpreted as iso639 or mac strings.

Based on a patch by Peter Ross <pross@xvid.org>.
2014-12-08 13:53:20 +00:00
Vittorio Giovara
35384934d6 mov: cosmetics: reorder the list of tags
Alphabetically order the list by the tag to facilitate the insertion of
new ones.
2014-12-08 13:53:10 +00:00
Matthieu Bouron
8c0a865ad9 mov: skip version and flags attributes in mov_read_chan()
Fixes decting channel layout for files with uncommon audio, such as
FL and FR in two separate streams. Introduced in 3bab7cd.

CC: libav-devel@libav.org
Sample-Id: ticket1474.mov
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-05 13:03:49 +00:00
Michael Niedermayer
02444f02f1 Merge commit '3cec81f4d4f26b62bc2d22bb450bbf51ec3a7f09'
* commit '3cec81f4d4f26b62bc2d22bb450bbf51ec3a7f09':
  mov: allocate the tag value dynamically

Conflicts:
	libavformat/mov.c

See: f31445a82d
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-02 22:26:40 +01:00
Michael Niedermayer
781a5a392c Merge commit 'e352b293712ff7cbde67eba3ce3f8510b037de09'
* commit 'e352b293712ff7cbde67eba3ce3f8510b037de09':
  mov: Add an option for exporting all metadata

Conflicts:
	libavformat/isom.h
	libavformat/mov.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-02 22:13:20 +01:00
Michael Niedermayer
d0b0fe6691 Merge commit '5639ed9abb58311f82cf3499b682d228290adb09'
* commit '5639ed9abb58311f82cf3499b682d228290adb09':
  mov: do not truncate the language-prefixed tag

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-02 21:45:44 +01:00
Thilo Borgmann
3cec81f4d4 mov: allocate the tag value dynamically
This allows to load metadata entries longer than 1024 bytes.
Displaying them is still limited to 1024 characters, but applications
can load them fully now.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-12-02 15:28:22 +00:00
Vittorio Giovara
e352b29371 mov: Add an option for exporting all metadata 2014-12-02 15:28:22 +00:00
Vittorio Giovara
5639ed9abb mov: do not truncate the language-prefixed tag 2014-12-02 15:28:22 +00:00
Clément Bœsch
92fa1d9231 avformat/mov: change conjugation for "Duplicate" 2014-11-27 18:13:57 +01:00
Clément Bœsch
5ab882d728 avformat/mov: strengthen some table allocations 2014-11-27 18:12:40 +01:00
Michael Niedermayer
1b5d112406 avformat/mov: Fix memleaks for duplicate STCO/CO64/STSC atoms
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>
2014-11-26 18:36:17 +01:00
Michael Niedermayer
4cd4a6de4f Merge commit '2007082d2db25f9305b8a345798b840ea7784fdb'
* commit '2007082d2db25f9305b8a345798b840ea7784fdb':
  mov: check ff_get_wav_header() return value

Conflicts:
	libavformat/mov.c

See: 6d55a40b00
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-18 03:34:05 +01:00
Vittorio Giovara
2007082d2d mov: check ff_get_wav_header() return value
CC: libav-stable@libav.org
Bug-Id: CID 717497
2014-11-18 00:40:06 +01:00
Mika Raento
b08fd7ea78 mov.c: fix handling of seek return in read_mfra
this would cause mfra to be ignored in files larger than 2G

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-15 12:04:34 +01:00
Michael Niedermayer
4a39d4c65a Merge commit '82ee7d0dda0fec8cdb670f4e844bf5c2927ad9de'
* 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>
2014-10-26 02:38:26 +01:00
Michael Niedermayer
3b709fd912 Merge commit '9dcf2397219ca796f0fafce2a703770d6fd09920'
* commit '9dcf2397219ca796f0fafce2a703770d6fd09920':
  lavf: Check the return value of strftime

Conflicts:
	libavformat/wtvdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-26 02:06:40 +01:00
Martin Storsjö
82ee7d0dda Use gmtime_r instead of gmtime and localtime_r instead of localtime
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>
2014-10-26 00:14:54 +03:00
Martin Storsjö
9dcf239721 lavf: Check the return value of strftime
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>
2014-10-26 00:14:54 +03:00
Michael Niedermayer
eeb9242b62 Merge commit '50dbe6b3544fa64d5611e16553bf542fd71276b8'
* commit '50dbe6b3544fa64d5611e16553bf542fd71276b8':
  mov: fix assigment check

Conflicts:
	libavformat/mov.c

See: af2e5061bb
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-25 04:57:48 +02:00
Vittorio Giovara
50dbe6b354 mov: fix assigment check
CC: libav-stable@libav.org
Bug-Id: CID 1197050
2014-10-24 23:48:57 +01:00
Mika Raento
17702f1fc5 mov.c: reasonable bitrate for fragmented mp4
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>
2014-10-21 18:06:18 +02:00
Thilo Borgmann
6e6b79e7b8 lavf/mov.c: Prevent memory leak in case of invalid metadata reads.
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-21 12:36:52 +02:00
Thilo Borgmann
f31445a82d lavf/mov.c: Allocate buffer in case of long metadata entries.
Fixes ticket #4018

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-20 19:27:34 +02:00
Michael Niedermayer
16f9f7b881 Merge commit '74b02377980321934e33969c84733ace7e9f4eeb'
* commit '74b02377980321934e33969c84733ace7e9f4eeb':
  mov: Correctly check the color transfer characteristics range

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-15 21:40:13 +02:00
Michael Niedermayer
1b54e6b12b avformat/mov: auodetect "use_mfra_for"
Reviewed-by: Mika Raento <mikie@iki.fi>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-15 20:17:23 +02:00
Vittorio Giovara
74b0237798 mov: Correctly check the color transfer characteristics range
Reported-by: Ruoyu <liangry@ucweb.com>
2014-10-15 14:48:40 +01:00
Michael Niedermayer
5552594a44 Merge commit 'a74f8121d88e0bdf0d69c22e4b3713032da9300a'
* commit 'a74f8121d88e0bdf0d69c22e4b3713032da9300a':
  mov: Handle tfdt atoms

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-14 22:24:12 +02:00
Martin Storsjö
a74f8121d8 mov: Handle tfdt atoms
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-14 13:52:32 +03:00
Michael Niedermayer
57884172e0 avformat/mov: fix mix of declaration and statement
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-13 16:12:30 +02:00
Mika Raento
a59808dd57 mov.c: allow reading fragment start dts/pts from fragmented mp4
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>
2014-10-13 12:20:55 +02:00
Benoit Fouet
7cda31cb92 avformat/mov: E-AC-3 streams need parsing too.
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>
2014-10-09 15:38:09 +02:00
Michael Niedermayer
5d36e8527f avformat/mov: Fix 'warning: format specifies type unsigned short but the argument has type int'
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-09 05:49:25 +02:00
Michael Niedermayer
349a32c436 Merge commit '0d8a3656ba4c0ae8e4e0c91ff6b07d72a317f9f6'
* commit '0d8a3656ba4c0ae8e4e0c91ff6b07d72a317f9f6':
  mov: support the Color Parameter Atoms 'colr'

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-09 02:27:53 +02:00
Vittorio Giovara
0d8a3656ba mov: support the Color Parameter Atoms 'colr' 2014-10-08 18:17:50 +01:00
Michael Niedermayer
02f7665a3c avformat/mov: do not overwrite extradata in mov_read_glbl()
Fixes regression from Ticket3962

This basically favors the first global header while since 34751f8313
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>
2014-10-06 00:17:33 +02:00
Carl Eugen Hoyos
81cee700f7 Support decoding 32bit pcm audio in mov.
Such files are written by Convergent Design's Odyssey 7Q recorder.
2014-10-02 10:04:43 +02:00
Carl Eugen Hoyos
0744daa887 Do not print a useless error number if mov header reading fails.
The error string is printed by ffmpeg as for other demuxers.
2014-08-24 02:45:58 +02:00
Michael Niedermayer
a9f3bb14ba avformat/mov: use 64bit for size in mov_skip_multiple_stsd()
Fixes integer overflow
Fixes Ticket 3866

Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-21 17:49:37 +02:00
Michael Niedermayer
b07dc81a9e Merge commit '86dfcfd0e30d6645eea2c63c1c60a0550e7c97ea'
* commit '86dfcfd0e30d6645eea2c63c1c60a0550e7c97ea':
  mov: Drop unused parameter from ff_mov_read_esds()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-19 18:27:51 +02:00
Diego Biurrun
86dfcfd0e3 mov: Drop unused parameter from ff_mov_read_esds()
This is cleaner and avoids an uninitialized variable warning with MSVC.
2014-08-19 06:22:07 -07:00
Reimar Döffinger
a0941c8a2b Use new av_dict_set_int helper function.
Get rid of the many, slightly differing, implementations
of basically the same thing.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2014-08-16 14:31:41 +02:00
Michael Niedermayer
81a663f49e Drop remaining unneeded != NULL
Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 22:47:45 +02:00
Michael Niedermayer
a90364d001 Merge commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96'
* commit 'cc3e88a2b9e7ecf62e4ea1c41ce1623cea67ee96':
  mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-13 23:51:03 +02:00
Andrew Stone
cc3e88a2b9 mov: update AVFormatContext.event_flags with METADATA_UPDATED whenever metadata changes.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-08-13 16:24:09 +00:00
Marek Fort
d1e750cd51 avformat/mov: Support reading Avid's metadata for DNXHD codec.
The AALP atom is necessary to properly decode the alpha channel.
Needed for ticket #3707

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 18:39:04 +02:00
James Almer
d34ec64a22 replace calls to url_feof() with avio_feof()
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 00:48:38 +02:00
Mark Reid
f1e626a357 avformat/mov: read reel_name metadata from tmcd atom
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 23:37:55 +02:00
Marek Fort
054c506e3d avformat/mov: XMP metadata suppor.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 20:11:09 +02:00
Reimar Döffinger
1c84aad718 movdec: remove nonsensical snprintf.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2014-07-30 20:25:29 +02:00
Dale Curtis
70f7006eb3 avformat/mov: Pass through iTunSMPB from MOV.
Allows demuxing of iTunes files into adts while preserving gapless
metadata.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 02:11:48 +02:00
Michael Niedermayer
73b1283012 Merge commit 'edb1af7c466ebb28bfdb0c076e498e527b43d24f'
* commit 'edb1af7c466ebb28bfdb0c076e498e527b43d24f':
  mov: free the dv demux context with avformat_free_context()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 23:19:06 +02:00
Anton Khirnov
edb1af7c46 mov: free the dv demux context with avformat_free_context() 2014-07-09 13:38:35 +00:00
Michael Niedermayer
fd3388d63d Merge commit '18fb38fb9ea7e2d5997c096fccfcd4cb43f70294'
* commit '18fb38fb9ea7e2d5997c096fccfcd4cb43f70294':
  mov: Remove a variable that is set but never used

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 21:53:09 +02:00
Martin Storsjö
18fb38fb9e mov: Remove a variable that is set but never used
This silences a warning with gcc.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-08 21:14:43 +03:00
Carl Eugen Hoyos
d919fdd4f7 Do not detect jp2 images as mov files. 2014-07-05 02:11:17 +02:00
Michael Niedermayer
fb318def5d Merge commit '20f95f21f9b9595608ba668a6eca78f2d508be67'
* commit '20f95f21f9b9595608ba668a6eca78f2d508be67':
  mov: Support default-base-is-moof.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 16:31:57 +02:00
Yusuke Nakamura
20f95f21f9 mov: Support default-base-is-moof.
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>
2014-07-01 14:36:06 +03:00
Michael Niedermayer
27b893b231 avformat/mov: fix "warning: variable altitude set but not used" warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-06 15:46:03 +02:00
Michael Niedermayer
a083543da0 Merge commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c'
* commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c':
  mov: Export geotag metadata fields

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-06 13:24:30 +02:00
Martin Storsjö
e7d6d0bf3c mov: Export geotag metadata fields
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>
2014-06-06 10:46:10 +03:00
Carl Eugen Hoyos
26b0d7198e Read mov files where the moov atom is hidden within a free atom.
Fixes ticket #1551 / issue 2226.
2014-05-31 16:57:27 +02:00
Michael Niedermayer
96470ca22b avformat/mov: allow seeking back to the begin even if nothing is marked as keyframe
Fixes Ticket 3663

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-26 01:23:46 +02:00
Clément Bœsch
e63a17bfdc avformat/mov: use av_display_rotation_get() for rotate metadata. 2014-05-23 23:30:21 +02:00
Michael Niedermayer
64bf845544 avformat/mov: Dont blindly trust the stream duration in seting chapter times
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-23 04:39:55 +02:00
Michael Niedermayer
07941c2cb2 Merge commit '853cc025d63ee2539fc0460dab62c5b9a3fd2043'
* commit '853cc025d63ee2539fc0460dab62c5b9a3fd2043':
  mov: store display matrix in a stream side data

Conflicts:
	libavformat/isom.h
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-19 19:21:53 +02:00
Vittorio Giovara
853cc025d6 mov: store display matrix in a stream side data
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-05-19 13:13:16 +02:00
Alex Sukhanov
8b96f31817 libavformat/mov: Elimitate double reading of COVR metadata if MOV_EXPORT_ALL_METADATA is enabled
Problem: ffmpeg tries to read COVR atom data twice if MOV_EXPORT_ALL_METADATA is enabled.
If COVR atom is the last in the stream, a parsing of such file fails.

Solution: just return immediatelly after mov_read_covr

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-15 03:43:37 +02:00
Michael Niedermayer
7426acff1a Merge commit '18f2514c4037befd37b02e4d4f10c159edf3b26f'
* commit '18f2514c4037befd37b02e4d4f10c159edf3b26f':
  mov: export stsd Compressorname in metadata

Conflicts:
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-01 17:13:05 +02:00
Anton Khirnov
18f2514c40 mov: export stsd Compressorname in metadata
Stop using the undocumented to-be-deprecated AVCodecContext.codec_name
field.
2014-05-01 09:25:46 +02:00
Michael Niedermayer
4d4bc89409 avformat/mov: merge mov_read_custom_metadata() and mov_read_custom()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-10 21:25:51 +02:00
Michael Niedermayer
6e573b7759 Merge commit '9a07fac678a8540d076e635061bbaa4ed09a9431'
* commit '9a07fac678a8540d076e635061bbaa4ed09a9431':
  mov: read hydrogenaudio replaygain information

Conflicts:
	libavformat/Makefile
	libavformat/mov.c

See: 37a15f3e66
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-10 21:25:15 +02:00
Anton Khirnov
9a07fac678 mov: read hydrogenaudio replaygain information 2014-04-10 13:53:32 +02:00
Schenk, Michael
b0a8521383 avformat/mov: reset drefs_count in close
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-07 14:51:36 +02:00
Michael Niedermayer
af2e5061bb avformat/mov: Fix width/height typo
Fixes CID1197050
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-05 22:49:17 +02:00
Michael Niedermayer
61b3b3315c Merge commit 'f1c4a54f6ecbf77a29aaaee09ca70c5468d0c509'
* commit 'f1c4a54f6ecbf77a29aaaee09ca70c5468d0c509':
  lavf: add supported extension to avi and mov demuxers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 03:15:19 +02:00
Michael Niedermayer
45ba9d8545 Merge commit 'cba4e6062a02d5bf684e13a770be88aa1fec717e'
* commit 'cba4e6062a02d5bf684e13a770be88aa1fec717e':
  More correct printf format specifiers

Conflicts:
	libavcodec/h264_ps.c
	libavcodec/h264_refs.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 02:54:09 +02:00
Marc-Antoine Arnaud
f1c4a54f6e lavf: add supported extension to avi and mov demuxers 2014-04-02 00:27:53 +02:00
Diego Biurrun
cba4e6062a More correct printf format specifiers
This avoids compiler warnings about argument and specifier type mismatch.
2014-04-02 00:27:22 +02:00
Michael Niedermayer
1ffbaa88c9 Merge commit 'fce28c3c6d603b7f42a5dbe36bf240d0470469c8'
* commit 'fce28c3c6d603b7f42a5dbe36bf240d0470469c8':
  mov: fill in subtitle dimensions after parsing tkhd

See: 8ba432bc56
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-31 01:58:14 +02:00
Michael Niedermayer
12789d9636 mov: call mov_rewrite_dvd_sub_extradata() after parsing dimensions from tkhd
This also moves mov_rewrite_dvd_sub_extradata() to mov.c.

Sample-Id: NeroRecodeSample.mp4
2014-03-31 01:08:23 +02:00
Michael Niedermayer
fce28c3c6d mov: fill in subtitle dimensions after parsing tkhd
Sample-Id: NeroRecodeSample.mp4
2014-03-31 01:08:18 +02:00
Michael Niedermayer
e21235f9b9 avformat/mov: call mov_rewrite_dvd_sub_extradata() after parsing dimensions from tkhd
This also moves mov_rewrite_dvd_sub_extradata() to mov.c

Fixes: NeroRecodeSample.mp4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 18:36:25 +01:00
Michael Niedermayer
8ba432bc56 avformat/mov: fill in subtitle dimensions after parsing tkhd
Sample: NeroRecodeSample.mp4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 18:21:11 +01:00
Peter Ross
dadf668df2 avformat/mov: decode compilation metadata
This flag is known as 'Part of a compilation' in Apple iTunes.

Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-15 04:28:58 +01:00
Michael Niedermayer
3ddf76ee07 Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
  Revert "Allow stream-copying grayscale mov files."

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-12 12:20:06 +01:00
Michael Niedermayer
1f36ebf63a avformat: revert %c changes from d92024f18f
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-12 05:09:28 +01:00