V4L2 mini-summit Sep 2009

From OMAPpedia

Revision as of 17:10, 24 June 2010 by Saaguirre (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

IMPORTANT: THIS IS UNDER CONSTRUCTION.

This wikipage provides details about the Video4Linux mini-summit held at Linux Plumbers Conference 2009 in Portland, Oregon, USA on 23-25 Sep, 2009.

Contents

Atendees

Problems to Solve

This were the objects for discussion during the 3 days the summit was held:

SoC complex video devices handling

Recent System on Chip solutions have several internal video processing blocks, like:

Currently, V4L2 doesn’t offer a good API for this, and the functionality of current implementations is very limited to a set of fixed combinations.

Obviously, the need for an extension of v4l2 API for this arises.

Optimal buffer handling between video devices

Usually, a video buffer is shared between:

Two choices are currently available:

Therefore, the need for an optimal handling arises to have the best of both options above in a clean way.

Standard device to application events communication

Complex multimedia devices require an smart way to notify events to applications in order for application to know when they take place, and being able to control them optimally.

There wasn't a way to get this working meanwhile sticking to the v4l2 spec, therefore hacks were done by SoC drivers to overcome this.

Standard timings setting for video interfaces

There are video HW, like HDMI, that requires to negotiate timing settings between Transmitter and Receiver.

This is lacking on the v4l2 specification, and doing this negotiation is an actual need for many of this video interfaces.

Proposals

Media Controller

What is it?

It's a new Video4Linux device node that can be used to discover and modify the topology of the board and to give access to the low-level nodes (such as previewers, resizers, color space converters, etc.) that are part of the topology.

Why is needed?

Restrictions

Concepts

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox