blob: f67a516dfa753a79f12a522393a95529ec4d395c [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//#define LOG_NDEBUG 0
#define LOG_TAG "V4L2ComponentCommon"
#include <v4l2_codec2/common/V4L2ComponentCommon.h>
#include <log/log.h>
namespace android {
const std::string V4L2ComponentName::kH264Encoder = "c2.v4l2.avc.encoder";
const std::string V4L2ComponentName::kVP8Encoder = "c2.v4l2.vp8.encoder";
const std::string V4L2ComponentName::kVP9Encoder = "c2.v4l2.vp9.encoder";
const std::string V4L2ComponentName::kH264Decoder = "c2.v4l2.avc.decoder";
const std::string V4L2ComponentName::kVP8Decoder = "c2.v4l2.vp8.decoder";
const std::string V4L2ComponentName::kVP9Decoder = "c2.v4l2.vp9.decoder";
const std::string V4L2ComponentName::kHEVCDecoder = "c2.v4l2.hevc.decoder";
const std::string V4L2ComponentName::kH264SecureDecoder = "c2.v4l2.avc.decoder.secure";
const std::string V4L2ComponentName::kVP8SecureDecoder = "c2.v4l2.vp8.decoder.secure";
const std::string V4L2ComponentName::kVP9SecureDecoder = "c2.v4l2.vp9.decoder.secure";
const std::string V4L2ComponentName::kHEVCSecureDecoder = "c2.v4l2.hevc.decoder.secure";
// static
bool V4L2ComponentName::isValid(const char* name) {
return name == kH264Encoder || name == kVP8Encoder || name == kVP9Encoder ||
name == kH264Decoder || name == kVP8Decoder || name == kVP9Decoder ||
name == kHEVCDecoder || name == kH264SecureDecoder || name == kVP8SecureDecoder ||
name == kVP9SecureDecoder || name == kHEVCSecureDecoder;
}
// static
bool V4L2ComponentName::isEncoder(const char* name) {
ALOG_ASSERT(isValid(name));
return name == kH264Encoder || name == kVP8Encoder || name == kVP9Encoder;
}
} // namespace android