Commit Graph

183 Commits

Author SHA1 Message Date
Diego Biurrun
bc5c918ea8 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
2008-10-03 10:16:29 +00:00
Aurelien Jacobs
c58e8bd3c3 matroskadec: cosmetics: indentation
Originally committed as revision 15529 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 21:15:48 +00:00
Aurelien Jacobs
21a115d17b matroskadec: don't merge packets which have no timestamp
Originally committed as revision 15528 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 21:14:56 +00:00
Aurelien Jacobs
d5e34dcb72 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
2008-09-28 23:06:25 +00:00
Aurelien Jacobs
3df2be9fa7 matroskadec: ass events lines must end with a DOS style EOL
Originally committed as revision 15454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-28 23:01:07 +00:00
Aurelien Jacobs
1bb4a1a1c4 matroskadec: set duration only for CODEC_ID_TEXT subtitles
Originally committed as revision 15453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-28 22:58:53 +00:00
Aurelien Jacobs
e7d4b7431d matroskadec: pass duration as parameter of matroska_fix_ass_packet()
Originally committed as revision 15452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-28 22:55:28 +00:00
Aurelien Jacobs
a8fd7e764a 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
2008-09-12 00:06:06 +00:00
Aurelien Jacobs
5358a81f9c matroskadec: prevent seeking before the first keyframe of the reference stream
Originally committed as revision 15301 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 22:42:17 +00:00
Aurelien Jacobs
c16582579b 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
2008-09-09 12:10:25 +00:00
Aurelien Jacobs
82360e670d matroskadec: ensure that overlapping subtitles are not added to the index
Originally committed as revision 15283 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-09 12:07:10 +00:00
Aurelien Jacobs
20f7466550 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
2008-09-09 12:01:51 +00:00
Aurelien Jacobs
f14a201b32 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
2008-09-09 11:54:35 +00:00
Aurelien Jacobs
3fc9d7cec4 matroskadec: sanitize track time_scale before using it
fix issue628

Originally committed as revision 15280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-09 11:23:48 +00:00
Aurelien Jacobs
a3467f8608 matroskadec: remove now useless vstream and is_video_key_frame
Originally committed as revision 15231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-06 23:44:29 +00:00
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