Re: RFC: Problem of using v4l2 spec with codec function

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

 



Hi Hans,

On Monday 29 November 2010 11:36:03 Hans Verkuil wrote:
> > On Monday 29 November 2010 08:34:06 Hans Verkuil wrote:

[snip]

> >> I *think* that what you are saying is that your hardware can have just a
> >> single 'm2m' video instance and so you want to allow the user to switch
> >> between the possible m2m functions (video encoder or decoder)
> >> dynamically.
> >> Is that right?
> >> 
> >> If so, then I think creating a so-called 'private' control for your
> >> hardware would be the best way to go. As an example of private controls
> >> search for the V4L2_CID_MPEG_CX2341X_BASE define in videodev2.h.
> > 
> > I would rely on formats. If the input format is YUV and the output format
> > is MPEG, it's pretty obvious that the hardware should be encoding. If the
> > formats are the other way around, then the hardware should be decoding.
> 
> That doesn't work in the general case. Instead of video encoding/decoding
> you may also have video effects, colorspace conversion or other fancy
> transformations.

For colorspace conversion we can rely on formats as well. For video effects 
controls will probably be needed.

> That said, in this particular case your suggestion would work.

If we think about the general case of a completely programmable system (think 
DSP), we will need a way to load the right firmware depending on the task at 
hand. The DSP would then become special purpose hardware, and V4L2 
applications won't need to care much about how to select the desired operating 
mode.

Whether the firmware selection/loading mechanism should be part of V4L2 or not 
is something to be discussed.

-- 
Regards,

Laurent Pinchart
--
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