summaryrefslogtreecommitdiff
path: root/libavformat/matroskaenc.c
Commit message (Collapse)AuthorAge
* Merge commit '9b56d5c11488656254e9aed8d964ef2b7c2ff5e6'Hendrik Leppkes2015-10-29
|\ | | | | | | | | | | | | * commit '9b56d5c11488656254e9aed8d964ef2b7c2ff5e6': avpacket: Deprecate av_dup_packet Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * avpacket: Deprecate av_dup_packetLuca Barbato2015-10-26
| | | | | | | | | | As documented, `av_dup_packet` is broken by design, `av_packet_ref` matches the AVFrame ref-counted API and can be safely used instead.
* | Merge commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457'Hendrik Leppkes2015-10-27
|\| | | | | | | | | | | | | * commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457': avpacket: Replace av_free_packet with av_packet_unref Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-26
| | | | | | | | | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* | Merge commit 'f56a08559334b7eb6b3fedbc0cc741887f6067ae'Hendrik Leppkes2015-10-05
|\| | | | | | | | | | | | | * commit 'f56a08559334b7eb6b3fedbc0cc741887f6067ae': matroskaenc: Don't write a track language tag Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * matroskaenc: Don't write a track language tagJohn Stebbins2015-10-03
| | | | | | | | | | | | | | | | | | "language" is not an offical matroska tag. Track languages are specified with the MATROSKA_ID_TRACKLANGUAGE ebml. Writing the tag overrides the ebml specified language during playback with libav and some other players. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit '948f3c19a8bd069768ca411212aaf8c1ed96b10d'Hendrik Leppkes2015-09-29
|\| | | | | | | | | | | | | * commit '948f3c19a8bd069768ca411212aaf8c1ed96b10d': lavc: Make AVPacket.duration int64, and deprecate convergence_duration Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * lavc: Make AVPacket.duration int64, and deprecate convergence_durationwm42015-09-29
| | | | | | | | | | | | | | | | | | Note that convergence_duration had another meaning, one which was in practice never used. The only real use for it was a 64 bit replacement for the duration field. It's better just to make duration 64 bits, and to get rid of it. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit 'e176639bcbf4b580edb462a6b0650e53cd5e3c04'Hendrik Leppkes2015-08-27
|\| | | | | | | | | | | | | * commit 'e176639bcbf4b580edb462a6b0650e53cd5e3c04': webm: Explicitly select libvpx, libopus and libvorbis encoders Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * webm: Explicitly select libvpx, libopus and libvorbis encodersLuca Barbato2015-08-25
| | | | | | | | | | | | | | | | And update the preference for the newer codecs now that the libraries seem stable and widespread enough. Bug-Id: 695 Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | matroskaenc: Fix indentationTimothy Gu2015-08-25
| | | | | | | | Found-by: Hendrik Leppkes <h.leppkes@gmail.com>
* | libavformat/matroskaenc.c: fix small memory leaks on errorNeil Birkbeck2015-08-19
| | | | | | | | | | | | | | | | | | Fixing small leaks that can occur when mkv_write_tracks fails in mkv_write_header (e.g., if video track has unknown codec). Also changing mkv_write_seekhead to take the MatroskaMuxContext to avoid having dangling pointers. Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/matroskaenc: Avoid "for (int i" syntax for better compatibilityMichael Niedermayer2015-08-06
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | libavformat/matroska: Write stream durations in metadata, in the format of ↵Sasi Inguva2015-08-05
| | | | | | | | | | | | | | | | | | mkvmerge. Compute individual stream durations in matroska muxer. Write them as string tags in the same format as mkvmerge tool does. Signed-off-by: Sasi Inguva <isasi@google.com>
* | Cosmetics: Reindent after last commit.Carl Eugen Hoyos2015-07-09
| |
* | lavf/matroskaenc: Do not needlessly allocate memory for cuepoints.Carl Eugen Hoyos2015-07-09
| | | | | | | | Fixes ticket #4690.
* | Merge commit 'b14086ca38efa1a86cb0f0c6aa147b05f698877b'Michael Niedermayer2015-06-09
|\| | | | | | | | | | | | | * commit 'b14086ca38efa1a86cb0f0c6aa147b05f698877b': mkv: Correctly report the latest packet had been flushed Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mkv: Correctly report the latest packet had been flushedLuca Barbato2015-06-09
| | | | | | | | | | Bug-Id: 865 CC: libav-stable@libav.org
| * matroskadec: export cover art correctlywm42015-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generally, libavformat exports cover art pictures as video streams with 1 packet and AV_DISPOSITION_ATTACHED_PIC set. Only matroskadec exported it as attachment with codec_id set to AV_CODEC_ID_MJPEG. Obviously, this should be consistent, so change the Matroska demuxer to export a AV_DISPOSITION_ATTACHED_PIC pseudo video stream. Matroska muxing is probably incorrect too. I know that it can create broken files with an audio track and just 1 video frame when e.g. remuxing mp3 with APIC to mkv. But for now this commit does not change anything about muxing, and also continues to write attachments with AV_CODEC_ID_MJPEG should the muxer application have special knowledge that the Matroska is broken in this way. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | lavf/matroskaenc: Write Block Keyframe correctlyVignesh Venkatasubramanian2015-06-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per matroska Block Structure [1], for keyframes 0th bit of the flag should not be set (unlike SimpleBlocks). For Blocks, keyframes is inferred by the absence of ReferenceBlock element (as done by matroskadec). This CL writes the flag correctly and inserts the ReferenceBlock element for non-keyframes. The timestamp inserted is that of the immediately preceding frame (which is true for VP8 and VP9 - the only 2 codecs using the matroska block element as of now). It also considers all non-video frames (audio, subtitles, metadata) to be keyframes. [1] http://www.matroska.org/technical/specs/index.html#block_structure Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/matroskaenc: Avoid floats in default duration calculationMichael Niedermayer2015-05-26
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/mkv: Only skip prores header if the packet is large enough.Carl Eugen Hoyos2015-05-21
| | | | | | | | Fixes a possible endless loop.
* | avformat/matroskaenc: Check ff_vorbiscomment_length in put_flac_codecpriv()Michael Niedermayer2015-05-11
| | | | | | | | | | | | Its currently guaranteed to be smaller but its safer to check anyway Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/matroskaenc: Use avoid_negative_ts_use_pts if no stream writes dtsMichael Niedermayer2015-05-05
| | | | | | | | | | | | | | | | This reduces the number of cases where timestamps need to be shifted Fixes Ticket4487 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf: Add support for WebM Live MuxingVignesh Venkatasubramanian2015-04-07
| | | | | | | | | | | | | | | | | | | | | | This patch adds support for WebM Live Muxing by adding a new WebM Chunk muxer. It writes out live WebM Chunks which can be used for playback using Live DASH Clients. Please see muxers.texi for sample usage. Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | matroskadec: export cover art correctlywm42015-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generally, libavformat exports cover art pictures as video streams with 1 packet and AV_DISPOSITION_ATTACHED_PIC set. Only matroskadec exported it as attachment with codec_id set to AV_CODEC_ID_MJPEG. Obviously, this should be consistent, so change the Matroska demuxer to export a AV_DISPOSITION_ATTACHED_PIC pseudo video stream. Matroska muxing is probably incorrect too. I know that it can create broken files with an audio track and just 1 video frame when e.g. remuxing mp3 with APIC to mkv. But for now this commit does not change anything about muxing, and also continues to write attachments with AV_CODEC_ID_MJPEG should the muxer application have special knowledge that the Matroska is broken in this way. Fixes trac #4423. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/matroskaenc: List subtitle codecs with fake codec_tags to allow remuxing.Carl Eugen Hoyos2015-03-24
| | | | | | | | Fixes remuxing of DVBSUB to mkv.
* | lavf/mkv: Ignore ff_isom_write_hvcc() return value as the mov muxer does.Carl Eugen Hoyos2015-03-18
| | | | | | | | This change allows remuxing hevc from mpeg-ts to Matroska.
* | Merge commit '9272c965d9559a90ee64d46aebd99c117e07f7a3'Michael Niedermayer2015-03-11
|\| | | | | | | | | | | | | | | | | | | | | * commit '9272c965d9559a90ee64d46aebd99c117e07f7a3': matroskaenc: Fix type used for chapter timestamps Conflicts: libavformat/matroskaenc.c See: a4cd057bc7ddd2dd094d2ae7b0d6843ade95a626 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroskaenc: Fix type used for chapter timestampsVittorio Giovara2015-03-11
| |
* | Merge commit '9f25a109922da43c1f81273a431d3b40cb5a785a'Michael Niedermayer2015-03-09
|\| | | | | | | | | | | | | * commit '9f25a109922da43c1f81273a431d3b40cb5a785a': matroskaenc: Also validate chapter end time Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroskaenc: Also validate chapter end timeVittorio Giovara2015-03-09
| | | | | | | | | | | | | | This prevents it to be written as unsigned. Also add an error message. CC: libav-stable@libav.org Bug-Id: CID 1265717
| * matroskaenc: Allow writing track "forced" flagJohn Stebbins2015-02-24
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avformat/matroskaenc: Use the correct data type for the chapter timesMichael Niedermayer2015-02-17
| | | | | | | | | | | | Fixes potential integer overflow Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '5dc47a2bd52e375ed742c45d08356b45098f458d'Michael Niedermayer2015-02-17
|\| | | | | | | | | | | | | | | | | | | * commit '5dc47a2bd52e375ed742c45d08356b45098f458d': matroskaenc: Validate chapter start and end times Conflicts: libavformat/matroskaenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroskaenc: Validate chapter start and end timesVittorio Giovara2015-02-17
| | | | | | | | | | CC: libav-stable@libav.org Bug-Id: CID 1265717
* | avformat/matroskaenc: add allow_raw_vfw and disable it by defaultMichael Niedermayer2015-02-15
| | | | | | | | | | | | Based on complaint by wm4 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'daf8cf358a098a903d59adb6c0d0cc3262a8c93e'Michael Niedermayer2015-02-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'daf8cf358a098a903d59adb6c0d0cc3262a8c93e': avformat: Don't anonymously typedef structs Conflicts: libavformat/adtsenc.c libavformat/aiffenc.c libavformat/avidec.c libavformat/gif.c libavformat/iff.c libavformat/img2dec.c libavformat/jvdec.c libavformat/matroskadec.c libavformat/udp.c libavformat/wtvdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avformat: Don't anonymously typedef structsDiego Biurrun2015-02-14
| |
* | avformat/matroskaenc: Do not use native mode for raw RGBMichael Niedermayer2015-02-14
| | | | | | | | | | | | This fixes generating totally unplayable files Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avformat/matroskaenc: fix handling of VFW style raw rgbMichael Niedermayer2015-02-14
| | | | | | | | | | | | raw rgb uses 0 as codec tag in "VFW", the code assumed 0 means error Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '51da7d02748cc54b7d009115e76efa940b99a8ef'Michael Niedermayer2015-01-09
|\| | | | | | | | | | | | | * commit '51da7d02748cc54b7d009115e76efa940b99a8ef': matroskaenc: refuse to write AAC without valid extradata Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroskaenc: refuse to write AAC without valid extradataAnton Khirnov2015-01-09
| |
* | Merge commit 'b1306823d0b3ae998c8e10ad832004eb13bdd93e'Michael Niedermayer2014-12-19
|\| | | | | | | | | | | | | | | | | | | | | | | * commit 'b1306823d0b3ae998c8e10ad832004eb13bdd93e': check memory errors from av_strdup() Conflicts: avprobe.c libavformat/matroskaenc.c libavutil/opt.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * check memory errors from av_strdup()Vittorio Giovara2014-12-18
| |
| * mkv: Validate ASS Start and End fieldsLuca Barbato2014-12-03
| | | | | | | | CC: libav-stable@libav.org
* | avcodec/xiph: mark returned header pointers const from ↵Michael Niedermayer2014-12-14
| | | | | | | | | | | | | | avpriv_split_xiph_headers() Reviewed-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '090c67d586e3916f9acc49e010b6389d07f97153'Michael Niedermayer2014-10-27
|\| | | | | | | | | | | | | | | | | | | | | * commit '090c67d586e3916f9acc49e010b6389d07f97153': matroskaenc: write correct Display{Width, Height} in stereo encoding Conflicts: libavformat/matroskaenc.c See: 6103faaa51d2f46d6ccecaad9a089b4b42ff66ee Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroskaenc: write correct Display{Width, Height} in stereo encodingVittorio Giovara2014-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | should be the raw amount of pixels (for example 3840x1080 for full HD side by side) and the DisplayWidth/Height in pixels should be the amount of pixels for one plane (1920x1080 for that full HD stream)." So, move the aspect ratio check in the mkv_write_stereo_mode() function and always write the embl when stereo format and/or aspect ration is set. Also add a few comments to that function. CC: libav-stable@libav.org Found-by: Asan Usipov <asan.usipov@gmail.com>
* | Merge commit '28c020d4df9b060a58a124a7a5406d4313fbe249'Michael Niedermayer2014-10-25
|\| | | | | | | | | | | | | | | | | | | | | * commit '28c020d4df9b060a58a124a7a5406d4313fbe249': matroskaenc: check avio_open_dyn_buf return value Conflicts: libavformat/matroskaenc.c See: b1f517f503139ab9d0c406228b53663e86a128df Merged-by: Michael Niedermayer <michaelni@gmx.at>