summaryrefslogtreecommitdiffstats
path: root/media/base
diff options
context:
space:
mode:
authortomfinegan@chromium.org <tomfinegan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-25 09:26:17 +0000
committertomfinegan@chromium.org <tomfinegan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-25 09:26:17 +0000
commitc54e1aa3c39589b125f9e1c0bddf0cbf9353fdd1 (patch)
treec8b8db2cbf571746cecfe27d8c06276d5a97f51c /media/base
parent063d9430289fdf33106cc23d7225391ec56c9e93 (diff)
downloadchromium_src-c54e1aa3c39589b125f9e1c0bddf0cbf9353fdd1.zip
chromium_src-c54e1aa3c39589b125f9e1c0bddf0cbf9353fdd1.tar.gz
chromium_src-c54e1aa3c39589b125f9e1c0bddf0cbf9353fdd1.tar.bz2
Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support.
This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default. New flag added: --enable-vp9-playback TBR=brettw,scherkus,xhwang BUG=166094 TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line. Review URL: https://chromiumcodereview.appspot.com/12045060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178799 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base')
-rw-r--r--media/base/media_switches.cc3
-rw-r--r--media/base/media_switches.h2
-rw-r--r--media/base/video_decoder_config.h8
3 files changed, 11 insertions, 2 deletions
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
index f2950e1..acd696e 100644
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -60,4 +60,7 @@ const char kEnableEncryptedMedia[] = "enable-encrypted-media";
// Enables Opus playback in media elements.
const char kEnableOpusPlayback[] = "enable-opus-playback";
+// Enables VP9 playback in media elements.
+const char kEnableVp9Playback[] = "enable-vp9-playback";
+
} // namespace switches
diff --git a/media/base/media_switches.h b/media/base/media_switches.h
index 21c5879..435ca36 100644
--- a/media/base/media_switches.h
+++ b/media/base/media_switches.h
@@ -47,6 +47,8 @@ MEDIA_EXPORT extern const char kEnableEncryptedMedia[];
MEDIA_EXPORT extern const char kEnableOpusPlayback[];
+MEDIA_EXPORT extern const char kEnableVp9Playback[];
+
} // namespace switches
#endif // MEDIA_BASE_MEDIA_SWITCHES_H_
diff --git a/media/base/video_decoder_config.h b/media/base/video_decoder_config.h
index b5ac792..958192c 100644
--- a/media/base/video_decoder_config.h
+++ b/media/base/video_decoder_config.h
@@ -27,12 +27,13 @@ enum VideoCodec {
kCodecMPEG4,
kCodecTheora,
kCodecVP8,
+ kCodecVP9,
// DO NOT ADD RANDOM VIDEO CODECS!
//
// The only acceptable time to add a new codec is if there is production code
// that uses said codec in the same CL.
- kVideoCodecMax = kCodecVP8 // Must equal the last "real" codec above.
+ kVideoCodecMax = kCodecVP9 // Must equal the last "real" codec above.
};
// Video stream profile. This *must* match PP_VideoDecoder_Profile.
@@ -58,7 +59,10 @@ enum VideoCodecProfile {
VP8PROFILE_MIN = 11,
VP8PROFILE_MAIN = VP8PROFILE_MIN,
VP8PROFILE_MAX = VP8PROFILE_MAIN,
- VIDEO_CODEC_PROFILE_MAX = VP8PROFILE_MAX,
+ VP9PROFILE_MIN = 12,
+ VP9PROFILE_MAIN = VP9PROFILE_MIN,
+ VP9PROFILE_MAX = VP9PROFILE_MAIN,
+ VIDEO_CODEC_PROFILE_MAX = VP9PROFILE_MAX,
};
class MEDIA_EXPORT VideoDecoderConfig {