Re: [Ekiga-devel-list] preliminary patch for X-Video support



Hi Matthias,

Le mardi 12 septembre 2006 à 20:33 +0200, Matthias Schneider a écrit :
> > Is XV support intended to replace GDK or SDL?
> > I would replace both if possible.
> 
> Ok, on compile time we have options: configured with --disable-xv and without.
> If disable-xv is given to configure, the behaviour is like before, GDK for window mode and SDL (if
> found and enabled) for fullscreen mode. On linux systems only (to answer Juliens question),
> without the --disable-xv given, ekiga will make use of the XV code for window (fully scalable) and
> fullscreen mode. 
> 

Perfect. --enable-xv should be the default, but does xv work everywhere
on Linux?

[...]

> > > ekigas main window as well. However up to now, my efforts where unsuccessfull... 
> > 
> > You should ask for help to some GTK hacker. I can put you in contact.
> > Notice that in CVS, SideBySide is gone.
> 
> Thank you that would be really nice.. Ok, I will quit sidebyside, and try to implement the
> embedded window functionality. However I would like to add an PIP external window option. 
> 

No problem.

> > 
> > Then fullscreen should be disabled.
> Ok so if we compile without SDL and XV we wont have / will have a disabled fullscreen option. 
> In case we have to fallback from XV to GDK and do not have SDL compiled in we switch back to
> window mode and dynamically disbale the fullscreen menu entry?
> 

I would do so, yes.

[...]

> > 
> > I don't understand the problem.
> > 
> > Can you elaborate on the functions flow and what is the exact problem?
> 
> Ok I will try to describe the problem in a better way. Right now the implementation works like
> this: either we enable GDK/SDL OR XV output at compile time. However even if XV is compiled into
> ekiga, at runtime it is possible that:
> - there is no support for XV by the graphics driver
> - there is no free XV port available because another program is using it.
> Right now in that case there simply is no window.  I suppose it would be nicer to have a fallback
> to the GDK/SDL implementation. The problem I am facing right now that I do not know whether XV is
> available until the first frame is to be displayed.
> 

Ah, I understand!

> Right now the output device is set in manager.cpp GMMAnager::GMManager() statically to GDK/SDL or
> XV (via the device variable in OpalManager)
> I this correct? I have not yet fully understood how the different output device are handled in
> ekiga/opal.

That is correct. Notice also that SDL support is a part of the virtual
GDK device we implement and not a new PVideoOutputDevice.

> My question now is where and how could I possibly implement a fallback in case XV is not
> available? Can I register a PVideoOutputDevice_GDK from inside the PVideoOutputDevice_XV class? Or
> where could I start to implement something like that? 
> 

I think that unfortunately you not switch from one PVideoOutputDevice to
another once it is open. Doing so would require changes in OPAL.

Perhaps Craig can comment on this?

So I see two solutions :
- Modify OPAL so that you can change from one PVideoOutputDevice to
another during a call
- Create a new PVideoOutputDevice_Ekiga class from the current GDK one
that is able to draw using xv and fallback to SDL or GDK if it is not
possible.


> Another idea would be to check once before registering the ouput device in GMManager::GMManager()
> if XV is available and register the respective output device. This however would not cover the
> situation that XV is available on a system, but no more ports are available.
> 
> I dont know if I make more sense than in my message from yesterday, perhaps it would be better to
> use some code to demonstrateE?
> 

No, I understood the problem.

> Matthias
> > 
> > 
> > > 
> > >   I also have an nearly similar DirectX class waiting for ekiga, hopefully I will find some
> > time
> > > soon. Please let me know what you think about this XV class,
> > 
> > I like it :)
> > 
> > Thanks!
> > -- 
> >  _      Damien Sandras
> > (o-     
> > //\     Ekiga Softphone: http://www.ekiga.org/
> > v_/_    FOSDEM 2006    : http://www.fosdem.org/
> >         SIP Phone      : sip:dsandras ekiga net
> >                          sip:600000 ekiga net
> > 
> > _______________________________________________
> > Ekiga-devel-list mailing list
> > Ekiga-devel-list gnome org
> > http://mail.gnome.org/mailman/listinfo/ekiga-devel-list
> > 
> 
> 
> 
> 	
> 
> 	
> 		
> ___________________________________________________________ 
> Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
> _______________________________________________
> Ekiga-devel-list mailing list
> Ekiga-devel-list gnome org
> http://mail.gnome.org/mailman/listinfo/ekiga-devel-list
-- 
 _      Damien Sandras
(o-     
//\     Ekiga Softphone: http://www.ekiga.org/
v_/_    FOSDEM 2006    : http://www.fosdem.org/
        SIP Phone      : sip:dsandras ekiga net
                         sip:600000 ekiga net




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