| Index: chromium/patches/from_upstream/38_webm_cues_before_first_cluster.patch
|
| diff --git a/chromium/patches/from_upstream/38_webm_cues_before_first_cluster.patch b/chromium/patches/from_upstream/38_webm_cues_before_first_cluster.patch
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d02f6105ca74170aea445ef4b19f5aecf83ea972
|
| --- /dev/null
|
| +++ b/chromium/patches/from_upstream/38_webm_cues_before_first_cluster.patch
|
| @@ -0,0 +1,56 @@
|
| +diff -wurp -N orig/libavformat/matroskadec.c ffmpeg/libavformat/matroskadec.c
|
| +--- orig/libavformat/matroskadec.c 2011-09-30 14:39:42.993442677 -0700
|
| ++++ ffmpeg/libavformat/matroskadec.c 2011-09-30 14:41:40.483401611 -0700
|
| +@@ -1229,21 +1229,12 @@ static void matroska_execute_seekhead(Ma
|
| + }
|
| + }
|
| +
|
| +-static void matroska_parse_cues(MatroskaDemuxContext *matroska) {
|
| +- EbmlList *seekhead_list = &matroska->seekhead;
|
| +- MatroskaSeekhead *seekhead = seekhead_list->elem;
|
| ++static void matroska_add_index_entries(MatroskaDemuxContext *matroska) {
|
| + EbmlList *index_list;
|
| + MatroskaIndex *index;
|
| + int index_scale = 1;
|
| + int i, j;
|
| +
|
| +- for (i = 0; i < seekhead_list->nb_elem; i++)
|
| +- if (seekhead[i].id == MATROSKA_ID_CUES)
|
| +- break;
|
| +- assert(i <= seekhead_list->nb_elem);
|
| +-
|
| +- matroska_parse_seekhead_entry(matroska, i);
|
| +-
|
| + index_list = &matroska->index;
|
| + index = index_list->elem;
|
| + if (index_list->nb_elem
|
| +@@ -1265,6 +1256,20 @@ static void matroska_parse_cues(Matroska
|
| + }
|
| + }
|
| +
|
| ++static void matroska_parse_cues(MatroskaDemuxContext *matroska) {
|
| ++ EbmlList *seekhead_list = &matroska->seekhead;
|
| ++ MatroskaSeekhead *seekhead = seekhead_list->elem;
|
| ++ int i;
|
| ++
|
| ++ for (i = 0; i < seekhead_list->nb_elem; i++)
|
| ++ if (seekhead[i].id == MATROSKA_ID_CUES)
|
| ++ break;
|
| ++ assert(i <= seekhead_list->nb_elem);
|
| ++
|
| ++ matroska_parse_seekhead_entry(matroska, i);
|
| ++ matroska_add_index_entries(matroska);
|
| ++}
|
| ++
|
| + static int matroska_aac_profile(char *codec_id)
|
| + {
|
| + static const char * const aac_profiles[] = { "MAIN", "LC", "SSR" };
|
| +@@ -1660,6 +1665,8 @@ static int matroska_read_header(AVFormat
|
| + max_start = chapters[i].start;
|
| + }
|
| +
|
| ++ matroska_add_index_entries(matroska);
|
| ++
|
| + matroska_convert_tags(s);
|
| +
|
| + return 0;
|
|
|