summaryrefslogtreecommitdiffstats
path: root/media/base/video_decoder_config.h
diff options
context:
space:
mode:
authorfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-10 01:03:23 +0000
committerfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-10 01:03:23 +0000
commit907bc6fb0e9db6b31eef1d3403b116e43ea7bec9 (patch)
treeeb41d143dab8fca0cb5c55296125160462617833 /media/base/video_decoder_config.h
parentbb12d853e4af985379bd56ba3025ec0d2b087148 (diff)
downloadchromium_src-907bc6fb0e9db6b31eef1d3403b116e43ea7bec9.zip
chromium_src-907bc6fb0e9db6b31eef1d3403b116e43ea7bec9.tar.gz
chromium_src-907bc6fb0e9db6b31eef1d3403b116e43ea7bec9.tar.bz2
Revert 113895 - <video> decode in hardware!
This uses the GpuVideoDecodeAccelerator machinery (already written to enable ppapi to take advantage of OpenMAX HW where available) to decode <video> data. This increases idle CPU from 20% to 45% on one particularly large (internal) test video (red0.mp4), on an ARM crosbook. HW decode is done on a best-effort basis; if the GPU code doesn't know how to deal with a codec/profile we still fall back to ffmpeg for decode. Because the vast majority of chrome installs will be on HW with no video decode support (yet) we only attempt HW video decode on platforms we know have a shot at it. BUG=104579 TEST=manual testing w/ video test matrix, trybots. Review URL: http://codereview.chromium.org/8686010 TBR=fischman@chromium.org Review URL: http://codereview.chromium.org/8897022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113908 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/video_decoder_config.h')
-rw-r--r--media/base/video_decoder_config.h32
1 files changed, 1 insertions, 31 deletions
diff --git a/media/base/video_decoder_config.h b/media/base/video_decoder_config.h
index 28b1106..b02bee8 100644
--- a/media/base/video_decoder_config.h
+++ b/media/base/video_decoder_config.h
@@ -14,7 +14,7 @@
namespace media {
-enum MEDIA_EXPORT VideoCodec {
+enum VideoCodec {
// These values are histogrammed over time; do not change their ordinal
// values. When deleting a codec replace it with a dummy value; when adding a
// codec, do so at the bottom (and update kVideoCodecMax).
@@ -33,28 +33,6 @@ enum MEDIA_EXPORT VideoCodec {
kVideoCodecMax = kCodecVP8 // Must equal the last "real" codec above.
};
-// Video stream profile. This *must* match PP_VideoDecoder_Profile.
-enum MEDIA_EXPORT VideoCodecProfile {
- // Keep the values in this enum unique, as they imply format (h.264 vs. VP8,
- // for example), and keep the values for a particular format grouped
- // together for clarity.
- VIDEO_CODEC_PROFILE_UNKNOWN = -1,
- H264PROFILE_MIN = 0,
- H264PROFILE_BASELINE = H264PROFILE_MIN,
- H264PROFILE_MAIN,
- H264PROFILE_EXTENDED,
- H264PROFILE_HIGH,
- H264PROFILE_HIGH10PROFILE,
- H264PROFILE_HIGH422PROFILE,
- H264PROFILE_HIGH444PREDICTIVEPROFILE,
- H264PROFILE_SCALABLEBASELINE,
- H264PROFILE_SCALABLEHIGH,
- H264PROFILE_STEREOHIGH,
- H264PROFILE_MULTIVIEWHIGH,
- H264PROFILE_MAX = H264PROFILE_MULTIVIEWHIGH,
- VIDEO_CODEC_PROFILE_MAX = H264PROFILE_MAX,
-};
-
class MEDIA_EXPORT VideoDecoderConfig {
public:
// Constructs an uninitialized object. Clients should call Initialize() with
@@ -64,7 +42,6 @@ class MEDIA_EXPORT VideoDecoderConfig {
// Constructs an initialized object. It is acceptable to pass in NULL for
// |extra_data|, otherwise the memory is copied.
VideoDecoderConfig(VideoCodec codec,
- VideoCodecProfile profile,
VideoFrame::Format format,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
@@ -76,7 +53,6 @@ class MEDIA_EXPORT VideoDecoderConfig {
// Resets the internal state of this object.
void Initialize(VideoCodec codec,
- VideoCodecProfile profile,
VideoFrame::Format format,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
@@ -88,12 +64,7 @@ class MEDIA_EXPORT VideoDecoderConfig {
// otherwise.
bool IsValidConfig() const;
- // Returns a human-readable string describing |*this|. For debugging & test
- // output only.
- std::string AsHumanReadableString() const;
-
VideoCodec codec() const;
- VideoCodecProfile profile() const;
// Video format used to determine YUV buffer sizes.
VideoFrame::Format format() const;
@@ -131,7 +102,6 @@ class MEDIA_EXPORT VideoDecoderConfig {
private:
VideoCodec codec_;
- VideoCodecProfile profile_;
VideoFrame::Format format_;