Statistics
| Branch: | Revision:

ffmpeg / libavformat / matroskadec.c @ 4dcde00c

History | View | Annotate | Download (69.8 KB)

# Date Author Comment
8978feda 04/03/2011 08:46 PM Anton Khirnov

avio: introduce an AVIOContext.seekable field

Use it instead of url_is_streamed and AVIOContext.is_streamed.

98a7d560 03/24/2011 11:34 PM John Stebbins

matroskadec: set default duration for simple block

When a normal Block is parsed, duration is initialized to
AV_NOPTS_VALUE. If it is not changed, then the track's default
duration is used. But for SimpleBlock, duration is initialized to
0 instead of AV_NOPTS_VALUE. This is due to the difference in how...

2912e87a 03/19/2011 01:33 PM Mans Rullgard

Replace FFmpeg with Libav in licence headers

Signed-off-by: Mans Rullgard <>

45a8a02a 03/17/2011 02:24 AM Anton Khirnov

lavf: replace avio_seek(SEEK_CUR) with avio_skip where it makes sense

Signed-off-by: Ronald S. Bultje <>

66e5b1df 03/07/2011 10:20 PM Anton Khirnov

avio: deprecate url_feof

AVIOContext.eof_reached should be used directly instead.

Signed-off-by: Ronald S. Bultje <>

a2704c97 03/04/2011 04:26 PM Anton Khirnov

avio: add avio_tell macro as a replacement for url_ftell

Signed-off-by: Ronald S. Bultje <>

e356fc57 03/01/2011 05:22 PM Anton Khirnov

lavf: replace all uses of url_fskip with avio_seek

Signed-off-by: Ronald S. Bultje <>

6b4aa5da 03/01/2011 05:12 PM Anton Khirnov

avio: avio_ prefix for url_fseek

Signed-off-by: Ronald S. Bultje <>

77eb5504 02/21/2011 07:25 PM Anton Khirnov

avio: avio: avio_ prefixes for put_* functions

In the name of consistency:
put_byte -> avio_w8
put_<type> -> avio_w<type>
put_buffer -> avio_write

put_nbyte will be made private
put_tag will be merged with avio_put_str

Signed-off-by: Ronald S. Bultje <>

b7effd4e 02/21/2011 04:23 PM Anton Khirnov

avio: avio_ prefixes for get_* functions

In the name of consistency:
get_byte -> avio_r8
get_<type> -> avio_r<type>
get_buffer -> avio_read

get_partial_buffer will be made private later

get_strz is left out becase I want to change it later to return...

e731b8d8 02/20/2011 01:37 PM Anton Khirnov

avio: move init_put_byte() to a new private header and rename it

init_put_byte should never be used outside of lavf, since
sizeof(AVIOContext) isn't part of public ABI.

Signed-off-by: Ronald S. Bultje <>

ae628ec1 02/20/2011 01:37 PM Anton Khirnov

avio: rename ByteIOContext to AVIOContext.

Signed-off-by: Ronald S. Bultje <>

95ec3d4c 02/07/2011 02:36 AM Reimar Döffinger

matroskadec: add generic element length validation.

This validate the length of a mkv element directly after reading
it.
This has the advantage that it is easy to add new limits and makes
it less likely to forget to add checks and also avoids issues like...

c6610a21 01/26/2011 10:10 PM Diego Elio Pettenò

Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.

This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.

bf800c7d 11/03/2010 06:29 AM Anton Khirnov

matroskadec: skip invalid tags with no TagName

fixes segfault in issue 2328

Originally committed as revision 25659 to svn://svn.ffmpeg.org/ffmpeg/trunk

ad7768f4 10/16/2010 01:20 PM Anton Khirnov

add ff_ prefix to metadata_conv()
patch by Anton Khirnov anton at khirnov dot net

Originally committed as revision 25505 to svn://svn.ffmpeg.org/ffmpeg/trunk

03700d39 10/15/2010 07:04 PM Anton Khirnov

Export metadata in the generic format. Deprecate old conversion API.
patch by Anton Khirnov anton at khirnov dot net

Originally committed as revision 25493 to svn://svn.ffmpeg.org/ffmpeg/trunk

1b4d327b 09/06/2010 05:51 PM Reimar Döffinger

Add a special function to mkv demxuer to parse length values that includes
special-case code to handle all possible encodings of "unknown length".

Originally committed as revision 25049 to svn://svn.ffmpeg.org/ffmpeg/trunk

4a194c8f 09/05/2010 09:37 PM Aurelien Jacobs

matroskadec: allow uint and float elements with length = 0

Originally committed as revision 25044 to svn://svn.ffmpeg.org/ffmpeg/trunk

ff6a5fc1 09/02/2010 07:17 PM Reimar Döffinger

Optimize/simplify ebml_read_num.

Originally committed as revision 25026 to svn://svn.ffmpeg.org/ffmpeg/trunk

e110e968 08/17/2010 02:25 PM Aurelien Jacobs

matroskadec: minor simplification
patch from reimar

Originally committed as revision 24804 to svn://svn.ffmpeg.org/ffmpeg/trunk

4f90688b 08/17/2010 02:05 PM Aurelien Jacobs

matroskadec: fix integer overflow
patch from reimar

Originally committed as revision 24803 to svn://svn.ffmpeg.org/ffmpeg/trunk

f7cf0f31 08/01/2010 12:30 AM Alex Converse

Add WebM to the Matroska demuxer name.

Originally committed as revision 24639 to svn://svn.ffmpeg.org/ffmpeg/trunk

41c1ccc3 07/02/2010 04:41 PM David Conrad

matroskadec: merge only SSA packets together
fixes issue 2052
patch by David Conrad

Originally committed as revision 24004 to svn://svn.ffmpeg.org/ffmpeg/trunk

7a617a86 07/02/2010 04:38 PM Aurelien Jacobs

add AV_DISPOSITION_FORCED flag and use it in matroska demuxer

Originally committed as revision 24003 to svn://svn.ffmpeg.org/ffmpeg/trunk

0ade7bb6 06/15/2010 07:53 PM Aurelien Jacobs

matroskadec : propagate AVERROR to the caller
based on a patch by Jai Menon

Originally committed as revision 23619 to svn://svn.ffmpeg.org/ffmpeg/trunk

bddd1d93 06/11/2010 05:16 PM Aurelien Jacobs

matroskadec: fix type of the length field in ebml_read_master()
Also use the correct value for unknown size (instead of a truncated
and sign extended value).

Originally committed as revision 23591 to svn://svn.ffmpeg.org/ffmpeg/trunk

73917810 06/11/2010 04:45 PM Aurelien Jacobs

matroskadec: cosmetic: indentation

Originally committed as revision 23590 to svn://svn.ffmpeg.org/ffmpeg/trunk

8dbe48fc 06/11/2010 04:43 PM Aurelien Jacobs

matroskadec: add support for live broadcast containing unknown size clusters
This interrupt parsing and goes one ebml level up when encountering
a cluster start inside an unknown sized element which is not supposed to
contain a cluster.
fix issue1991

Originally committed as revision 23589 to svn://svn.ffmpeg.org/ffmpeg/trunk

80702035 06/11/2010 04:36 PM Aurelien Jacobs

matroskadec: simplify parsing of the first cluster
Now that we save the currently parsed ebml element ID after an interruption,
we don't need to special case the parsing of the first cluster.

Originally committed as revision 23588 to svn://svn.ffmpeg.org/ffmpeg/trunk

c3ade62c 06/11/2010 04:34 PM Aurelien Jacobs

matroskadec: store the ID of the currently parsed ebml element
This allows to interrupt parsing after reading an ID, and then properly
recover parsing.

Originally committed as revision 23587 to svn://svn.ffmpeg.org/ffmpeg/trunk

6c58adf3 06/11/2010 04:27 PM Aurelien Jacobs

matroskadec: cosmetic: split a line to make it more readable
This also simplifies further modifications.

Originally committed as revision 23586 to svn://svn.ffmpeg.org/ffmpeg/trunk

120a083f 06/08/2010 07:31 PM Reimar Döffinger

Do not attempt to seek to index for streamed files and if the user explicitly
requested us not to read the index.

Originally committed as revision 23540 to svn://svn.ffmpeg.org/ffmpeg/trunk

c31f00ed 06/08/2010 07:28 PM Reimar Döffinger

Fix the MATROSKA_ID_TAGDEFAULT to match the specification (instead of
libmatroska etc. typo) but continue to support the "old" value.

Originally committed as revision 23539 to svn://svn.ffmpeg.org/ffmpeg/trunk

37dd2356 05/25/2010 10:55 PM Aurelien Jacobs

matroskadec: avoid potential crash after r23169

Originally committed as revision 23330 to svn://svn.ffmpeg.org/ffmpeg/trunk

8daed34e 05/23/2010 10:20 PM David Conrad

matroskadec: Revert adding the doctype to metadata; it has no meaning elsewhere

Originally committed as revision 23275 to svn://svn.ffmpeg.org/ffmpeg/trunk

c7b913c8 05/22/2010 01:41 AM David Conrad

matroskadec: Allow unknown EBML doctype

Originally committed as revision 23246 to svn://svn.ffmpeg.org/ffmpeg/trunk

470491fa 05/22/2010 01:41 AM James Zern

matroskadec: Support webm doctype

Patch by James Zern <jzern at google>

Originally committed as revision 23245 to svn://svn.ffmpeg.org/ffmpeg/trunk

5549aa6d 05/18/2010 09:21 PM David Conrad

matroskadec: Free ebml binary buffer on error

Based on a Chromium patch

Originally committed as revision 23169 to svn://svn.ffmpeg.org/ffmpeg/trunk

465c28b6 05/18/2010 09:21 PM David Conrad

matroskadec: Fix buffer overread in matroska_ebmlnum_uint

Based on a Chromium patch

Originally committed as revision 23168 to svn://svn.ffmpeg.org/ffmpeg/trunk

d98bd80e 05/18/2010 09:21 PM David Conrad

matroskadec: Ensure time_scale is nonzero, fixes divide-by-zero if the file
has 0 written

Based on a Chromium patch

Originally committed as revision 23167 to svn://svn.ffmpeg.org/ffmpeg/trunk

1c664b23 05/18/2010 09:21 PM David Conrad

matroskadec: Use av_freep in ebml_read_ascii

Based on a Chromium patch

Originally committed as revision 23166 to svn://svn.ffmpeg.org/ffmpeg/trunk

1095d442 05/17/2010 06:12 PM Baptiste Coudurier

set avg frame rate in mkv demuxer

Originally committed as revision 23152 to svn://svn.ffmpeg.org/ffmpeg/trunk

2ef6c124 04/25/2010 02:27 PM Stefano Sabatini

Mark av_metadata_set() as deprecated, and use av_metadata_set2()
in its place.

av_metadata_set() is going to be dropped at the next major bump.

Originally committed as revision 22961 to svn://svn.ffmpeg.org/ffmpeg/trunk

f7501a71 04/20/2010 09:23 PM Baptiste Coudurier

seems aac gets screwed up by the parser so disable it

Originally committed as revision 22926 to svn://svn.ffmpeg.org/ffmpeg/trunk

dc1c26dc 04/20/2010 09:19 PM Baptiste Coudurier

parse stream headers for audio streams in mkv, needed for frame size

Originally committed as revision 22925 to svn://svn.ffmpeg.org/ffmpeg/trunk

ba87f080 04/20/2010 02:45 PM Diego Biurrun

Remove explicit filename from Doxygen @file commands.

Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk

9a2cb05f 04/11/2010 09:44 PM Stefano Sabatini

Move the internal function declarations in avformat.h to internal.h.

Originally committed as revision 22843 to svn://svn.ffmpeg.org/ffmpeg/trunk

cc947f04 03/31/2010 12:29 PM Jean-Daniel Dupas

Replace all occurences of PKT_FLAG_KEY with AV_PKT_FLAG_KEY.

Patch by Jean-Daniel Dupas, devlists shadowlab org

Originally committed as revision 22744 to svn://svn.ffmpeg.org/ffmpeg/trunk

72415b2a 03/30/2010 11:30 PM Stefano Sabatini

Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk

e536ccd6 03/15/2010 12:19 AM Aurelien Jacobs

matroskadec: use more appropriate error code

Originally committed as revision 22535 to svn://svn.ffmpeg.org/ffmpeg/trunk

6b10228a 03/12/2010 11:49 PM Aurelien Jacobs

matroskadec: add support for SIPR audio tracks

Originally committed as revision 22492 to svn://svn.ffmpeg.org/ffmpeg/trunk

e48f7ff3 03/07/2010 02:26 AM David Conrad

matroskadec: Fix a buffer overread

Originally committed as revision 22271 to svn://svn.ffmpeg.org/ffmpeg/trunk

68b0fd7c 03/03/2010 09:49 PM Aurelien Jacobs

matroskadec: cosmetic indentation

Originally committed as revision 22185 to svn://svn.ffmpeg.org/ffmpeg/trunk

3e93c8ed 03/03/2010 09:46 PM Joakim Plate

matroskadec: timestamps are dts and not pts in ms vfw compatibility mode
original patch by elupus at ecce dot se

Originally committed as revision 22184 to svn://svn.ffmpeg.org/ffmpeg/trunk

ca76a119 02/01/2010 11:39 AM Anton Khirnov

Add a list of generic tags and change demuxers to follow it.
Patch by Anton Khirnov, wyskas at gmail dot com

Originally committed as revision 21587 to svn://svn.ffmpeg.org/ffmpeg/trunk

18ca491b 01/11/2010 12:31 AM David Conrad

mkvdec: Avoid divide-by-zero crash on invalid real audio tracks

Originally committed as revision 21129 to svn://svn.ffmpeg.org/ffmpeg/trunk

553e9f75 10/01/2009 09:15 PM Aurelien Jacobs

matroskadec: cosmetics: indentation

Originally committed as revision 20133 to svn://svn.ffmpeg.org/ffmpeg/trunk

ff0d5a74 10/01/2009 09:14 PM Aurelien Jacobs

matroskadec: don't overwrite extradata already read by ff_get_wav_header()

Originally committed as revision 20132 to svn://svn.ffmpeg.org/ffmpeg/trunk

038146e9 10/01/2009 09:14 PM Aurelien Jacobs

matroskadec: fix handling of A_MS/ACM track with no extradata

Originally committed as revision 20131 to svn://svn.ffmpeg.org/ffmpeg/trunk

429eeecd 08/24/2009 01:43 PM Aurelien Jacobs

matroskadec: add correct extradata offset for V_MS/VFW/FOURCC tracks

Originally committed as revision 19694 to svn://svn.ffmpeg.org/ffmpeg/trunk

e2644407 08/24/2009 01:40 PM Aurelien Jacobs

matroskadec: factorize some code

Originally committed as revision 19693 to svn://svn.ffmpeg.org/ffmpeg/trunk

8306be9c 08/10/2009 06:12 PM Aurelien Jacobs

matroskadec: disable h264 parser as long as it totally mess up frame type

Originally committed as revision 19622 to svn://svn.ffmpeg.org/ffmpeg/trunk

194d4b49 08/10/2009 06:06 PM Aurelien Jacobs

matroskadec: correctly parse flags for simpleblock frames

Originally committed as revision 19621 to svn://svn.ffmpeg.org/ffmpeg/trunk

1a40491e 06/22/2009 11:09 PM Daniel Verkamp

Add ff_ prefixes to exported symbols in libavformat/riff.h.
patch by Daniel Verkamp, aniel drv nu

Originally committed as revision 19254 to svn://svn.ffmpeg.org/ffmpeg/trunk

4f909c76 06/13/2009 10:29 PM Aurelien Jacobs

matroskadec: prepend TargetType to metadata key name

Originally committed as revision 19184 to svn://svn.ffmpeg.org/ffmpeg/trunk

0871e65c 05/10/2009 02:33 PM Benjamin Larsson

Remove unused code found by CSA

Originally committed as revision 18783 to svn://svn.ffmpeg.org/ffmpeg/trunk

719e721a 03/01/2009 12:12 AM Aurelien Jacobs

Add some basic metadata conversion tables for matroska and asf.
Add missing const qualifiers for metadata_conv in AV{In|Out}putFormat.

Originally committed as revision 17671 to svn://svn.ffmpeg.org/ffmpeg/trunk

9ebeea82 02/19/2009 09:01 PM Aurelien Jacobs

matroskadec: return AVERROR_EOF upon detection of end of file

Originally committed as revision 17460 to svn://svn.ffmpeg.org/ffmpeg/trunk

f702df39 02/15/2009 04:05 PM Aurelien Jacobs

matroskadec: export language of metadata tags when available

Originally committed as revision 17334 to svn://svn.ffmpeg.org/ffmpeg/trunk

929e9de7 02/15/2009 03:53 PM Aurelien Jacobs

matroskadec: add generic metadata support

Originally committed as revision 17331 to svn://svn.ffmpeg.org/ffmpeg/trunk

325ace3e 02/15/2009 03:34 PM Aurelien Jacobs

matroskadec: read track and attachment uid
will be useful for generic metadata support

Originally committed as revision 17330 to svn://svn.ffmpeg.org/ffmpeg/trunk

38766e08 02/15/2009 03:29 PM Aurelien Jacobs

matroskadec: export track name through the metadata API

Originally committed as revision 17329 to svn://svn.ffmpeg.org/ffmpeg/trunk

6cb6e159 02/15/2009 03:25 PM Aurelien Jacobs

matroskadec: use new metadata API to export some simple information

Originally committed as revision 17328 to svn://svn.ffmpeg.org/ffmpeg/trunk

69b6d53b 02/02/2009 09:32 PM Aurelien Jacobs

cosmetics: whitespace

Originally committed as revision 16951 to svn://svn.ffmpeg.org/ffmpeg/trunk

0b178e56 02/02/2009 08:16 PM Reimar Döffinger

Add av_ prefix to LZO stuff and thus make it officially part of the public API.
Keep lzo1x_decode until the next major version bump for binary compatibility.

Originally committed as revision 16946 to svn://svn.ffmpeg.org/ffmpeg/trunk

bad5537e 02/01/2009 02:00 AM Diego Biurrun

Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk

0e169d16 01/18/2009 05:26 PM Aurelien Jacobs

matroskadec: merge ByteIOContext declarations at upper level

Originally committed as revision 16673 to svn://svn.ffmpeg.org/ffmpeg/trunk

68a71451 01/18/2009 05:13 PM Aurelien Jacobs

matroskadec: parse the WAVEFORMATEX header and discard it from extradata

Originally committed as revision 16672 to svn://svn.ffmpeg.org/ffmpeg/trunk

e0e4be59 01/15/2009 12:42 AM Aurelien Jacobs

matroskadec: ensure we only consider chapters which are properly ordered

Originally committed as revision 16612 to svn://svn.ffmpeg.org/ffmpeg/trunk

b250f9c6 01/13/2009 11:44 PM Aurelien Jacobs

Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk

6a5d31ac 01/11/2009 10:19 PM Diego Biurrun

Fix build: Add intreadwrite.h and bswap.h #includes where necessary.

Originally committed as revision 16556 to svn://svn.ffmpeg.org/ffmpeg/trunk

1ca610c0 12/19/2008 01:00 AM Alexander Strange

Allocate and clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of mkv
extradata.

Fixes valgrind invalid read warnings during H.264 extradata parsing.

Originally committed as revision 16229 to svn://svn.ffmpeg.org/ffmpeg/trunk

8f569ed0 11/15/2008 03:34 PM Aurelien Jacobs

matroskadec: fix index timestamps for some broken files
fix issue697

Originally committed as revision 15829 to svn://svn.ffmpeg.org/ffmpeg/trunk

37d3e066 10/21/2008 09:40 PM Aurelien Jacobs

uses FF_ARRAY_ELEMS() where appropriate

Originally committed as revision 15662 to svn://svn.ffmpeg.org/ffmpeg/trunk

bc5c918e 10/03/2008 10:16 AM Diego Biurrun

Remove offset_t typedef and use int64_t directly instead.
The name offset_t is easily confused with the standard off_t type and
*_t is POSIX reserved namespace if any POSIX header is included.

Originally committed as revision 15533 to svn://svn.ffmpeg.org/ffmpeg/trunk

c58e8bd3 10/02/2008 09:15 PM Aurelien Jacobs

matroskadec: cosmetics: indentation

Originally committed as revision 15529 to svn://svn.ffmpeg.org/ffmpeg/trunk

21a115d1 10/02/2008 09:14 PM Aurelien Jacobs

matroskadec: don't merge packets which have no timestamp

Originally committed as revision 15528 to svn://svn.ffmpeg.org/ffmpeg/trunk

d5e34dcb 09/28/2008 11:06 PM Aurelien Jacobs

matroskadec: merge ASS events which share the same pts in the same AVPavket

Originally committed as revision 15455 to svn://svn.ffmpeg.org/ffmpeg/trunk

3df2be9f 09/28/2008 11:01 PM Aurelien Jacobs

matroskadec: ass events lines must end with a DOS style EOL

Originally committed as revision 15454 to svn://svn.ffmpeg.org/ffmpeg/trunk

1bb4a1a1 09/28/2008 10:58 PM Aurelien Jacobs

matroskadec: set duration only for CODEC_ID_TEXT subtitles

Originally committed as revision 15453 to svn://svn.ffmpeg.org/ffmpeg/trunk

e7d4b743 09/28/2008 10:55 PM Aurelien Jacobs

matroskadec: pass duration as parameter of matroska_fix_ass_packet()

Originally committed as revision 15452 to svn://svn.ffmpeg.org/ffmpeg/trunk

a8fd7e76 09/12/2008 12:06 AM Aurelien Jacobs

matroskadec: simplify, first_timecode is already in the index
no need to duplicate it

Originally committed as revision 15302 to svn://svn.ffmpeg.org/ffmpeg/trunk

5358a81f 09/11/2008 10:42 PM Aurelien Jacobs

matroskadec: prevent seeking before the first keyframe of the reference stream

Originally committed as revision 15301 to svn://svn.ffmpeg.org/ffmpeg/trunk

c1658257 09/09/2008 12:10 PM Aurelien Jacobs

matroskadec: demux relevant subtitle packets after a seek
only works for subtitle tracks which were properly indexed up to the seek point

Originally committed as revision 15284 to svn://svn.ffmpeg.org/ffmpeg/trunk

82360e67 09/09/2008 12:07 PM Aurelien Jacobs

matroskadec: ensure that overlapping subtitles are not added to the index

Originally committed as revision 15283 to svn://svn.ffmpeg.org/ffmpeg/trunk

20f74665 09/09/2008 12:01 PM Aurelien Jacobs

matroskadec: after seeking, skip up to the desired timestamp instead of
the desired stream

Originally committed as revision 15282 to svn://svn.ffmpeg.org/ffmpeg/trunk

f14a201b 09/09/2008 11:54 AM Aurelien Jacobs

matroskadec: move timecode calculation a little earlier
so as to be able to use it in other part of the code

Originally committed as revision 15281 to svn://svn.ffmpeg.org/ffmpeg/trunk

3fc9d7ce 09/09/2008 11:23 AM Aurelien Jacobs

matroskadec: sanitize track time_scale before using it
fix issue628

Originally committed as revision 15280 to svn://svn.ffmpeg.org/ffmpeg/trunk

a3467f86 09/06/2008 11:44 PM Aurelien Jacobs

matroskadec: remove now useless vstream and is_video_key_frame

Originally committed as revision 15231 to svn://svn.ffmpeg.org/ffmpeg/trunk