[libcamera-devel,v3,5/7] libcamera: pipeline: uvcvideo: Set sensor model property

Message ID 20200813095726.3497193-6-niklas.soderlund@ragnatech.se
State Accepted
Headers show
Series
  • libcamera: Allow for user-friendly names in applications
Related show

Commit Message

Niklas Söderlund Aug. 13, 2020, 9:57 a.m. UTC
Set the sensor model property from the model reported in the media
graph.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
---
* Changes since v1
- Ensure model string only contains ASCII characters.
---
 src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Kieran Bingham Aug. 13, 2020, 3:44 p.m. UTC | #1
Hi Niklas,

On 13/08/2020 10:57, Niklas Söderlund wrote:
> Set the sensor model property from the model reported in the media
> graph.
> 
> Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> ---
> * Changes since v1
> - Ensure model string only contains ASCII characters.

Hrm, all of a sudden thinking toAscii would make sense here.
(and be shorter).

Replying back on the implementation.

> ---
>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
> index b12083a7a74dae54..25dee5fd99578148 100644
> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
> @@ -14,6 +14,7 @@
>  #include <libcamera/camera.h>
>  #include <libcamera/control_ids.h>
>  #include <libcamera/controls.h>
> +#include <libcamera/property_ids.h>
>  #include <libcamera/request.h>
>  #include <libcamera/stream.h>
>  
> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaDevice *media)
>  
>  	video_->bufferReady.connect(this, &UVCCameraData::bufferReady);
>  
> +	/* Initialize the camera properties. */
> +	properties_.set(properties::Model, utils::stripUnicode(media->model()));
> +
>  	/* Initialise the supported controls. */
>  	ControlInfoMap::Map ctrls;
>  
>

Patch

diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
index b12083a7a74dae54..25dee5fd99578148 100644
--- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp
@@ -14,6 +14,7 @@ 
 #include <libcamera/camera.h>
 #include <libcamera/control_ids.h>
 #include <libcamera/controls.h>
+#include <libcamera/property_ids.h>
 #include <libcamera/request.h>
 #include <libcamera/stream.h>
 
@@ -500,6 +501,9 @@  int UVCCameraData::init(MediaDevice *media)
 
 	video_->bufferReady.connect(this, &UVCCameraData::bufferReady);
 
+	/* Initialize the camera properties. */
+	properties_.set(properties::Model, utils::stripUnicode(media->model()));
+
 	/* Initialise the supported controls. */
 	ControlInfoMap::Map ctrls;