Commit Graph

20 Commits

Author SHA1 Message Date
Uoti Urpala 9d4d5b4469 demux_mkv: simplify subtitle type recognition
Remove indirection through MATROSKA_SUBTYPE_* and instead set the
per-track type field to the letter identifier used in public sh_sub.
2011-03-31 03:44:37 +03:00
Uoti Urpala d72541b75c bstr.[ch]: add new files for struct bstr related functionality
Move "struct bstr" definition from ebml.h to its own header and add
some utility functions/macros. Change length field type from int to
size_t and adjust using code accordingly.

Partially based on a patch from Anton Khirnov.
2010-05-20 23:50:18 +03:00
Uoti Urpala db41501f23 demux_mkv: use new EBML parser to read Audio element 2010-01-27 14:26:48 +02:00
Uoti Urpala a07cfb35d3 demux_mkv: remove pointless 'long double' use
There was no remaining reason to use this type. The variables were
assigned values with plain double precision anyway.
2010-01-27 14:26:48 +02:00
Uoti Urpala 8b0726b28a demux_mkv: use new EBML parser for file header 2010-01-27 14:26:48 +02:00
Uoti Urpala 5f631d1c08 matroska: add new parsing code
Add a new EBML parser implementation that should allow significant
improvements to the Matroska demuxer. The new parsing code is not
actually used yet by the demuxer. The only changes to existing code in
this commit are to generate the MATROSKA_ID_* / EBML_ID_* macro
definitions from the new implementation and to rename some of them
(the new implementation uses names matching the official Matroska spec).

The main parser implementation is added in ebml.c. There are two new
generated files, ebml_defs.c and ebml_types.h, that contain
definitions of EBML elements. Those are generated by the new script
TOOLS/matroska.py. There's a new Makefile target "generated_ebml" that
run the script to refresh the content of the generated files.
2010-01-27 14:26:43 +02:00
Daniel Dawson c3c0309eec Support for multiple editions in Matroska
Add code to intelligently choose an appropriate Matroska edition when
there are several. Will choose, in descending order of preference: the
edition chosen by the user through the option "-edition <edition id>"
if it exists, the first edition with EditionFlagDefault set to 1 if
there is one, or the first edition.
2009-12-04 19:43:17 +02:00
Daniel Dawson 9b81b7827c demux_mkv: Detect and warn about virtual timeline nesting
Detect use of ChapterSegmentEditionUID element in a Matroska chapter
definition, indicating inclusion of an external virtual timeline,
which is not yet supported. Leave the chapter is the chapter list but
set segment_uid to zero. This way timeline parsing will skip the
chapter and avoid nonsensical output but will still print information
about missing content.
2009-12-04 07:15:22 +02:00
Uoti Urpala 6d908205fb Merge svn changes up to r29304 2009-07-07 02:07:11 +03:00
diego f077569dff Add standard license header to all files in libmpdemux.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29280 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-08 21:51:13 +00:00
Uoti Urpala 3279403611 demux_mkv: Parse ordered chapter information
Parse the ordered chapter structure if present and place the
information in the public demuxer structure. Nothing uses the
information yet.
2009-03-22 04:42:25 +02:00
diego 67d7fb2015 Add missing header #includes to fix 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26175 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-05 23:32:01 +00:00
diego 8efb2fa21c Add MPLAYER_ prefix to multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26061 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-22 09:09:46 +00:00
diego 3e9e4acd8d Do not use leading underscores in multiple inclusion guards, they are reserved.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23709 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-07-02 22:34:45 +00:00
eugeni f7e89b57fa Add matroska v2 (SimpleBlock) support.
Patch by Federico Menarini (federico d menarini a gmail d com).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19983 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-25 21:17:43 +00:00
eugeni 1de0c3327d Add matroska chapter seeking capability.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19348 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-08-06 18:55:34 +00:00
eugeni e15ae9a600 Initial libass release (without mencoder support).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18942 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-07-07 18:26:51 +00:00
alex b136df4b34 freebsd fix (btw, why does it needs this int_max shit?
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11846 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-01-25 16:17:38 +00:00
mosu fda11ba080 Compiler/system compatibility fixes.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11816 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-01-20 14:10:48 +00:00
mosu d6fad182c2 Added the new C based Matroska demuxer by Aurelien Jacobs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11808 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-01-19 19:16:10 +00:00