[linux-dvb] Re: RFC: MPEG encoding and decoding V4L2 API additions

Mauro Carvalho Chehab mchehab at infradead.org
Fri Feb 16 13:53:23 CET 2007


On Sat, 3 Feb 2007, Manu Abraham wrote:

> On 2/3/07, Hans Verkuil <hverkuil at xs4all.nl> wrote:
>> On Saturday 03 February 2007 19:23, Manu Abraham wrote:
>> > On 2/3/07, Hans Verkuil <hverkuil at xs4all.nl> wrote:
>> > > On Saturday 03 February 2007 18:53, Manu Abraham wrote:
>> > > > On 2/3/07, Hans Verkuil <hverkuil at xs4all.nl> wrote:
>> > > > > RFC MPEG encoding and decoding V4L2 API additions
>> > > > > Version 0.1
>> > > >
>> > > > Wouldn't it be a bit overkill to add one more decoder API into
>> > > > the kernel ?
>> > >
>> > > "decoding V4L2 API additions". Not a new API, just additions to be
>> > > able to fully utilize MPEG hardware decoders. If you have good
>> > > alternatives that can be used instead of the proposed additions
>> > > I'll be glad to hear them.
>> >
>> > Currently, we have MPEG decoders using video.h/osd.h
>> > Almost all DVB capable applications use them as well.

Currently, it seems that the only driver at kernel using DVB mpeg ioctls 
is av7110. This hardware seemed to be discontinued by Texas, and is 
lacking a proper maintanership (there are some pending bugs on bugzilla 
waiting for someone to deal with).

>> > IMHO, it would be probably a pain for applications supporting
>> > multiple API 's doing the same thing.
>> 
>> Hmm, I'll have to look at that more closely tomorrow. I wasn't aware
>> that the dvb API had support for decoding.
>> 
>> Are there any existing v4l2 drivers using parts of the dvb API? I'm not
>> certain how well they mix.
>> 
>
> Currently, the AV7110 uses some parts of V4L2 for the analog stuff.
> These were based on the old Siemens cards, later on they were
> manufactured by a plethora of vendors (Technotrend, Hauppauge, Galaxis
> and many others ) making it  very popular. These cards are popularly
> knowns as the AV7110 based Full Fledged (FF) cards.

If the mpeg implementation on DVB API is generic enough to work with 
non-av7110 hardware, we should use those ioctls for ivtv. Otherwise, we 
should work in a way that won't result on userspace breakage when adding 
newer stuff to the ioctl. In the latter case, as on DVB, there are no 
reserved space on current structs for API additions, such change will 
likely result on defining a newer ioctl number with the old struct fields 
(or a more generic approach) plus the new required ones.

> I think some newer devices also will be based on this API, the
> Decypher [1] H.264 decoders from Micronas. Still work is going on with
> that device, AFAIK.

We should analyse the requirements of those devices and if the API 
provides enough support. Is there anybody already working on such 
hardware?

Cheers,
Mauro Carvalho Chehab
http://linuxtv.org
mchehab at infradead.org



More information about the linux-dvb mailing list