Sophie

Sophie

distrib > Mageia > 5 > x86_64 > by-pkgid > a2e74bfd4efa8910310b3467b8b0bea2 > files > 3

chromium-browser-stable-43.0.2357.130-1.mga5.src.rpm

diff -up chromium-42.0.2305.3/net/base/mime_util.cc.matroska-avi chromium-42.0.2305.3/net/base/mime_util.cc
--- chromium-42.0.2305.3/net/base/mime_util.cc.matroska-avi	2015-02-18 06:35:15.000000000 +0100
+++ chromium-42.0.2305.3/net/base/mime_util.cc	2015-02-18 18:22:51.808570737 +0100
@@ -47,7 +47,12 @@ class MimeUtil : public PlatformMimeUtil
     H264_HIGH,
     VP8,
     VP9,
-    THEORA
+    THEORA,
+    AC3,
+    DTS,
+    MP2,
+    MPEG4_SP,
+    MPEG4_ASP
   };
 
   bool GetMimeTypeFromExtension(const base::FilePath::StringType& ext,
@@ -194,6 +199,9 @@ static const MimeInfo primary_mappings[]
   { "video/webm", "webm" },
   { "audio/webm", "webm" },
   { "audio/wav", "wav" },
+  { "video/x-matroska", "mkv" },
+  { "audio/x-matroska", "mkv" },
+  { "video/x-msvideo", "avi" },
   { "application/xhtml+xml", "xhtml,xht,xhtm" },
   { "application/x-chrome-extension", "crx" },
   { "multipart/related", "mhtml,mht" }
@@ -361,6 +369,13 @@ static const char* const proprietary_med
   "audio/mpeg",
   "audio/aac",
 
+   // Matroska
+   "video/x-matroska",
+   "audio/x-matroska",
+   
+   // AVI.
+   "video/x-msvideo",
+
 #if defined(ENABLE_MPEG2TS_STREAM_PARSER)
   // MPEG-2 TS.
   "video/mp2t",
@@ -549,7 +564,10 @@ static const MediaFormatStrict format_co
     {"video/mp4", kMP4VideoCodecsExpression},
     {"video/x-m4v", kMP4VideoCodecsExpression},
     {"application/x-mpegurl", kMP4VideoCodecsExpression},
-    {"application/vnd.apple.mpegurl", kMP4VideoCodecsExpression}};
+    {"application/vnd.apple.mpegurl", kMP4VideoCodecsExpression},
+    { "video/x-matroska", "avc1.42E00A,avc1.4D400A,avc1.64000A," "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5" ",opus,vorbis,vp8,vp8.0,vp9,vp9.0,ac3,dts,mp3,mp2" },
+    { "audio/x-matroska", "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5" ",opus,vorbis,ac3,dts,mp3,mp2" },
+    { "video/x-msvideo", "avc1.42E00A,avc1.4D400A,avc1.64000A," "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5" ",mp4v.20.9,mp4v.20.240,ac3,dts,mp3,mp2"}};
 
 struct CodecIDMappings {
   const char* const codec_id;
@@ -579,7 +597,12 @@ static const CodecIDMappings kUnambiguou
     {"vp8.0", MimeUtil::VP8},
     {"vp9", MimeUtil::VP9},
     {"vp9.0", MimeUtil::VP9},
-    {"theora", MimeUtil::THEORA}};
+    {"theora", MimeUtil::THEORA},
+    {"ac3", MimeUtil::AC3},
+    {"dts", MimeUtil::DTS},
+    {"mp2", MimeUtil::MP2},
+    {"mp4v.20.9", MimeUtil::MPEG4_SP},
+    {"mp4v.20.240", MimeUtil::MPEG4_ASP}};
 
 // List of codec IDs that are ambiguous and don't provide
 // enough information to determine the codec and profile.
@@ -1034,6 +1057,7 @@ bool MimeUtil::IsCodecSupported(Codec co
 bool MimeUtil::IsCodecProprietary(Codec codec) const {
   switch (codec) {
     case INVALID_CODEC:
+    case MP2:
     case MP3:
     case MPEG2_AAC_LC:
     case MPEG2_AAC_MAIN:
@@ -1044,6 +1068,10 @@ bool MimeUtil::IsCodecProprietary(Codec
     case H264_BASELINE:
     case H264_MAIN:
     case H264_HIGH:
+    case AC3:
+    case DTS:
+    case MPEG4_SP:
+    case MPEG4_ASP:
       return true;
 
     case PCM:
@@ -1206,6 +1234,7 @@ static const char* const kStandardAudioT
   "audio/vorbis",
   "audio/wav",
   "audio/webm",
+  "audio/x-matroska",
   "audio/x-m4a",
   "audio/x-ms-wma",
   "audio/vnd.rn-realaudio",
@@ -1223,6 +1252,7 @@ static const char* const kStandardVideoT
   "video/webm",
   "video/x-dv",
   "video/x-m4v",
+  "video/x-matroska",
   "video/x-mpeg",
   "video/x-ms-asf",
   "video/x-ms-wmv"