Fix issue 1) not recognizes some usb device, 2) reconnect when ffmpeg encoder error v0.3.2
authorPeng Li <seudut@gmail.com>
Thu, 24 May 2018 10:06:07 +0000 (18:06 +0800)
committerPeng Li <seudut@gmail.com>
Thu, 24 May 2018 10:06:07 +0000 (18:06 +0800)
app/src/main/java/ai/suanzi/rtmpclient/MainActivity.java
app/src/main/java/ai/suanzi/rtmpclient/UsbMonitor.java

index 16322c6..bf53ce4 100644 (file)
@@ -324,12 +324,13 @@ public class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal
 
     @Override
     public void onEncoderError(String msg){
-        gLogger.error("onEncoderEvent: " + msg);
+        gLogger.error("onEncoderError: " + msg);
+        doUnbindService();
+        doBindService();
     }
 
     @Override
     public void onPublishing(String msg){
-        gLogger.error("onPublishing: " + msg);
         mServiceHealthMonitor.record();
     }
 
index c862ff0..9076a9b 100644 (file)
@@ -53,7 +53,7 @@ public class UsbMonitor {
     }
 
     private boolean isUvcCamera(UsbDevice device){
-        return (device.getDeviceProtocol() == 1 && device.getProductName().contains("Camera"));
+        return device.getProductName().toLowerCase().contains("camera") || (device.getDeviceProtocol() == 1);
     }
 
     public boolean hasUsbCamera(){