Hello all,

   I'm currently starting to work with v4l. I'm not sure if this is
the right place to post this question, but as this group has relation
with v4l, I'll try also here.

   The question is about digital zoom capabilities. I'm a little
confused about how to implement crop related ioctls in a v4l2 driver.

   First of all, what is the common application flow to probe zoom
capabilities from
a v4l2 driver? What is the common application flow to get and set current zoom
settings from a v4l2 driver? AFAIU, applications must combine
VIDIOC_CROPCAP, VIDIOC_[S,G]_CROP with VIDIOC_[S,G]_FMT.
What application is a good example for this issue?

   Suppose a device which supports following modes:
- mode 1 (640, 480),
- mode 2 (320, 240) from window (0,0) to (640, 480) and
- mode 3 (320, 240) from  window (161, 121) to (480, 360)

   What is the best way to implement this support? I can see at least
one option here: export the bounds and defrect for cropcap as 640x480.
When applications request formats, return to them what best fits
between 640x480 or 320x240. And then, when applications request crop
window modification, the behaviour would be, if they request a crop
window equal to defrect, the device is changed to mode 1 or 2
(depending on the current format).  however if the crop window
requested is smaller then defrect, the mode 3 is configured. Is this
behaviour expected or I misunderstood something?


Cheers,

--
Eduardo Bezerra Valentin
_______________________________________________
Linux-uvc-devel mailing list
Linux-uvc-devel@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to