OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/common/gpu/media/vaapi_video_encode_accelerator.h" | 5 #include "content/common/gpu/media/vaapi_video_encode_accelerator.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/message_loop/message_loop_proxy.h" | 10 #include "base/message_loop/message_loop_proxy.h" |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 }; | 97 }; |
98 | 98 |
99 struct VaapiVideoEncodeAccelerator::BitstreamBufferRef { | 99 struct VaapiVideoEncodeAccelerator::BitstreamBufferRef { |
100 BitstreamBufferRef(int32 id, scoped_ptr<base::SharedMemory> shm, size_t size) | 100 BitstreamBufferRef(int32 id, scoped_ptr<base::SharedMemory> shm, size_t size) |
101 : id(id), shm(shm.Pass()), size(size) {} | 101 : id(id), shm(shm.Pass()), size(size) {} |
102 const int32 id; | 102 const int32 id; |
103 const scoped_ptr<base::SharedMemory> shm; | 103 const scoped_ptr<base::SharedMemory> shm; |
104 const size_t size; | 104 const size_t size; |
105 }; | 105 }; |
106 | 106 |
107 // static | |
108 std::vector<media::VideoEncodeAccelerator::SupportedProfile> | 107 std::vector<media::VideoEncodeAccelerator::SupportedProfile> |
109 VaapiVideoEncodeAccelerator::GetSupportedProfiles() { | 108 VaapiVideoEncodeAccelerator::GetSupportedProfiles() { |
110 std::vector<SupportedProfile> profiles; | 109 std::vector<SupportedProfile> profiles; |
111 | 110 |
112 const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); | 111 const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); |
113 if (cmd_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode)) | 112 if (cmd_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode)) |
114 return profiles; | 113 return profiles; |
115 | 114 |
116 SupportedProfile profile; | 115 SupportedProfile profile; |
117 profile.profile = media::H264PROFILE_MAIN; | 116 profile.profile = media::H264PROFILE_MAIN; |
118 profile.max_resolution.SetSize(1920, 1088); | 117 profile.max_resolution.SetSize(1920, 1088); |
119 profile.max_framerate.numerator = kDefaultFramerate; | 118 profile.max_framerate_numerator = kDefaultFramerate; |
120 profile.max_framerate.denominator = 1; | 119 profile.max_framerate_denominator = 1; |
121 profiles.push_back(profile); | 120 profiles.push_back(profile); |
122 | 121 |
123 // This is actually only constrained (see crbug.com/345569). | 122 // This is actually only constrained (see crbug.com/345569). |
124 profile.profile = media::H264PROFILE_BASELINE; | 123 profile.profile = media::H264PROFILE_BASELINE; |
125 profiles.push_back(profile); | 124 profiles.push_back(profile); |
126 | 125 |
127 profile.profile = media::H264PROFILE_HIGH; | 126 profile.profile = media::H264PROFILE_HIGH; |
128 profiles.push_back(profile); | 127 profiles.push_back(profile); |
129 | 128 |
130 return profiles; | 129 return profiles; |
(...skipping 931 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1062 } | 1061 } |
1063 | 1062 |
1064 VaapiVideoEncodeAccelerator::EncodeJob::EncodeJob() | 1063 VaapiVideoEncodeAccelerator::EncodeJob::EncodeJob() |
1065 : coded_buffer(VA_INVALID_ID), keyframe(false) { | 1064 : coded_buffer(VA_INVALID_ID), keyframe(false) { |
1066 } | 1065 } |
1067 | 1066 |
1068 VaapiVideoEncodeAccelerator::EncodeJob::~EncodeJob() { | 1067 VaapiVideoEncodeAccelerator::EncodeJob::~EncodeJob() { |
1069 } | 1068 } |
1070 | 1069 |
1071 } // namespace content | 1070 } // namespace content |
OLD | NEW |