[libcamera-devel] [PATCH v3 2/3] android: camera_stream: Support PostProcessorYuv in CameraStream

Umang Jain umang.jain at ideasonboard.com
Fri Sep 3 08:47:56 CEST 2021


Hi,

On 9/1/21 2:06 AM, Laurent Pinchart wrote:
> Hi Hiro,
>
> Thank you for the patch.
>
> On Tue, Aug 31, 2021 at 06:34:38PM +0900, Hirokazu Honda wrote:
>> CameraStream creates PostProcessorYuv if the destination format
>> is NV12.
>>
>> Signed-off-by: Hirokazu Honda <hiroh at chromium.org>
>> Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
>> ---
>>   src/android/camera_stream.cpp | 14 +++++++++++---
>>   1 file changed, 11 insertions(+), 3 deletions(-)
>>
>> diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp
>> index fb10bf06..49a2e336 100644
>> --- a/src/android/camera_stream.cpp
>> +++ b/src/android/camera_stream.cpp
>> @@ -9,13 +9,15 @@
>>   
>>   #include <sys/mman.h>
>>   
>> +#include <libcamera/formats.h>
>> +
>> +#include "jpeg/post_processor_jpeg.h"
>> +#include "yuv/post_processor_yuv.h"
>> +
>>   #include "camera_buffer.h"
>>   #include "camera_capabilities.h"
>>   #include "camera_device.h"
>>   #include "camera_metadata.h"
>> -#include "jpeg/post_processor_jpeg.h"
>> -
>> -#include <libcamera/formats.h>
>>   
>>   using namespace libcamera;
>>   
>> @@ -68,6 +70,12 @@ int CameraStream::configure()
>>   		StreamConfiguration output = configuration();
>>   		output.pixelFormat = outFormat;
>>   		switch (outFormat) {
>> +		case formats::NV12:
>> +			postProcessor_ = std::make_unique<PostProcessorYuv>();
>> +			output.size.width = camera3Stream_->width;
>> +			output.size.height = camera3Stream_->height;
> Should we set this unconditionally before the switch() ? It applies to
> MJPEG too, and even if it's not used today, I think it's useful to keep
> the output.size always valid for consistency.


this is my thought process as well. so +1

>
> As for 1/3, if you're fine with this change, I can make it when pushing.
>
> Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>


Reviewed-by: Umang Jain <umang.jain at ideasonboard.com>

>
>> +			break;
>> +
>>   		case formats::MJPEG:
>>   			postProcessor_ = std::make_unique<PostProcessorJpeg>(cameraDevice_);
>>   			break;


More information about the libcamera-devel mailing list