summaryrefslogtreecommitdiff
path: root/libavformat/movenc.c
Commit message (Collapse)AuthorAge
...
* | avformat/movenc: write pasp atom even if sar.num == sar.denPaul B Mahol2016-09-22
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avformat/movenc: Make the packet check more tolerantMichael Niedermayer2016-09-16
| | | | | | | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Check packet in mov_write_single_packet() tooMichael Niedermayer2016-09-16
| | | | | | | | | | | | | | | | Fixes assertion failure Found-by: durandal117 Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Factor check_pkt() outMichael Niedermayer2016-09-16
| | | | | | | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Check first DTS similar to dts differenceMichael Niedermayer2016-09-10
| | | | | | | | | | | | | | | | Fixes assertion failure Fixes: b84b53855a0b74560e64c6f45f505a13/signal_sigabrt_7ffff6ae7c37_3837_ef4e243ea5b4fa8d0becf4afe9166604.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: added ability to use original stream ids as track ids ↵Erkki Seppälä2016-09-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of regenerating them Sometimes it's useful to be able to define the exact track numbers in the generated track, instead of always beginning at track id 1. Using the option use_stream_ids_as_track_ids now copies the use stream ids to track ids. Dynamically generated tracks (ie. tmcd) have their track numbers defined as continuing from the highest numbered stream id. Signed-off-by: Erkki Seppälä <erkki.seppala.ext@nokia.com> Signed-off-by: OZOPlayer <OZOPL@nokia.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/movenc: Add a missing assignment if memory allocation fails.Carl Eugen Hoyos2016-08-24
| | | | | | | | | | Fixes a warning: libavformat/movenc.c:5947:17: warning: statement with no effect [-Wunused-value]
* | avformat/movenc: Free extradata after successfull allocation of new instead ↵Michael Niedermayer2016-08-19
| | | | | | | | | | | | | | | | of before This avoids erroring out with extradata lost and extradata size mismatching Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: allow rewriting extradataUmair Khan2016-08-19
| | | | | | | | | | Signed-off-by: Umair Khan <omerjerk@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/dnxhddata: move avpriv_dnxhd_parse_header_prefix to a headerJames Almer2016-07-25
| | | | | | | | | | | | | | | | | | It's a small and simple function that can be inlined. This removes one private symbol and should reduce object dependencies with the next major bump Signed-off-by: James Almer <jamrial@gmail.com>
* | libavformat/movenc: add dnxhr compatibility for apple playersMark Reid2016-07-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: add option to use keys/mdta atoms for metadataDavid Murmann2016-06-25
| | | | | | | | | | | | | | | | Add -movflags use_metadata_tags to the mov muxer. This will cause the muxer to write all metadata to the file in the keys and mtda atoms. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | movenc: mark astronomical_body const string as staticClément Bœsch2016-06-25
| |
* | avformat: Fix ff_interleaved_peek()Michael Niedermayer2016-06-25
| | | | | | | | | | | | Fixes assertion failures in movenc Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'b84f3a40034d28828c4ca639d012479a7eaace28'Clément Bœsch2016-06-24
|\| | | | | | | | | | | | | * commit 'b84f3a40034d28828c4ca639d012479a7eaace28': movenc: Write 'loci' geotag metadata for 3gp and mp4 Merged-by: Clément Bœsch <clement@stupeflix.com>
| * movenc: Write 'loci' geotag metadata for 3gp and mp4Martin Storsjö2016-05-19
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'f12a705ee570e16ca692c66b62821a2dbdf82566'Clément Bœsch2016-06-24
|\| | | | | | | | | | | | | * commit 'f12a705ee570e16ca692c66b62821a2dbdf82566': movenc: Factorize a function for finding a metadata entry and the associated language Merged-by: Clément Bœsch <clement@stupeflix.com>
| * movenc: Factorize a function for finding a metadata entry and the associated ↵Martin Storsjö2016-05-19
| | | | | | | | | | | | language Signed-off-by: Martin Storsjö <martin@martin.st>
| * movenc: Write ?xyz geotag metadata for mov filesMichael Niedermayer2016-05-19
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '72d621069fc301b431fac36b5281699a362562f2'Matthieu Bouron2016-06-23
|\| | | | | | | | | | | | | * commit '72d621069fc301b431fac36b5281699a362562f2': movenc: Add a missed const Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
| * movenc: Add a missed constMartin Storsjö2016-05-18
| | | | | | | | | | | | | | This was missed in e1eb0fc9601, when ff_interleaved_peek was changed to include const during the evolution of the patch. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'e1eb0fc960163402bbb4e630185790488f7d28ed'Matthieu Bouron2016-06-23
|\| | | | | | | | | | | | | * commit 'e1eb0fc960163402bbb4e630185790488f7d28ed': movenc: Use packets in interleaving queues for the duration at the end of fragments Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
| * movenc: Use packets in interleaving queues for the duration at the end of ↵Martin Storsjö2016-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | fragments As long as caller only writes packets using av_interleaved_write_frame with no manual flushing, this should allow us to always have accurate durations at the end of fragments, since there should be at least one queued packet in each stream (except for the stream where the current packet is being written, but if the muxer itself does the cutting of fragments, it also has info about the next packet for that stream). Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'dbbaad32e36b9046cd19d6e3329e2ca7ab49b401'Matthieu Bouron2016-06-23
|\| | | | | | | | | | | | | * commit 'dbbaad32e36b9046cd19d6e3329e2ca7ab49b401': movenc: Provide output bytestream markers for fragmented content Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
| * movenc: Provide output bytestream markers for fragmented contentMartin Storsjö2016-05-18
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '5afb94c817abffad030c6b94d7003dca8aace3d5'Clément Bœsch2016-06-21
|\| | | | | | | | | | | | | * commit '5afb94c817abffad030c6b94d7003dca8aace3d5': Mark read-only tables as static Merged-by: Clément Bœsch <u@pkh.me>
| * Mark read-only tables as staticDiego Biurrun2016-05-05
| |
* | Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch2016-06-21
|\| | | | | | | | | | | | | * commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
| * cosmetics: Fix spelling mistakesVittorio Giovara2016-05-04
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * Drop pointless assert.h #includesDiego Biurrun2016-05-03
| |
* | Add experimental support for vp9 in iso-bmffKongqun Yang2016-06-17
| | | | | | | | | | | | | | | | | | | | Implemented according to the draft specification "VP Codec ISO Media File Format Binding": http://www.webmproject.org/vp9/#draft-vp-codec-iso-media-file-format-binding '-strict -2' is required to use this feature. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | avformat/movenc: Skip unsupported video tracks in timecode generationMichael Niedermayer2016-06-06
| | | | | | | | | | | | Fixes Ticket5414 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: remove useless if and reindentMarton Balint2016-05-31
| | | | | | | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* | avformat/movenc: propagate shift_data errors properlyMarton Balint2016-05-31
| | | | | | | | | | | | | | | | The second one is not explicitly needed, as res is not reset, but it is there for consistency. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* | libavformat/movenc: remove unnecessary null checkMark Reid2016-05-30
| | | | | | | | | | | | Fixes CID1361955 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Fix potential track width/height overflowsMichael Niedermayer2016-05-29
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Avoid integer overflowMichael Niedermayer2016-05-29
| | | | | | | | | | | | Fixes: CID1361947 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Fix memleak of reshuffled packetMichael Niedermayer2016-05-28
| | | | | | | | | | | | Fixes CID1361952 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/movenc: Rename reshuffles return variable to ensure it is not mixed upMichael Niedermayer2016-05-28
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '74383def8f46805faf3391c98516b248108a9a6b'Derek Buitenhuis2016-05-12
|\| | | | | | | | | | | | | * commit '74383def8f46805faf3391c98516b248108a9a6b': movenc: Handle pts == NOPTS when autoflushing Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * movenc: Handle pts == NOPTS when autoflushingMartin Storsjö2016-04-21
| | | | | | | | | | | | | | This muxer generally handles pts == NOPTS by using dts instead; do this for consistency here as well. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '0abb07bad7026a945a31ba4047e6583c8b3fa3da'Derek Buitenhuis2016-05-12
|\| | | | | | | | | | | | | * commit '0abb07bad7026a945a31ba4047e6583c8b3fa3da': movenc: Update a comment to reflect how the code actually behaves Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * movenc: Update a comment to reflect how the code actually behavesMartin Storsjö2016-04-19
| | | | | | | | | | | | | | This codepath isn't quite as bad as it used to sound, if fragments are cut automatically at video packets. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '9200514ad8717c63f82101dc394f4378854325bf'Derek Buitenhuis2016-04-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9200514ad8717c63f82101dc394f4378854325bf': lavf: replace AVStream.codec with AVStream.codecpar This has been a HUGE effort from: - Derek Buitenhuis <derek.buitenhuis@gmail.com> - Hendrik Leppkes <h.leppkes@gmail.com> - wm4 <nfxjfg@googlemail.com> - Clément Bœsch <clement@stupeflix.com> - James Almer <jamrial@gmail.com> - Michael Niedermayer <michael@niedermayer.cc> - Rostislav Pehlivanov <atomnuker@gmail.com> Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * lavf: replace AVStream.codec with AVStream.codecparAnton Khirnov2016-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, AVStream contains an embedded AVCodecContext instance, which is used by demuxers to export stream parameters to the caller and by muxers to receive stream parameters from the caller. It is also used internally as the codec context that is passed to parsers. In addition, it is also widely used by the callers as the decoding (when demuxer) or encoding (when muxing) context, though this has been officially discouraged since Libav 11. There are multiple important problems with this approach: - the fields in AVCodecContext are in general one of * stream parameters * codec options * codec state However, it's not clear which ones are which. It is consequently unclear which fields are a demuxer allowed to set or a muxer allowed to read. This leads to erratic behaviour depending on whether decoding or encoding is being performed or not (and whether it uses the AVStream embedded codec context). - various synchronization issues arising from the fact that the same context is used by several different APIs (muxers/demuxers, parsers, bitstream filters and encoders/decoders) simultaneously, with there being no clear rules for who can modify what and the different processes being typically delayed with respect to each other. - avformat_find_stream_info() making it necessary to support opening and closing a single codec context multiple times, thus complicating the semantics of freeing various allocated objects in the codec context. Those problems are resolved by replacing the AVStream embedded codec context with a newly added AVCodecParameters instance, which stores only the stream parameters exported by the demuxers or read by the muxers.
* | fix some a/an typosLou Logan2016-03-28
| | | | | | | | Signed-off-by: Lou Logan <lou@lrcd.com>
* | lavf/movenc: Fix help output.Carl Eugen Hoyos2016-03-10
| | | | | | | | Fixes ticket #5323.
* | lavf/movenc: Add support for palette side dataMats Peterson2016-03-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | movenc: Timecode in MP4 Although MP4 does not have a concrete specification ↵Syed Andaleeb Roomy2016-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to store timecode information, the following technical note from Apple describes a way to achieve this via timecode track, similar to how it is done for MOV files. https://developer.apple.com/library/mac/technotes/tn2174/_index.html - Enabled creation of timecode tracks for MP4 in the same way as MOV. - Used nmhd as media information header of timecode track of MP4 instead of gmhd used in MOV, thus avoiding tcmi also, as recommended above. - Bypassed adding source reference field for MP4, as suggested above. Issue: https://trac.ffmpeg.org/ticket/4704 Signed-off-by: Syed Andaleeb Roomy <andaleebcse@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/movenc: Add palette to video sample descriptionMats Peterson2016-02-27
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>