- 08 Feb, 2019 1 commit
-
-
chcunningham authored
Detecting missing tfhd avoids re-using tfhd track info from the previous moof. For files with multiple tracks, this may make a mess of the avindex and fragindex, which can later trigger av_assert0 in mov_read_trun(). Reviewed-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 09 Sep, 2018 1 commit
-
-
Justin Ruggles authored
ISOBMFF does not allow AudioSampleEntryV1 in stsd version 0, so assume the descriptor format is QTFF SoundDescriptionV1. ISOBMFF does not define a version 2. This fixes audio decoding for some MP4 files generated with Apple tools. The additional fields present in SoundDescriptionV1/V2 need to be read in order to correctly read additional boxes that contain information required for decoding the stream. Fixes #7376. Also see: https://github.com/HandBrake/HandBrake/issues/1555Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com>
-
- 08 Sep, 2018 1 commit
-
-
John Stebbins authored
This allows for validation of the track type Signed-off-by:
James Almer <jamrial@gmail.com>
-
- 25 Jul, 2018 1 commit
-
-
Carl Eugen Hoyos authored
Fixes a compilation warning if size_t != uint64_t: libavformat/mov.c: In function ‘mov_read_saio’: libavformat/mov.c:6207:45: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] encryption_index->auxiliary_offsets = auxiliary_offsets; ^
-
- 20 Apr, 2018 1 commit
-
-
Jacob Trimble authored
This doesn't support saio atoms with more than one offset. Signed-off-by:
Jacob Trimble <modmaker@google.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 19 Apr, 2018 2 commits
-
-
Jacob Trimble authored
Signed-off-by:
Jacob Trimble <modmaker@google.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Jacob Trimble authored
- Parse schm atom to get different encryption schemes. - Allow senc atom to appear in track fragments. - Allow 16-byte IVs. - Allow constant IVs (specified in tenc). - Allow only tenc to specify encryption (i.e. no senc/saiz/saio). - Use sample descriptor to detect clear fragments. This doesn't support: - Different sample descriptor holding different encryption info. - Only first sample descriptor can be encrypted. - Encrypted sample groups (i.e. seig). - Non-'cenc' encryption scheme when using -decryption_key. Signed-off-by:
Jacob Trimble <modmaker@google.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 10 Mar, 2018 1 commit
-
-
Sasi Inguva authored
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>
-
- 02 Dec, 2017 1 commit
-
-
John Stebbins authored
The sdtp is required by the AppleTV 4K in order to play 2160p60 video. Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 23 Oct, 2017 1 commit
-
-
John Stebbins authored
When keyframe intervals of dash segments are not perfectly aligned, fragments in the stream can overlap in time. The previous sorting by timestamp causes packets to be read out of decode order and results in decode errors. Insert new "trun" index entries into index_entries in the order that the trun are referenced by the sidx. Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 28 Sep, 2017 1 commit
-
-
Pablo Montilla authored
The Sample count in the time-to-sample table is defined as 32-bit unsigned integer by the QT specification. Fixes ticket #6700.
-
- 24 Aug, 2017 1 commit
-
-
Dale Curtis authored
When sidx box support is enabled, the code will skip reading all trun boxes (each containing ctts entries for samples inthat box). If seeks are attempted before all ctts values are known, the old code would dump ctts entries into the wrong location. These are then used to compute pts values which leads to out of order and incorrectly timestamped packets. This patch fixes ctts processing by always using the index returned by av_add_index_entry() as the ctts_data index. When the index gains new entries old values are reshuffled as appropriate. This approach makes sense since the mov demuxer is already relying on the mapping of AVIndex entries to samples for correct demuxing. As a result of this all ctts entries are now 1-count. A followup change will be submitted to remove support for > 1 count entries which will simplify seeking. Notes for future improvement: Probably there are other boxes (stts, stsc, etc) that are impacted by this issue... this patch only attempts to fix ctts since it completely breaks packet timestamping. This patch continues using an array for the ctts data, which is not the most ideal given the rearrangement that needs to happen (via memmove as new entries are read in). Ideally AVIndex and the ctts data would be set-type structures so addition is always worst case O(lg(n)) instead of the O(n^2) that exists now; this slowdown is noticeable during seeks. Signed-off-by:
Dale Curtis <dalecurtis@chromium.org> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 27 May, 2017 2 commits
-
-
James Almer authored
As defined in "VP Codec ISO Media File Format Binding v1.0" https://github.com/webmproject/vp9-dash/blob/master/VPCodecISOMediaFileFormatBinding.mdReviewed-by:
Michael Niedermayer <michael@niedermayer.cc> Signed-off-by:
James Almer <jamrial@gmail.com>
-
James Almer authored
As defined in "VP Codec ISO Media File Format Binding v1.0" https://github.com/webmproject/vp9-dash/blob/master/VPCodecISOMediaFileFormatBinding.mdReviewed-by:
Michael Niedermayer <michael@niedermayer.cc> Signed-off-by:
James Almer <jamrial@gmail.com>
-
- 03 Apr, 2017 1 commit
-
-
Diego Biurrun authored
-
- 31 Mar, 2017 1 commit
-
-
Sasi Inguva authored
Adding an MOV format option to turn on/off the editlist supporting code, introduced in https://github.com/FFmpeg/FFmpeg/commit/ca6cae73db207f17a0d5507609de12842d8f0ca3Signed-off-by:
Sasi Inguva <isasi@google.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 10 Feb, 2017 1 commit
-
-
Vittorio Giovara authored
In order to avoid potential integer overflow change the comparison and make sure to use the same unsigned type for both elements.
-
- 01 Feb, 2017 1 commit
-
-
erankor authored
Retain the ranges of frame indexes when applying edit list in mov_fix_index. The index ranges are then used to keep track of the frame index of the current sample. In case of a discontinuity in frame indexes due to edit, update the auxiliary info position accordingly. Reviewed-by:
Sasi Inguva <isasi@google.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 14 Dec, 2016 1 commit
-
-
Diego Biurrun authored
(cherry picked from commit f912fd76) Signed-off-by:
James Almer <jamrial@gmail.com>
-
- 08 Dec, 2016 1 commit
-
-
Diego Biurrun authored
-
- 07 Dec, 2016 2 commits
-
-
Vittorio Giovara authored
This implements Spherical Video V1 and V2, as described in the spatial-media collection by Google. Signed-off-by:
Vittorio Giovara <vittorio.giovara@gmail.com>
-
Vittorio Giovara authored
This implements Spherical Video V1 and V2, as described in the spatial-media collection by Google. Signed-off-by:
Vittorio Giovara <vittorio.giovara@gmail.com>
-
- 30 Nov, 2016 1 commit
-
-
Vittorio Giovara authored
This matrix needs to be applied after all others have (currently only display matrix from trak), but cannot be handled in movie box, since streams are not allocated yet. So store it in main context, and apply it when appropriate, that is after parsing the tkhd one. Signed-off-by:
Vittorio Giovara <vittorio.giovara@gmail.com>
-
- 03 Nov, 2016 1 commit
-
-
Sasi Inguva authored
According to spec ISO_IEC_15444_12 "For any media stream for which no segment index is present, referred to as non‐indexed stream, the media stream associated with the first Segment Index box in the segment serves as a reference stream in a sense that it also describes the subsegments for any non‐indexed media stream." Signed-off-by:
Sasi Inguva <isasi@google.com> Reviewed-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 01 Nov, 2016 1 commit
-
-
Vittorio Giovara authored
This matrix needs to be applied after all others have (currently only display matrix from trak), but cannot be handled in movie box, since streams are not allocated yet. So store it in main context, and apply it when appropriate, that is after parsing the tkhd one. Fate tests are updated accordingly. Signed-off-by:
Vittorio Giovara <vittorio.giovara@gmail.com>
-
- 24 Oct, 2016 1 commit
-
-
Rodger Combs authored
3 parts: - Supports multiple chapter streams - Exports regular text chapter streams as opaque data. This prevents consumers from showing chapters as if they were regular subtitle streams. - Exports video chapter streams as thumbnails, and provides the first one as an attached_pic.
-
- 29 Aug, 2016 1 commit
-
-
Derek Buitenhuis authored
This breaks files with legitimate single-entry edit lists, and the hack, introduced in f03a081d, has no link to any known sample in its commit message. Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by:
Luca Barbato <lu_zero@gentoo.org>
-
- 25 Aug, 2016 1 commit
-
-
Derek Buitenhuis authored
This breaks files with legitimate single-entry edit lists, and the hack, introduced in f03a081d, has no link to any known sample in its commit message. Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com>
-
- 17 Jun, 2016 1 commit
-
-
Vittorio Giovara authored
Store data from each stsd in a separate extradata buffer, keep track of the stsc index for read and seek operations, switch buffers when the index differs. Decoder is notified with an AV_PKT_DATA_NEW_EXTRADATA packet side data. Since H264 supports this notification, and can be reset midstream, enable this feature only for multiple avcC's. All other stsd types (such as hvc1 and hev1) need decoder-side changes, so they are left disabled for now. This is implemented only in non-fragmented MOVs. Signed-off-by:
Vittorio Giovara <vittorio.giovara@gmail.com>
-
- 06 Mar, 2016 1 commit
-
-
erankor authored
Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 21 Jan, 2016 1 commit
-
-
Derek Buitenhuis authored
This feature is mostly only used by NLE software, and is both of dubious value being enabled by default, and a possible security risk. Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by:
Luca Barbato <lu_zero@gentoo.org>
-
- 20 Jan, 2016 1 commit
-
-
Derek Buitenhuis authored
This feature is mostly only used by NLE software, and is both of dubious value being enabled by default, and a possible security risk. Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 31 Dec, 2015 1 commit
-
-
erankor authored
support reading encrypted mp4 using aes-ctr, conforming to ISO/IEC 23001-7. a new parameter was added: - decryption_key - 128 bit decryption key (hex) Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 13 Dec, 2015 1 commit
-
-
Michael Niedermayer authored
Fixes Ticket5047 Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 05 Dec, 2015 1 commit
-
-
Neil Birkbeck authored
QuickTime metadata can come after trak data. Add indicator for which trak is being parsed (-1 if none) so that global metadata after the trak can be parsed. Signed-off-by:
Neil Birkbeck <neil.birkbeck@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 10 Nov, 2015 1 commit
-
-
Bryan Huh authored
Chapter-indexing can be expensive since chapters may be interspersed throughout the entire file and may require many seeks - especially costly when consuming a video over a remote protocol like http. Furthermore it is often unnecessary, especially when only trying to get video info (e.g. via ffprobe). Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 26 Oct, 2015 1 commit
-
-
Tinglin Liu authored
The Apple dev specification: https://developer.apple.com/library/mac/documentation/QuickTime/QTFF/Metadata/Metadata.html Basically the structure is like: |--meta |----hdlr |----keys |----ilst 1) The handler type in the metadata handler atom is ‘mdta’. 2) The key and value are stored separately for each key-value pair. The 'keys' atom stores the key table, while 'ilst' atom stores the values corresponding to the indices in the key table. Signed-off-by:
Derek Buitenhuis <derek.buitenhuis@gmail.com>
-
- 10 Oct, 2015 1 commit
-
-
Rodger Combs authored
Fixes trac #3842
-
- 19 Jul, 2015 1 commit
-
-
Vesselin Bontchev authored
Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 18 Mar, 2015 1 commit
-
-
Derek Buitenhuis authored
The current behavior may produce a different sequence of packets after seeking, compared to demuxing linearly from the beginning. This is because the MOV demuxer seeks in each stream individually, based on timestamp, which may set each stream at a slightly different position than if the file would have been read sequentially. This makes implementing certain operations, such as segmenting, quite hard, and slower than need be. Therefore, add an option which retains the same packet sequence after seeking, as when a file is demuxed linearly.
-