By Date: <-- -->
By Thread: <-- -->

RFC: V4L2 MPEG Encoding API: Part 1 (second version)



There's one point that doesn't seem to have got much attention yet: clear separation of API calls. Right now, the separation between video formats, streaming parameters, and certain controls is rather blurry, especially from the point of view of digital devices.

If you look at changes of image dimension, frame rate, pan/tilt, digital/optical zoom, JPEG compression parameters, etc. you can see that some of them basically require restarting the video stream (to adapt buffer size or count), whereas others are completely transparent to the application.

I'm afraid that these new extended controls might further blur the boundaries between "streaming parameters" (opaque) and "control parameters" (transparent). That could make it increasingly hard for application and driver developers to correctly adapt to such changes. (At the moment, even the list of V4L applications that can adjust the image size on the fly, is pretty short.)

I have no clean solution to this problem at this point, especially with borderline cases like JPEG compression parameters that _can_ be transparent, but don't necessarily have to be. But if we add such new ioctls, I think it's worth taking this aspect into consideration.

Cheers,
Martin

--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request (at) redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list