Commit Graph

168 Commits

Author SHA1 Message Date
Aurelien Jacobs dbfb0e5f36 matroskadec: remove useless braces
Originally committed as revision 15230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-06 23:43:24 +00:00
Aurelien Jacobs 24c3da1637 matroskadec: ensure that the timecode added to the index are is the one
of the actual keyframe block, and not the one of the start of the cluster
containing this block.

Originally committed as revision 15229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-06 23:39:59 +00:00
Aurelien Jacobs 3eb9bfbb84 matroskadec: fix ASS subtitle track packets before emitting them
Matroska does some butchering when storing the ASS lines. The start and end
time are removed (because they are duplicated in the container).
The matroska_fix_ass_packet() function simply restore those start and end
time in ASS lines to ensure our ASS packets comply with the ASS spec.

Originally committed as revision 15211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 23:26:12 +00:00
Aurelien Jacobs 62c24705c8 matroska: subtitle display duration must be stored in pkt->convergence_duration
Originally committed as revision 15206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 23:08:19 +00:00
Aurelien Jacobs 0dbddda397 matroskadec: cosmetics: indentation
Originally committed as revision 14995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 19:58:55 +00:00
Aurelien Jacobs 6bef5f9b96 matroskadec: seek to the last position known in the index before resorting to
full cluster parsing when seeking after the end of index

Originally committed as revision 14994 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 19:57:42 +00:00
Aurelien Jacobs 8e44312d3f matroskadec: index timestamps are supposed to be in the timebase of the stream
Originally committed as revision 14984 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-26 20:32:27 +00:00
Aurelien Jacobs 244ee48a82 matroskadec: unset matroska->done when seeking
just in case someone try to seek back after reaching the end of file

Originally committed as revision 14960 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-25 00:17:31 +00:00
Aurelien Jacobs 0f646a2233 matroskadec: full seeking support in index-less files
when trying to seek past the last index entry, just parse more clusters to add them to the index, until an index entry match the desired position

Originally committed as revision 14959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-25 00:15:49 +00:00
Aurelien Jacobs 8bc98ba92b matroskadec: on the fly index construction for index-less files
each cluster that is read and that contains a video key frame is added
to the index

Originally committed as revision 14957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-25 00:09:08 +00:00
Aurelien Jacobs dfbbbdc0bf matroskadec: don't try to seek to negative timestamp
matroska timestamps are unsigned

Originally committed as revision 14956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 23:57:29 +00:00
Aurelien Jacobs 653fb2f80c matroskadec: move setting of matroska->done inside matroska_parse_cluster()
Originally committed as revision 14955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 23:54:14 +00:00
Reimar Döffinger 7b571fd7a4 Mark "matroska" probe data string constant.
Originally committed as revision 14949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 17:19:46 +00:00
Aurelien Jacobs ba18b99ffa matroskadec: make aac_profiles array const
Originally committed as revision 14943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 13:12:41 +00:00
Aurelien Jacobs 5972945197 convert every muxer/demuxer to write/read sample_aspect_ratio from/to
the corresponding AVStream instead of AVCodecContext

Originally committed as revision 14933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 23:43:20 +00:00
Aurelien Jacobs 28f27e0c0c matroskadec: fail cleanly when the required compression lib is not compiled in
Originally committed as revision 14870 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 23:08:07 +00:00
Aurelien Jacobs dc3e0211ed matroskadec: stop parsing when skipping en element crossing over the end of file
Originally committed as revision 14869 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 22:30:15 +00:00
Aurelien Jacobs eb9cf50a74 matroska: add support for most variants of PCM
Originally committed as revision 14862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 00:49:45 +00:00
Aurelien Jacobs b49d17b77a matroskadec: handle EBML_ID_VOID and EBML_ID_CRC32 in a generic way
Originally committed as revision 14861 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 00:44:25 +00:00
Aurelien Jacobs 5df3cc6f80 matroskadec: list some more ebml IDs found in the wild and that we ignore
This avoid printing some warnings about unknow IDs while we in fact know
the IDs but just want to knowingly ignore them.

Originally committed as revision 14738 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 21:15:15 +00:00
Aurelien Jacobs 131f1cb2a9 matroskadec: parse available blocks even when cluster parsing failed
This way, we still read the few complete blocks out of a truncated
cluster at the end of a truncated file.

Originally committed as revision 14723 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 09:36:45 +00:00
Aurelien Jacobs 44015c56a6 matroskadec: add basic tags support (metadata)
Originally committed as revision 14672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-08 23:50:38 +00:00
Aurelien Jacobs 00a3431cbb matroskadec: use av_freep(&x) instead of av_free(x);x=NULL
Originally committed as revision 14633 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 00:21:10 +00:00
Anton Khirnov b87025399c matroskadec: replace matroska_queue_packet with a single call to dynarray_add
patch by Anton Khirnov  wyskas _at_ gmail _dot_ com

Originally committed as revision 14632 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 00:17:47 +00:00
Diego Biurrun 5968d2dd1e misc spelling/grammar fixes
Originally committed as revision 14616 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 08:28:57 +00:00
Aurelien Jacobs cc70d14b3d matroskadec: remove useless num_streams
Originally committed as revision 14611 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:43:01 +00:00
Aurelien Jacobs 88cca98947 matroskadec: expand useless ebml_read_element_id() wrapper
Originally committed as revision 14610 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:58 +00:00
Aurelien Jacobs 33ac07ea08 matroskadec: simplify matroska_ebmlnum_sint()
Originally committed as revision 14609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:55 +00:00
Aurelien Jacobs c1e01133f6 matroskadec: implement matroska_ebmlnum_uint() using ebml_read_num()
Originally committed as revision 14608 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:52 +00:00
Aurelien Jacobs cc8be50637 matroska: expand useless define for MS compat codec id strings
Originally committed as revision 14607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:49 +00:00
Aurelien Jacobs ff33c5c565 matroskadec: update copyright year and related comments
Originally committed as revision 14605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:43 +00:00
Aurelien Jacobs 737c40da20 matroskadec: reorder some functions in a more logical order
Originally committed as revision 14604 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:39 +00:00
Aurelien Jacobs 1b6d23bbcb matroskadec: remove now useless wrapper ebml_read_element_length()
Originally committed as revision 14603 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:36 +00:00
Aurelien Jacobs 66cfc3856c matroskadec: remove now useless wrapper ebml_read_seek()
Originally committed as revision 14602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:33 +00:00
Aurelien Jacobs 5c5373cea4 matroskadec: remove now useless peek_id
Originally committed as revision 14601 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:29 +00:00
Aurelien Jacobs 3879763833 matroskadec: don't try to re-read already parsed ID in matroska_parse_cluster()
Originally committed as revision 14600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:26 +00:00
Aurelien Jacobs 6314cca006 matroskadec: remove now unused parameter 'once' from ebml_parse_nest()
Originally committed as revision 14599 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:23 +00:00
Aurelien Jacobs c4d3d9ba95 matroskadec: directly use ebml_parse() or ebml_parse_id() where it's enough
Originally committed as revision 14598 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:20 +00:00
Aurelien Jacobs 66a37e060b matroskadec: new ebml_parse() function, centralize ebml_read_element_id() calls
Originally committed as revision 14597 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:17 +00:00
Aurelien Jacobs 9bcb92ca6b matroskadec: rename ebml_parse() to ebml_parse_nest()
Originally committed as revision 14596 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:13 +00:00
Aurelien Jacobs c005b3f224 matroskadec: don't care about the number of bytes read by ebml_read_element_id()
Originally committed as revision 14595 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:10 +00:00
Aurelien Jacobs 592110c26c matroskadec: simplify check for hierarchy level
Originally committed as revision 14594 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:08 +00:00
Aurelien Jacobs f7b9687cbb matroskadec: cosmetics: consistent style for function declarations
Originally committed as revision 14593 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:05 +00:00
Aurelien Jacobs 104be2404e matroskadec: Use string instead of char table as probe data comparison source.
Originally committed as revision 14592 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:42:02 +00:00
Aurelien Jacobs eb05caccf2 matroskadec: use an EbmlBin as parameter to ebml_read_binary()
Originally committed as revision 14591 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:59 +00:00
Aurelien Jacobs c6cd2b3d22 matroskadec: extract common code out of ebml_read_*()
Originally committed as revision 14590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:55 +00:00
Aurelien Jacobs ba5a1f99cc matroskadec: simplify/cleanup error logging in ebml_read_*()
Originally committed as revision 14589 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:52 +00:00
Aurelien Jacobs 54d8869d3a matroskadec: remove now useless expected_id parameter from ebml_parse()
Originally committed as revision 14588 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:50 +00:00
Aurelien Jacobs 4dc9e183dd matroskadec: expand useless ebml_peek_id() wrapper
Originally committed as revision 14587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:46 +00:00
Aurelien Jacobs 3856e7c4aa matroskadec: remove unused levelup parameter from ebml_read_element_id()
Originally committed as revision 14586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:41:43 +00:00