14 changed files with 420 additions and 1261 deletions
@ -0,0 +1,60 @@
@@ -0,0 +1,60 @@
|
||||
/* |
||||
* Copyright (C) 2012, Collabora Ltd. |
||||
* Author: Youness Alaoui |
||||
* |
||||
* Copyright (C) 2015, Collabora Ltd. |
||||
* Author: Justin Kim <justin.kim@collabora.com> |
||||
* |
||||
* This library is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU Lesser General Public |
||||
* License as published by the Free Software Foundation |
||||
* version 2.1 of the License. |
||||
* |
||||
* This library is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
* Lesser General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Lesser General Public |
||||
* License along with this library; if not, write to the Free Software |
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
||||
* |
||||
*/ |
||||
|
||||
package org.freedesktop.gstreamer.androidmedia; |
||||
|
||||
import android.hardware.Camera; |
||||
|
||||
public class GstAhcCallback implements Camera.PreviewCallback, |
||||
Camera.ErrorCallback, |
||||
Camera.AutoFocusCallback { |
||||
public long mUserData; |
||||
public long mCallback; |
||||
|
||||
public static native void gst_ah_camera_on_preview_frame(byte[] data, Camera camera, |
||||
long callback, long user_data); |
||||
public static native void gst_ah_camera_on_error(int error, Camera camera, |
||||
long callback, long user_data); |
||||
public static native void gst_ah_camera_on_auto_focus(boolean success, Camera camera, |
||||
long callback, long user_data); |
||||
|
||||
public GstAhcCallback(long callback, long user_data) { |
||||
mCallback = callback; |
||||
mUserData = user_data; |
||||
} |
||||
|
||||
@Override |
||||
public void onPreviewFrame(byte[] data, Camera camera) { |
||||
gst_ah_camera_on_preview_frame(data, camera, mCallback, mUserData); |
||||
} |
||||
|
||||
@Override |
||||
public void onError(int error, Camera camera) { |
||||
gst_ah_camera_on_error(error, camera, mCallback, mUserData); |
||||
} |
||||
|
||||
@Override |
||||
public void onAutoFocus(boolean success, Camera camera) { |
||||
gst_ah_camera_on_auto_focus(success, camera, mCallback, mUserData); |
||||
} |
||||
} |
@ -0,0 +1,54 @@
@@ -0,0 +1,54 @@
|
||||
/* |
||||
* Copyright (C) 2016 SurroundIO |
||||
* Author: Martin Kelly <martin@surround.io> |
||||
* |
||||
* This library is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU Library General Public |
||||
* License as published by the Free Software Foundation; either |
||||
* version 2 of the License, or (at your option) any later version. |
||||
* |
||||
* This library is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
* Library General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Library General Public |
||||
* License along with this library; if not, write to the |
||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, |
||||
* Boston, MA 02110-1301, USA. |
||||
*/ |
||||
|
||||
package org.freedesktop.gstreamer.androidmedia; |
||||
|
||||
import android.hardware.Sensor; |
||||
import android.hardware.SensorEvent; |
||||
import android.hardware.SensorEventListener; |
||||
|
||||
public class GstAhsCallback implements SensorEventListener { |
||||
public long mUserData; |
||||
public long mSensorCallback; |
||||
public long mAccuracyCallback; |
||||
|
||||
public static native void gst_ah_sensor_on_sensor_changed(SensorEvent event, |
||||
long callback, long user_data); |
||||
public static native void gst_ah_sensor_on_accuracy_changed(Sensor sensor, int accuracy, |
||||
long callback, long user_data); |
||||
|
||||
public GstAhsCallback(long sensor_callback, |
||||
long accuracy_callback, long user_data) { |
||||
mSensorCallback = sensor_callback; |
||||
mAccuracyCallback = accuracy_callback; |
||||
mUserData = user_data; |
||||
} |
||||
|
||||
@Override |
||||
public void onSensorChanged(SensorEvent event) { |
||||
gst_ah_sensor_on_sensor_changed(event, mSensorCallback, mUserData); |
||||
} |
||||
|
||||
@Override |
||||
public void onAccuracyChanged(Sensor sensor, int accuracy) { |
||||
gst_ah_sensor_on_accuracy_changed(sensor, accuracy, |
||||
mAccuracyCallback, mUserData); |
||||
} |
||||
} |
@ -0,0 +1,43 @@
@@ -0,0 +1,43 @@
|
||||
/* |
||||
* Copyright (C) 2015, Collabora Ltd. |
||||
* Author: Matthieu Bouron <matthieu.bouron@collabora.com> |
||||
* |
||||
* This library is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU Lesser General Public |
||||
* License as published by the Free Software Foundation |
||||
* version 2.1 of the License. |
||||
* |
||||
* This library is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
* Lesser General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Lesser General Public |
||||
* License along with this library; if not, write to the Free Software |
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
||||
* |
||||
*/ |
||||
|
||||
package org.freedesktop.gstreamer.androidmedia; |
||||
|
||||
import android.graphics.SurfaceTexture; |
||||
import android.graphics.SurfaceTexture.OnFrameAvailableListener; |
||||
|
||||
public class GstAmcOnFrameAvailableListener implements OnFrameAvailableListener |
||||
{ |
||||
private long context = 0; |
||||
|
||||
public synchronized void onFrameAvailable (SurfaceTexture surfaceTexture) { |
||||
native_onFrameAvailable(context, surfaceTexture); |
||||
} |
||||
|
||||
public synchronized long getContext () { |
||||
return context; |
||||
} |
||||
|
||||
public synchronized void setContext (long c) { |
||||
context = c; |
||||
} |
||||
|
||||
private native void native_onFrameAvailable (long context, SurfaceTexture surfaceTexture); |
||||
} |
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue