Support iMX6 and Pi with the same binary

This commit is contained in:
Iwan Timmer
2014-08-16 16:04:32 +02:00
parent 4c27ff8090
commit e53da5b2d5
3 changed files with 25 additions and 5 deletions

View File

@@ -4,8 +4,11 @@ import java.net.InetAddress;
import java.net.UnknownHostException;
import com.limelight.binding.audio.AlsaAudioRenderer;
import com.limelight.binding.video.ImxDecoder;
import com.limelight.binding.video.ImxDecoderRenderer;
import com.limelight.binding.crypto.PcCryptoProvider;
import com.limelight.binding.video.OmxDecoder;
import com.limelight.binding.video.OmxDecoderRenderer;
import com.limelight.nvstream.av.audio.AudioRenderer;
import com.limelight.nvstream.av.video.VideoDecoderRenderer;
import com.limelight.nvstream.http.LimelightCryptoProvider;
@@ -21,7 +24,12 @@ public class PlatformBinding {
* @return a video decoder and renderer
*/
public static VideoDecoderRenderer getVideoDecoderRenderer() {
return new ImxDecoderRenderer();
if (OmxDecoder.load())
return new OmxDecoderRenderer();
else if (ImxDecoder.load())
return new ImxDecoderRenderer();
return null;
}
/**

View File

@@ -5,8 +5,14 @@ package com.limelight.binding.video;
* @author Iwan Timmer
*/
public class ImxDecoder {
static {
System.loadLibrary("nv_imx_dec");
public static boolean load() {
try {
System.loadLibrary("nv_imx_dec");
} catch (Throwable e) {
return false;
}
return false;
}
public static native int init();

View File

@@ -5,8 +5,14 @@ package com.limelight.binding.video;
* @author Iwan Timmer
*/
public class OmxDecoder {
static {
System.loadLibrary("nv_omx_dec");
public static boolean load() {
try {
System.loadLibrary("nv_omx_dec");
} catch (Throwable e) {
return false;
}
return false;
}
public static native int init();