[Ekiga-devel-list] Win32 Ekiga painful



Building Win32 Ekiga from current heads is not straightforward. Ekiga,
Ptlib and Opal seem to have regressed in some aspects.
1) In Ekiga videooutput-manager-dx.cpp can not be compiled. I tried to
fix it with attached patch. There were two major issues: Where does
GMVideoDisplay_DX come from? I guess GMVideoOutputManager_dx was ment.
My compiler wants the functions at the end, like device_error_in_main,
be explicitly made members of class GMVideoOutputManager_dx. Otherwise
it would not allow the signals to be inherited.
2) Ekiga with current Ptlib head is unable to detect any audio or video
devices - all silence. This seems to be due to the changes introduced
with "Replaced PWLibStupidLinkerHacks". I had to go back to revision
22442.
3) Opal was also changed because of the "PWLibStupidLinkerHacks" and
depends on the changes in Ptlib. I had also to go back.
Regards
Michael

diff -ur ekiga.orig/lib/engine/components/dx-videooutput/videooutput-manager-dx.cpp ekiga/lib/engine/components/dx-videooutput/videooutput-manager-dx.cpp
--- ekiga.orig/lib/engine/components/dx-videooutput/videooutput-manager-dx.cpp	2009-04-24 21:31:18.654979488 +0200
+++ ekiga/lib/engine/components/dx-videooutput/videooutput-manager-dx.cpp	2009-04-24 21:33:13.205008765 +0200
@@ -92,14 +92,14 @@
     break;
   case Ekiga::VO_MODE_UNSET:
   default:
-    PTRACE (1, "GMVideoOutputManager_DX\tDisplay variable not set");
+    PTRACE (1, "GMVideoOutputManager_dx\tDisplay variable not set");
     return;
     break; 
   }
 
   if (   (!local_display_info.widget_info_set) || (!local_display_info.config_info_set) 
       || (local_display_info.mode == Ekiga::VO_MODE_UNSET) || (local_display_info.zoom == 0) || (current_frame.zoom == 0)) {
-    PTRACE(4, "GMVideoOutputManager_DX\tWidget not yet realized or gconf info not yet set, not opening display");
+    PTRACE(4, "GMVideoOutputManager_dx\tWidget not yet realized or gconf info not yet set, not opening display");
     return;
   }
 
@@ -109,7 +109,7 @@
 
   switch (current_frame.mode) {
   case Ekiga::VO_MODE_LOCAL:
-    PTRACE(4, "GMVideoOutputManager_DX\tOpening :VO_MODE_LOCAL display with image of " << current_frame.local_width << "x" << current_frame.local_height);
+    PTRACE(4, "GMVideoOutputManager_dx\tOpening :VO_MODE_LOCAL display with image of " << current_frame.local_width << "x" << current_frame.local_height);
     dxWindow = new DXWindow();
     video_disabled = !dxWindow->Init (local_display_info.hwnd,
                                       local_display_info.x,
@@ -129,7 +129,7 @@
     break;
 
   case Ekiga::VO_MODE_REMOTE:
-    PTRACE(4, "GMVideoOutputManager_DX\tOpening VO_MODE_REMOTE display with image of " << current_frame.remote_width << "x" << current_frame.remote_height);
+    PTRACE(4, "GMVideoOutputManager_dx\tOpening VO_MODE_REMOTE display with image of " << current_frame.remote_width << "x" << current_frame.remote_height);
     dxWindow = new DXWindow();
     video_disabled = !dxWindow->Init (local_display_info.hwnd,
                                       local_display_info.x,
@@ -151,7 +151,7 @@
   case Ekiga::VO_MODE_FULLSCREEN:
   case Ekiga::VO_MODE_PIP:
   case Ekiga::VO_MODE_PIP_WINDOW:
-    PTRACE(4, "GMVideoOutputManager_DX\tOpening display " << current_frame.mode << " with images of " 
+    PTRACE(4, "GMVideoOutputManager_dx\tOpening display " << current_frame.mode << " with images of " 
             << current_frame.local_width << "x" << current_frame.local_height << "(local) and " 
 	    << current_frame.remote_width << "x" << current_frame.remote_height << "(remote)");
     dxWindow = new DXWindow();
@@ -184,7 +184,7 @@
     return;
     break;
   }
-  PTRACE (4, "GMVideoDisplay_DX\tSetup display " << current_frame.mode << " with zoom value of " << current_frame.zoom );
+  PTRACE (4, "GMVideoOutputManager_dx\tSetup display " << current_frame.mode << " with zoom value of " << current_frame.zoom );
 
   if (local_display_info.on_top && dxWindow)
       dxWindow->ToggleOntop ();
@@ -197,11 +197,11 @@
   if (video_disabled) {
     delete dxWindow;
     dxWindow = NULL;
-    Ekiga::Runtime::run_in_main (sigc::bind (sigc::mem_fun (this, &GMVideoDisplay_DX::device_error_in_main), Ekiga::VO_ERROR));
+    Ekiga::Runtime::run_in_main (sigc::bind (sigc::mem_fun (this, &GMVideoOutputManager_dx::device_error_in_main), Ekiga::VO_ERROR));
   }
   else {
     current_frame.accel = Ekiga::VO_ACCEL_ALL; 
-    Ekiga::Runtime::run_in_main (sigc::bind (sigc::mem_fun (this, &GMVideoDisplay_DX::device_opened_in_main), current_frame.accel, current_frame.mode, current_frame.zoom, current_frame.both_streams_active));
+    Ekiga::Runtime::run_in_main (sigc::bind (sigc::mem_fun (this, &GMVideoOutputManager_dx::device_opened_in_main), current_frame.accel, current_frame.mode, current_frame.zoom, current_frame.both_streams_active));
   }
 }
 
@@ -261,14 +261,14 @@
 }
 
 void
-size_changed_in_main (unsigned width,
+GMVideoOutputManager_dx::size_changed_in_main (unsigned width,
 		      unsigned height)
 {
   size_changed.emit (width, height);
 }
 
 void
-device_opened_in_main (Ekiga::VideoOutputAccel accel,
+GMVideoOutputManager_dx::device_opened_in_main (Ekiga::VideoOutputAccel accel,
 		       Ekiga::VideoOutputMode mode,
 		       unsigned zoom,
 		       bool both)
@@ -277,19 +277,19 @@
 }
 
 void
-device_closed_in_main ()
+GMVideoOutputManager_dx::device_closed_in_main ()
 {
   device_closed.emit ();
 }
 
 void
-device_error_in_main (Ekiga::VideoOutputErrorCodes code)
+GMVideoOutputManager_dx::device_error_in_main (Ekiga::VideoOutputErrorCodes code)
 {
   device_error.emit (code);
 }
 
 void
-fullscreen_mode_changed_in_main (Ekiga::VideoOutputFSToggle val)
+GMVideoOutputManager_dx::fullscreen_mode_changed_in_main (Ekiga::VideoOutputFSToggle val)
 {
   fullscreen_mode_changed.emit (val);
 }


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