Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(477)

Side by Side Diff: content/renderer/pepper/pepper_video_encoder_host.cc

Issue 1769593002: Add 4 VP9 profiles to the media::VideoCodecProfile enum. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@hevc-codec-7
Patch Set: Rebase to ToT Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/pepper/pepper_video_encoder_host.h" 5 #include "content/renderer/pepper/pepper_video_encoder_host.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/memory/shared_memory.h" 10 #include "base/memory/shared_memory.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 case PP_VIDEOPROFILE_H264SCALABLEBASELINE: 72 case PP_VIDEOPROFILE_H264SCALABLEBASELINE:
73 return media::H264PROFILE_SCALABLEBASELINE; 73 return media::H264PROFILE_SCALABLEBASELINE;
74 case PP_VIDEOPROFILE_H264SCALABLEHIGH: 74 case PP_VIDEOPROFILE_H264SCALABLEHIGH:
75 return media::H264PROFILE_SCALABLEHIGH; 75 return media::H264PROFILE_SCALABLEHIGH;
76 case PP_VIDEOPROFILE_H264STEREOHIGH: 76 case PP_VIDEOPROFILE_H264STEREOHIGH:
77 return media::H264PROFILE_STEREOHIGH; 77 return media::H264PROFILE_STEREOHIGH;
78 case PP_VIDEOPROFILE_H264MULTIVIEWHIGH: 78 case PP_VIDEOPROFILE_H264MULTIVIEWHIGH:
79 return media::H264PROFILE_MULTIVIEWHIGH; 79 return media::H264PROFILE_MULTIVIEWHIGH;
80 case PP_VIDEOPROFILE_VP8_ANY: 80 case PP_VIDEOPROFILE_VP8_ANY:
81 return media::VP8PROFILE_ANY; 81 return media::VP8PROFILE_ANY;
82 case PP_VIDEOPROFILE_VP9_ANY: 82 case PP_VIDEOPROFILE_VP9_PROFILE0:
83 return media::VP9PROFILE_ANY; 83 return media::VP9PROFILE_PROFILE0;
84 case PP_VIDEOPROFILE_VP9_PROFILE1:
85 return media::VP9PROFILE_PROFILE1;
86 case PP_VIDEOPROFILE_VP9_PROFILE2:
87 return media::VP9PROFILE_PROFILE2;
88 case PP_VIDEOPROFILE_VP9_PROFILE3:
89 return media::VP9PROFILE_PROFILE3;
84 // No default case, to catch unhandled PP_VideoProfile values. 90 // No default case, to catch unhandled PP_VideoProfile values.
85 } 91 }
86 return media::VIDEO_CODEC_PROFILE_UNKNOWN; 92 return media::VIDEO_CODEC_PROFILE_UNKNOWN;
87 } 93 }
88 94
89 PP_VideoProfile PP_FromMediaVideoProfile(media::VideoCodecProfile profile) { 95 PP_VideoProfile PP_FromMediaVideoProfile(media::VideoCodecProfile profile) {
90 switch (profile) { 96 switch (profile) {
91 case media::H264PROFILE_BASELINE: 97 case media::H264PROFILE_BASELINE:
92 return PP_VIDEOPROFILE_H264BASELINE; 98 return PP_VIDEOPROFILE_H264BASELINE;
93 case media::H264PROFILE_MAIN: 99 case media::H264PROFILE_MAIN:
(...skipping 11 matching lines...) Expand all
105 case media::H264PROFILE_SCALABLEBASELINE: 111 case media::H264PROFILE_SCALABLEBASELINE:
106 return PP_VIDEOPROFILE_H264SCALABLEBASELINE; 112 return PP_VIDEOPROFILE_H264SCALABLEBASELINE;
107 case media::H264PROFILE_SCALABLEHIGH: 113 case media::H264PROFILE_SCALABLEHIGH:
108 return PP_VIDEOPROFILE_H264SCALABLEHIGH; 114 return PP_VIDEOPROFILE_H264SCALABLEHIGH;
109 case media::H264PROFILE_STEREOHIGH: 115 case media::H264PROFILE_STEREOHIGH:
110 return PP_VIDEOPROFILE_H264STEREOHIGH; 116 return PP_VIDEOPROFILE_H264STEREOHIGH;
111 case media::H264PROFILE_MULTIVIEWHIGH: 117 case media::H264PROFILE_MULTIVIEWHIGH:
112 return PP_VIDEOPROFILE_H264MULTIVIEWHIGH; 118 return PP_VIDEOPROFILE_H264MULTIVIEWHIGH;
113 case media::VP8PROFILE_ANY: 119 case media::VP8PROFILE_ANY:
114 return PP_VIDEOPROFILE_VP8_ANY; 120 return PP_VIDEOPROFILE_VP8_ANY;
115 case media::VP9PROFILE_ANY: 121 case media::VP9PROFILE_PROFILE0:
116 return PP_VIDEOPROFILE_VP9_ANY; 122 return PP_VIDEOPROFILE_VP9_PROFILE0;
123 case media::VP9PROFILE_PROFILE1:
124 return PP_VIDEOPROFILE_VP9_PROFILE1;
125 case media::VP9PROFILE_PROFILE2:
126 return PP_VIDEOPROFILE_VP9_PROFILE2;
127 case media::VP9PROFILE_PROFILE3:
128 return PP_VIDEOPROFILE_VP9_PROFILE3;
117 default: 129 default:
118 NOTREACHED(); 130 NOTREACHED();
119 return static_cast<PP_VideoProfile>(-1); 131 return static_cast<PP_VideoProfile>(-1);
120 } 132 }
121 } 133 }
122 134
123 media::VideoPixelFormat PP_ToMediaVideoFormat(PP_VideoFrame_Format format) { 135 media::VideoPixelFormat PP_ToMediaVideoFormat(PP_VideoFrame_Format format) {
124 switch (format) { 136 switch (format) {
125 case PP_VIDEOFRAME_FORMAT_UNKNOWN: 137 case PP_VIDEOFRAME_FORMAT_UNKNOWN:
126 return media::PIXEL_FORMAT_UNKNOWN; 138 return media::PIXEL_FORMAT_UNKNOWN;
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
660 } 672 }
661 673
662 uint8_t* PepperVideoEncoderHost::ShmHandleToAddress(int32_t buffer_id) { 674 uint8_t* PepperVideoEncoderHost::ShmHandleToAddress(int32_t buffer_id) {
663 DCHECK(RenderThreadImpl::current()); 675 DCHECK(RenderThreadImpl::current());
664 DCHECK_GE(buffer_id, 0); 676 DCHECK_GE(buffer_id, 0);
665 DCHECK_LT(buffer_id, static_cast<int32_t>(shm_buffers_.size())); 677 DCHECK_LT(buffer_id, static_cast<int32_t>(shm_buffers_.size()));
666 return static_cast<uint8_t*>(shm_buffers_[buffer_id]->shm->memory()); 678 return static_cast<uint8_t*>(shm_buffers_[buffer_id]->shm->memory());
667 } 679 }
668 680
669 } // namespace content 681 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698