如何在流媒体中使用 MediaRecorder?我试着用过:
new Thread(new Runnable() {
@Override
public void run() {
Socket socket;
try {
socket = new Socket("192.168.1.42", 7070);
ParcelFileDescriptor fileDescriptor = ParcelFileDescriptor.fromSocket(socket);
MediaRecorder mediaRecorder = new MediaRecorder();
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR);
mediaRecorder.setOutputFile(fileDescriptor.getFileDescriptor());
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_WB);
try {
mediaRecorder.prepare();
mediaRecorder.start();
} catch (IOException e) {
Log.e("error", "prepare failed");
}
} catch (IOException ex) {
Log.e("error", "socket failed");
}
}
}).start();
不工作,错误:
MediaRecorder: start failed: -38
AndroidRuntime: FATAL EXCEPTION: Thread-6
java.lang.IllegalStateException
问题:
ParcelFileDescriptor fileDescriptor = ParcelFileDescriptor.fromSocket(socket);
连接并立即从服务器断开。帮帮我...