1 /* 2 * Copyright (C) 2020 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #include "host/frontend/webrtc/lib/vp8only_encoder_factory.h" 18 19 namespace cuttlefish { 20 namespace webrtc_streaming { VP8OnlyEncoderFactory(std::unique_ptr<webrtc::VideoEncoderFactory> inner)21VP8OnlyEncoderFactory::VP8OnlyEncoderFactory( 22 std::unique_ptr<webrtc::VideoEncoderFactory> inner) 23 : inner_(std::move(inner)) {} 24 GetSupportedFormats() const25std::vector<webrtc::SdpVideoFormat> VP8OnlyEncoderFactory::GetSupportedFormats() 26 const { 27 std::vector<webrtc::SdpVideoFormat> ret; 28 // Allow only VP8 29 for (auto& format : inner_->GetSupportedFormats()) { 30 if (format.name == "VP8") { 31 ret.push_back(format); 32 } 33 } 34 return ret; 35 } 36 QueryVideoEncoder(const webrtc::SdpVideoFormat & format) const37webrtc::VideoEncoderFactory::CodecInfo VP8OnlyEncoderFactory::QueryVideoEncoder( 38 const webrtc::SdpVideoFormat& format) const { 39 return inner_->QueryVideoEncoder(format); 40 } 41 CreateVideoEncoder(const webrtc::SdpVideoFormat & format)42std::unique_ptr<webrtc::VideoEncoder> VP8OnlyEncoderFactory::CreateVideoEncoder( 43 const webrtc::SdpVideoFormat& format) { 44 return inner_->CreateVideoEncoder(format); 45 } 46 47 std::unique_ptr<webrtc::VideoEncoderFactory::EncoderSelectorInterface> GetEncoderSelector() const48VP8OnlyEncoderFactory::GetEncoderSelector() const { 49 return inner_->GetEncoderSelector(); 50 } 51 52 } // namespace webrtc_streaming 53 } // namespace cuttlefish 54