summaryrefslogtreecommitdiff
path: root/pjsip-apps/src/swig
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip-apps/src/swig')
-rw-r--r--pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/CallActivity.java2
-rw-r--r--pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/MyApp.java9
-rw-r--r--pjsip-apps/src/swig/pjsua2.i16
3 files changed, 20 insertions, 7 deletions
diff --git a/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/CallActivity.java b/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/CallActivity.java
index 9a057778..ff81b026 100644
--- a/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/CallActivity.java
+++ b/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/CallActivity.java
@@ -79,7 +79,7 @@ public class CallActivity extends Activity
if (holder == null)
vidWH.getHandle().setWindow(null);
else
- vidWH.getHandle().setWindow(pjsua2.android_opengl_get_surface(holder.getSurface()));
+ vidWH.getHandle().setWindow(holder.getSurface());
try {
MainActivity.currentCall.vidWin.setWindow(vidWH);
} catch (Exception e) {}
diff --git a/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/MyApp.java b/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/MyApp.java
index 92cc66bb..fbc3cedf 100644
--- a/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/MyApp.java
+++ b/pjsip-apps/src/swig/java/android/src/org/pjsip/pjsua2/app/MyApp.java
@@ -20,6 +20,7 @@ package org.pjsip.pjsua2.app;
import java.io.File;
import java.util.ArrayList;
+
import org.pjsip.pjsua2.*;
@@ -243,6 +244,14 @@ class MyAccountConfig {
class MyApp {
static {
+ try{
+ System.loadLibrary("openh264");
+ System.loadLibrary("yuv");
+ } catch (UnsatisfiedLinkError e) {
+ System.out.println("UnsatisfiedLinkError: " + e.getMessage());
+ System.out.println("This could be safely ignored if you " +
+ "don't need video.");
+ }
System.loadLibrary("pjsua2");
System.out.println("Library loaded");
}
diff --git a/pjsip-apps/src/swig/pjsua2.i b/pjsip-apps/src/swig/pjsua2.i
index 91f91916..4e58e21e 100644
--- a/pjsip-apps/src/swig/pjsua2.i
+++ b/pjsip-apps/src/swig/pjsua2.i
@@ -101,16 +101,20 @@ using namespace pj;
%template(AudioDevInfoVector) std::vector<pj::AudioDevInfo*>;
%template(CodecInfoVector) std::vector<pj::CodecInfo*>;
-%include "pjsua2/media.hpp"
-// Create an interface for android_opengl_get_surface()
+/* pj::WindowHandle::setWindow() receives Surface object */
#if defined(SWIGJAVA) && defined(__ANDROID__)
-%inline %{
-extern "C" {
- void* android_opengl_get_surface(jobject surface);
+%{#include <android/native_window_jni.h>%}
+%ignore pj::WindowHandle::display;
+%ignore pj::WindowHandle::window;
+%typemap(in) jobject surface {
+ $1 = (jobject)ANativeWindow_fromSurface(jenv, $input);
+}
+%extend pj::WindowHandle {
+ void setWindow(jobject surface) { $self->window = surface; }
}
-%}
#endif
+%include "pjsua2/media.hpp"
%include "pjsua2/presence.hpp"
%include "pjsua2/account.hpp"
%include "pjsua2/call.hpp"