From 589db6637e559d995708f29bbb5499dbf8f48740 Mon Sep 17 00:00:00 2001 From: Riza Sulistyo Date: Wed, 20 Jul 2016 06:55:11 +0000 Subject: Re #1944: Allow native window to be set for video output window on SDL git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5392 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip-apps/src/swig/java/sample.java | 17 +++++++++++++++-- pjsip-apps/src/swig/pjsua2.i | 9 +++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) (limited to 'pjsip-apps') diff --git a/pjsip-apps/src/swig/java/sample.java b/pjsip-apps/src/swig/java/sample.java index 7f77dd2c..974e130d 100644 --- a/pjsip-apps/src/swig/java/sample.java +++ b/pjsip-apps/src/swig/java/sample.java @@ -84,8 +84,21 @@ public class sample { private static MyApp app = new MyApp(); private static MyAppObserver observer = new MyObserver(); private static MyAccount account = null; - private static AccountConfig accCfg = null; - + private static AccountConfig accCfg = null; + + // Snippet code to set native window to output video + /* + private void setOutputVidWin() {} + VideoWindowHandle vidWH = new VideoWindowHandle(); + vidWH.getHandle().setWindow(getNativeWindow()); + try { + currentCall.vidWin.setWindow(vidWH); + } catch (Exception e) { + System.out.println(e); + } + } + */ + private static void runWorker() { try { app.init(observer, ".", true); diff --git a/pjsip-apps/src/swig/pjsua2.i b/pjsip-apps/src/swig/pjsua2.i index 53bd06da..51616a72 100644 --- a/pjsip-apps/src/swig/pjsua2.i +++ b/pjsip-apps/src/swig/pjsua2.i @@ -114,6 +114,9 @@ using namespace pj; %template(VideoDevInfoVector) std::vector; %template(CodecFmtpVector) std::vector; +%ignore pj::WindowHandle::display; +%ignore pj::WindowHandle::window; + /* pj::WindowHandle::setWindow() receives Surface object */ #if defined(SWIGJAVA) && defined(__ANDROID__) %{ @@ -123,14 +126,16 @@ using namespace pj; # define ANativeWindow_fromSurface(a,b) NULL #endif %} -%ignore pj::WindowHandle::display; -%ignore pj::WindowHandle::window; %typemap(in) jobject surface { $1 = ($input? (jobject)ANativeWindow_fromSurface(jenv, $input): NULL); } %extend pj::WindowHandle { void setWindow(jobject surface) { $self->window = surface; } } +#else +%extend pj::WindowHandle { + void setWindow(long long hwnd) { $self->window = (void*)hwnd; } +} #endif %include "pjsua2/media.hpp" -- cgit v1.2.3