summaryrefslogtreecommitdiff
path: root/devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp')
-rw-r--r--devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp b/devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp
index 4e66325..fdb92cc 100644
--- a/devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp
+++ b/devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp
@@ -288,6 +288,9 @@ status_t EmulatedCameraProviderHwlImpl::IsConcurrentStreamCombinationSupported(
auto stream_configuration_map = std::make_unique<StreamConfigurationMap>(
*(static_metadata_[config.camera_id]));
+ auto stream_configuration_map_max_resolution =
+ std::make_unique<StreamConfigurationMap>(
+ *(static_metadata_[config.camera_id]), /*maxResolution*/ true);
LogicalCharacteristics sensor_chars;
status_t ret =
@@ -300,6 +303,7 @@ status_t EmulatedCameraProviderHwlImpl::IsConcurrentStreamCombinationSupported(
}
PhysicalStreamConfigurationMap physical_stream_configuration_map;
+ PhysicalStreamConfigurationMap physical_stream_configuration_map_max_resolution;
auto const& physicalCameraInfo = camera_id_map_[config.camera_id];
for (size_t i = 0; i < physicalCameraInfo.size(); i++) {
uint32_t physical_camera_id = physicalCameraInfo[i].second;
@@ -307,6 +311,11 @@ status_t EmulatedCameraProviderHwlImpl::IsConcurrentStreamCombinationSupported(
physical_camera_id, std::make_unique<StreamConfigurationMap>(
*(static_metadata_[physical_camera_id])));
+ physical_stream_configuration_map_max_resolution.emplace(
+ physical_camera_id,
+ std::make_unique<StreamConfigurationMap>(
+ *(static_metadata_[physical_camera_id]), /*maxResolution*/ true));
+
ret = GetSensorCharacteristics(static_metadata_[physical_camera_id].get(),
&sensor_chars[physical_camera_id]);
if (ret != OK) {
@@ -318,8 +327,9 @@ status_t EmulatedCameraProviderHwlImpl::IsConcurrentStreamCombinationSupported(
if (!EmulatedSensor::IsStreamCombinationSupported(
config.camera_id, config.stream_configuration,
- *stream_configuration_map, physical_stream_configuration_map,
- sensor_chars)) {
+ *stream_configuration_map, *stream_configuration_map_max_resolution,
+ physical_stream_configuration_map,
+ physical_stream_configuration_map_max_resolution, sensor_chars)) {
return OK;
}
}