Re: [v4l-utils PATCH/RFC v5 00/14] Add a plugin for Exynos4 camera

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/08/2015 11:14 AM, Jacek Anaszewski wrote:
> Hi Hans,
> 
> It got stuck on this version. I have some slight improvements locally
> but haven't sent them as there hasn't been any comment to this so far.
> AFAIR Sakari had some doubts about handling multiple pipelines within
> one media controller. In this approach only one pipeline is allowed.
> There has to be a new IOCTL added for locking pipelines, to handle this
> IIRC.

Sakari, is this ioctl really needed or something that can be added later?

> Besides there are some v4l-utils build system dependency issues to
> solve, I mentioned below in the cover letter.

If I remember correctly the libmediactl API may still change, which is
why it isn't in lib. So statically linking it isn't a bad idea at the
moment. Laurent, can you confirm this?

Is there anything else that blocks this patch series?

Regards,

	Hans

> 
> On 06/08/2015 10:27 AM, Hans Verkuil wrote:
>> Hi Jacek,
>>
>> What is the status of this? It would be really useful to have a working plugin
>> as an example in v4l-utils.
>>
>> Regards,
>>
>> 	Hans
>>
>> On 02/26/2015 04:59 PM, Jacek Anaszewski wrote:
>>> This is a fifth version of the patch series adding a plugin for the
>>> Exynos4 camera.
>>>
>>> Temporarily the plugin doesn't link against libmediactl, but
>>> has its sources compiled in. Currently utils are built after
>>> the plugins, but libv4l-exynos4-camera plugin depends on the utils.
>>> In order to link the plugin against libmediactl the build system
>>> would have to be modified.
>>>
>>> ================
>>> Changes from v4:
>>> ================
>>>
>>> - removed some redundant functions for traversing media device graph
>>>    and switched over to using existing ones
>>> - avoided accessing struct v4l2_subdev from libmediactl
>>> - applied various improvements
>>>
>>> ================
>>> Changes from v3:
>>> ================
>>>
>>> - added struct v4l2_subdev and put entity fd and
>>>    information about supported controls to it
>>> - improved functions for negotiating and setting
>>>    pipeline format by using available libv4lsubdev API
>>> - applied minor improvements and cleanups
>>>
>>> ================
>>> Changes from v2:
>>> ================
>>>
>>> - switched to using mediatext library for parsing
>>>    the media device configuration
>>> - extended libmediactl
>>> - switched to using libmediactl
>>>
>>> ================
>>> Changes from v1:
>>> ================
>>>
>>> - removed redundant mbus code negotiation
>>> - split the parser, media device helpers and ioctl wrappers
>>>    to the separate modules
>>> - added mechanism for querying extended controls
>>> - applied various fixes and modifications
>>>
>>> The plugin was tested on linux-next_20150223 with patches for
>>> exynos4-is that fix failing open ioctl when a sensor sub-device is not
>>> linked [1] [2] [3].
>>>
>>> The plugin expects a configuration file:
>>> /var/lib/libv4l/exynos4_capture_conf
>>>
>>> Exemplary configuration file:
>>>
>>> ==========================================
>>>
>>> link-conf "s5p-mipi-csis.0":1 -> "FIMC.0":0 [1]
>>> ctrl-to-subdev-conf 0x0098091f -> "fimc.0.capture"
>>> ctrl-to-subdev-conf 0x00980902 -> "S5C73M3"
>>> ctrl-to-subdev-conf 0x00980922 -> "fimc.0.capture"
>>> ctrl-to-subdev-conf 0x009a0914 -> "S5C73M3"
>>>
>>> ==========================================
>>>
>>> With this settings the plugin can be tested on the exynos4412-trats2 board
>>> using following gstreamer pipeline:
>>>
>>> gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=960,height=720 ! fbdevsink
>>>
>>> Thanks,
>>> Jacek Anaszewski
>>>
>>> [1] https://patchwork.linuxtv.org/patch/26366/
>>> [2] https://patchwork.linuxtv.org/patch/26367/
>>> [3] https://patchwork.linuxtv.org/patch/26368/
>>>
>>> Jacek Anaszewski (13):
>>>    mediactl: Introduce v4l2_subdev structure
>>>    mediactl: Add support for v4l2-ctrl-redir config
>>>    mediatext: Add library
>>>    mediactl: Add media device graph helpers
>>>    mediactl: Add media_device creation helpers
>>>    mediactl: libv4l2subdev: add VYUY8_2X8 mbus code
>>>    mediactl: Add support for media device pipelines
>>>    mediactl: libv4l2subdev: add support for comparing mbus formats
>>>    mediactl: libv4l2subdev: add support for setting pipeline format
>>>    mediactl: libv4l2subdev: add get_pipeline_entity_by_cid function
>>>    mediactl: Add media device ioctl API
>>>    mediactl: libv4l2subdev: Enable opening/closing pipelines
>>>    Add a libv4l plugin for Exynos4 camera
>>>
>>> Sakari Ailus (1):
>>>    mediactl: Separate entity and pad parsing
>>>
>>>   configure.ac                                      |    1 +
>>>   lib/Makefile.am                                   |    5 +
>>>   lib/libv4l-exynos4-camera/Makefile.am             |    7 +
>>>   lib/libv4l-exynos4-camera/libv4l-exynos4-camera.c |  586 +++++++++++++++++++++
>>>   utils/media-ctl/Makefile.am                       |   12 +-
>>>   utils/media-ctl/libmediactl.c                     |  271 +++++++++-
>>>   utils/media-ctl/libmediatext.pc.in                |   10 +
>>>   utils/media-ctl/libv4l2media_ioctl.c              |  369 +++++++++++++
>>>   utils/media-ctl/libv4l2media_ioctl.h              |   40 ++
>>>   utils/media-ctl/libv4l2subdev.c                   |  301 ++++++++++-
>>>   utils/media-ctl/mediactl-priv.h                   |   11 +-
>>>   utils/media-ctl/mediactl.h                        |  151 ++++++
>>>   utils/media-ctl/mediatext-test.c                  |   64 +++
>>>   utils/media-ctl/mediatext.c                       |  311 +++++++++++
>>>   utils/media-ctl/mediatext.h                       |   52 ++
>>>   utils/media-ctl/v4l2subdev.h                      |  131 +++++
>>>   16 files changed, 2292 insertions(+), 30 deletions(-)
>>>   create mode 100644 lib/libv4l-exynos4-camera/Makefile.am
>>>   create mode 100644 lib/libv4l-exynos4-camera/libv4l-exynos4-camera.c
>>>   create mode 100644 utils/media-ctl/libmediatext.pc.in
>>>   create mode 100644 utils/media-ctl/libv4l2media_ioctl.c
>>>   create mode 100644 utils/media-ctl/libv4l2media_ioctl.h
>>>   create mode 100644 utils/media-ctl/mediatext-test.c
>>>   create mode 100644 utils/media-ctl/mediatext.c
>>>   create mode 100644 utils/media-ctl/mediatext.h
>>>
>>
>>
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux