diff options
Diffstat (limited to 'devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp')
-rw-r--r-- | devices/EmulatedCamera/hwl/EmulatedCameraProviderHWLImpl.cpp | 14 |
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; } } |