Camera: Remove code for feature_combination_query

Flag: EXEMPT removing feature_combination_query
Test: Build
Bug: 365555185
Change-Id: I8529de60cebca5ba7c701581f49b9ea26a5676df
This commit is contained in:
Shuzhen Wang
2024-09-09 10:04:26 -07:00
parent db3edfa7c3
commit 1599d4be65
2 changed files with 79 additions and 94 deletions

View File

@@ -288,77 +288,70 @@ TEST_P(CameraAidlTest, getCameraCharacteristics) {
}
TEST_P(CameraAidlTest, getSessionCharacteristics) {
if (flags::feature_combination_query()) {
std::vector<std::string> cameraDeviceNames = getCameraDeviceNames(mProvider);
std::vector<std::string> cameraDeviceNames = getCameraDeviceNames(mProvider);
for (const auto& name : cameraDeviceNames) {
std::shared_ptr<ICameraDevice> device;
ALOGI("getSessionCharacteristics: Testing camera device %s", name.c_str());
ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device);
ALOGI("getCameraDeviceInterface returns: %d:%d", ret.getExceptionCode(),
ret.getServiceSpecificError());
ASSERT_TRUE(ret.isOk());
ASSERT_NE(device, nullptr);
for (const auto& name : cameraDeviceNames) {
std::shared_ptr<ICameraDevice> device;
ALOGI("getSessionCharacteristics: Testing camera device %s", name.c_str());
ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device);
ALOGI("getCameraDeviceInterface returns: %d:%d", ret.getExceptionCode(),
ret.getServiceSpecificError());
ASSERT_TRUE(ret.isOk());
ASSERT_NE(device, nullptr);
int32_t interfaceVersion = -1;
ret = device->getInterfaceVersion(&interfaceVersion);
ASSERT_TRUE(ret.isOk());
bool supportSessionCharacteristics =
(interfaceVersion >= CAMERA_DEVICE_API_MINOR_VERSION_3);
if (!supportSessionCharacteristics) {
continue;
}
CameraMetadata meta;
openEmptyDeviceSession(name, mProvider, &mSession /*out*/, &meta /*out*/,
&device /*out*/);
std::vector<AvailableStream> outputStreams;
camera_metadata_t* staticMeta =
reinterpret_cast<camera_metadata_t*>(meta.metadata.data());
outputStreams.clear();
ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta, outputStreams));
ASSERT_NE(0u, outputStreams.size());
AvailableStream sampleStream = outputStreams[0];
int32_t streamId = 0;
Stream stream = {streamId,
StreamType::OUTPUT,
sampleStream.width,
sampleStream.height,
static_cast<PixelFormat>(sampleStream.format),
static_cast<aidl::android::hardware::graphics::common::BufferUsage>(
GRALLOC1_CONSUMER_USAGE_VIDEO_ENCODER),
Dataspace::UNKNOWN,
StreamRotation::ROTATION_0,
std::string(),
/*bufferSize*/ 0,
/*groupId*/ -1,
{SensorPixelMode::ANDROID_SENSOR_PIXEL_MODE_DEFAULT},
RequestAvailableDynamicRangeProfilesMap::
ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP_STANDARD};
std::vector<Stream> streams = {stream};
StreamConfiguration config;
createStreamConfiguration(streams, StreamConfigurationMode::NORMAL_MODE, &config);
CameraMetadata camera_chars;
ret = device->getCameraCharacteristics(&camera_chars);
ASSERT_TRUE(ret.isOk());
CameraMetadata session_chars;
ret = device->getSessionCharacteristics(config, &session_chars);
ASSERT_TRUE(ret.isOk());
verifySessionCharacteristics(session_chars, camera_chars);
ret = mSession->close();
mSession = nullptr;
ASSERT_TRUE(ret.isOk());
int32_t interfaceVersion = -1;
ret = device->getInterfaceVersion(&interfaceVersion);
ASSERT_TRUE(ret.isOk());
bool supportSessionCharacteristics =
(interfaceVersion >= CAMERA_DEVICE_API_MINOR_VERSION_3);
if (!supportSessionCharacteristics) {
continue;
}
} else {
ALOGI("getSessionCharacteristics: Test skipped.\n");
GTEST_SKIP();
CameraMetadata meta;
openEmptyDeviceSession(name, mProvider, &mSession /*out*/, &meta /*out*/, &device /*out*/);
std::vector<AvailableStream> outputStreams;
camera_metadata_t* staticMeta = reinterpret_cast<camera_metadata_t*>(meta.metadata.data());
outputStreams.clear();
ASSERT_EQ(Status::OK, getAvailableOutputStreams(staticMeta, outputStreams));
ASSERT_NE(0u, outputStreams.size());
AvailableStream sampleStream = outputStreams[0];
int32_t streamId = 0;
Stream stream = {streamId,
StreamType::OUTPUT,
sampleStream.width,
sampleStream.height,
static_cast<PixelFormat>(sampleStream.format),
static_cast<aidl::android::hardware::graphics::common::BufferUsage>(
GRALLOC1_CONSUMER_USAGE_VIDEO_ENCODER),
Dataspace::UNKNOWN,
StreamRotation::ROTATION_0,
std::string(),
/*bufferSize*/ 0,
/*groupId*/ -1,
{SensorPixelMode::ANDROID_SENSOR_PIXEL_MODE_DEFAULT},
RequestAvailableDynamicRangeProfilesMap::
ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP_STANDARD};
std::vector<Stream> streams = {stream};
StreamConfiguration config;
createStreamConfiguration(streams, StreamConfigurationMode::NORMAL_MODE, &config);
CameraMetadata camera_chars;
ret = device->getCameraCharacteristics(&camera_chars);
ASSERT_TRUE(ret.isOk());
CameraMetadata session_chars;
ret = device->getSessionCharacteristics(config, &session_chars);
ASSERT_TRUE(ret.isOk());
verifySessionCharacteristics(session_chars, camera_chars);
ret = mSession->close();
mSession = nullptr;
ASSERT_TRUE(ret.isOk());
}
}
@@ -615,19 +608,17 @@ TEST_P(CameraAidlTest, constructDefaultRequestSettings) {
ASSERT_EQ(0u, rawMetadata.metadata.size());
}
if (flags::feature_combination_query()) {
if (supportFeatureCombinationQuery) {
CameraMetadata rawMetadata2;
ndk::ScopedAStatus ret2 =
device->constructDefaultRequestSettings(reqTemplate, &rawMetadata2);
if (supportFeatureCombinationQuery) {
CameraMetadata rawMetadata2;
ndk::ScopedAStatus ret2 =
device->constructDefaultRequestSettings(reqTemplate, &rawMetadata2);
ASSERT_EQ(ret.isOk(), ret2.isOk());
ASSERT_EQ(ret.getStatus(), ret2.getStatus());
ASSERT_EQ(ret.isOk(), ret2.isOk());
ASSERT_EQ(ret.getStatus(), ret2.getStatus());
ASSERT_EQ(rawMetadata.metadata.size(), rawMetadata2.metadata.size());
if (ret2.isOk()) {
validateDefaultRequestMetadata(reqTemplate, rawMetadata2);
}
ASSERT_EQ(rawMetadata.metadata.size(), rawMetadata2.metadata.size());
if (ret2.isOk()) {
validateDefaultRequestMetadata(reqTemplate, rawMetadata2);
}
}
}

View File

@@ -1920,28 +1920,22 @@ void CameraAidlTest::verifyStreamCombination(const std::shared_ptr<ICameraDevice
ASSERT_TRUE(ret.isOk());
ASSERT_EQ(expectedStatus, streamCombinationSupported);
if (flags::feature_combination_query()) {
int32_t interfaceVersion;
ret = device->getInterfaceVersion(&interfaceVersion);
int32_t interfaceVersion;
ret = device->getInterfaceVersion(&interfaceVersion);
ASSERT_TRUE(ret.isOk());
bool supportFeatureCombinationQuery =
(interfaceVersion >= CAMERA_DEVICE_API_MINOR_VERSION_3);
if (supportFeatureCombinationQuery) {
ret = device->isStreamCombinationWithSettingsSupported(config,
&streamCombinationSupported);
ASSERT_TRUE(ret.isOk());
bool supportFeatureCombinationQuery =
(interfaceVersion >= CAMERA_DEVICE_API_MINOR_VERSION_3);
if (supportFeatureCombinationQuery) {
ret = device->isStreamCombinationWithSettingsSupported(config,
&streamCombinationSupported);
ASSERT_TRUE(ret.isOk());
ASSERT_EQ(expectedStatus, streamCombinationSupported);
}
ASSERT_EQ(expectedStatus, streamCombinationSupported);
}
}
}
void CameraAidlTest::verifySessionCharacteristics(const CameraMetadata& session_chars,
const CameraMetadata& camera_chars) {
if (!flags::feature_combination_query()) {
return;
}
const camera_metadata_t* session_metadata =
reinterpret_cast<const camera_metadata_t*>(session_chars.metadata.data());