diff options
author | wm4 <wm4@nowhere> | 2013-10-17 00:30:20 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-10-17 00:32:14 +0200 |
commit | af0306d48d5410c7f1d12f03a4e791b8144dbecb (patch) | |
tree | cc9ecef526fe3357441dcd36c8bf92367fa302df /demux/demux.h | |
parent | 1eda9554d44f167f211208b4b2e4dfeb757dd657 (diff) | |
parent | 1b30a0bbf901c04140770d37c58cb63ef676406e (diff) | |
download | mpv-af0306d48d5410c7f1d12f03a4e791b8144dbecb.tar.bz2 mpv-af0306d48d5410c7f1d12f03a4e791b8144dbecb.tar.xz |
Merge Matroska ordered chapter changes
This adds support for ChapterSegmentEditionUID (pull request #258),
and also fixes issue #278 (pull request #292).
In fact, this is a straight merge of pr/292, which also contains pr/258.
Diffstat (limited to 'demux/demux.h')
-rw-r--r-- | demux/demux.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/demux/demux.h b/demux/demux.h index 1e0546a6d0..0c8f9cb3f8 100644 --- a/demux/demux.h +++ b/demux/demux.h @@ -128,14 +128,19 @@ typedef struct demux_chapter uint64_t demuxer_id; // for mapping to internal demuxer data structures } demux_chapter_t; +struct matroska_segment_uid { + unsigned char segment[16]; + uint64_t edition; +}; + struct matroska_data { - unsigned char segment_uid[16]; + struct matroska_segment_uid uid; // Ordered chapter information if any struct matroska_chapter { uint64_t start; uint64_t end; bool has_segment_uid; - unsigned char segment_uid[16]; + struct matroska_segment_uid uid; char *name; } *ordered_chapters; int num_ordered_chapters; @@ -151,7 +156,7 @@ typedef struct demux_attachment struct demuxer_params { int matroska_num_wanted_uids; - unsigned char (*matroska_wanted_uids)[16]; + struct matroska_segment_uid *matroska_wanted_uids; int matroska_wanted_segment; bool *matroska_was_valid; struct ass_library *ass_library; @@ -301,4 +306,7 @@ void mp_tags_set_bstr(struct mp_tags *tags, bstr key, bstr value); char *mp_tags_get_str(struct mp_tags *tags, const char *key); char *mp_tags_get_bstr(struct mp_tags *tags, bstr key); +bool demux_matroska_uid_cmp(struct matroska_segment_uid *a, + struct matroska_segment_uid *b); + #endif /* MPLAYER_DEMUXER_H */ |