我正在尝试从A点(2.1安卓手机)到B点(我的服务器)实时获取视频流.我该怎么办? 下面详细介绍了我的尝试(有点长,但简洁!)
目标是将手机录制的一小时长视频发送到服务器,而不会暂停/停止流.延迟几分钟不是问题.我尝试了三种方法
不幸的是,两次尝试都失败了.
给了我这个美丽无用的堆栈跟踪
ERROR/AndroidRuntime(18532):引起:java.lang.RuntimeException:启动失败.ERROR/AndroidRuntime(18532):在android.media.MediaRecorder.start(Native Method)ERROR/AndroidRuntime(18532):at com.example.demovideo.DemoVideo.initializeCamera(...)...
同样的错误2
代码片段(部分省略)
1)
fileOut = new FileOutputStream(pathToFile);
...
recorder.setOutputFile(fileOut.getFD());
recorder.prepare()
recorder.start()
// in an Async Thread
fileIn = FileInputStream(fileOut.getFD);
while (recording) {
fos.flush();
Log.w("---", "bytesAvailable: " + fileIn.available()); //always returns 24
Thread.sleep(1000);
}
Run Code Online (Sandbox Code Playgroud)
2)
// in a Thread
server = new LocalServerSocket(SOCKET_ADDRESS);
while (true){
receiver = server.accept();
if (receiver != null){
InputStream input = receiver.getInputStream();
... // processing would go here
} }
sender = new LocalSocket();
sender.connect(new …Run Code Online (Sandbox Code Playgroud)