Mailing List archive

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

[vdr] Re: DXR3 support patch for vdr-1.1.5



On Tuesday 23 July 2002 10:47, Klaus Schmidinger wrote:
> Andreas Schultz wrote:
> > On Tuesday 23 July 2002 06:18, Malcolm Caldwell wrote:
> > ...
> >
> > > BTW: I would say that mess is too strong a word.  Certainly vdr was not
> > > designed for this type of thing - that does not necessarily mean the
> > > code is a mess if you try to use it for something else.
> >
> > Sure, what i see as a "mess" is the mix of code that is generic to a
> > single cDevice object, code that works on all existing cDevice objects
> > and hardware device specific code in cDevice. That has nothing todo with
> > the thing not working for me, it is just that the code is and always has
> > been badly modularized.
>
> That's exactly what I am currently working on: better modularizing the
> code.
>
> I've started with the players/receivers and just haven't done the
> devices yet. What upset me about your initial posting was the way
> you brought this up. To me it sounded like "Well, look what Klaus did:
> it's still unusable!". Making devices plugin-aware simply wasn't what
> I intended to do in this step. Until recently the main problem was with
> players, so I decided to make _those_ plugin aware first. You yourself have
> been focused on the DVD player, so I thought making player plugins first
> would support your work.

it does, but i can already see the points where things will almost certainly 
have to be changed in my code once you make the devices modular. The current 
plugin API still exposes to much of vdr internals to plugins and it 
shouldn't.

> I can't help it, but it's my way of doing things to do one step after the
> other, and to make one thing work before starting a new one. As you may
> have noticed, version 1.1.5 still lacks Dolby Digital support. This will
> also be made plugin aware, and I want to incorporate support for live Dolby
> Digital audio as well. Once these steps are completed, I will release this
> as version 1.2.0 - which is then basicly the status of version 1.0.0, with
> several features made "plugin aware".

Are you sure, wouldn't it be better to start with the devices and the 
concentrate on DD?
With DD you will most certainly want to support external decoders again and 
hopefully include internal direct support of OSS/ALSA sound devices. Support 
for both can IMHO best be implemented within the device classes, provided 
that the framework is powerfull and flexible enough.

> After that I will make the devices plugin aware. This isn't something you

I'm not talking about plugin aware devices. That will certanly be the ultimate 
goal, but in the meantime, i would settle for a radical restruturing of the 
device layer.

> just throw in with a few lines of code. You have to allow devices that can
> record but not replay (and vice versa), and you have to completely separate
> the OSD from the actual device, because a particular device might not be
> able to display an OSD, or may need a completely different implementation.
> Part of this has already been prepared in the current developer version.

As you said, one step at a time. I would be more than willing to start on the 
cDevice issues when i could be sure that at least parts of it will be 
accepted ....
I could also throw together a "janitor" list of small things that should/could 
be changed thoughout vdr.

> BTW: I've tested your latest DVD player plugin with "X-Men" and
> "Raumpatrouille". In one case I had a complete program crash, and on
> several occasions the menu didn't work as expected. Are you interested in
> fixing this? I can lend these DVDs to you if it helps.

I definetly am.

> Oh, one more thing: I'd really appreciate if the DVD player would react on
> the default "up/down/left/right" keys when in menu mode. I never really
> understood why you had to use the number keys for this...

Because the number keys are more convenient on my remote control and because 
of:

    case kUp:      Play(); break;
    case kDown:    Pause(); break;
    case kLeft:    Backward(); break;
    case kRight:   Forward(); break;

Menus on most DVD's are also just video/audio sequences played over and over  
again. To be able to have a double meaning of those keys, i would have to use 
the "User Operation Flags" which then would not allow you anymore to skip 
over those stupid intro copyright messages.

Andreas
-- 
Andreas Schultz <aschultz@cs.uni-magdeburg.de>
Student of computer science

"In accordance with plans for Linux OS world domination
      infiltration of governments is vital (:-))."




Home | Main Index | Thread Index