MediaRecorder の書き込み機能をある程度制御できるようにしたいのですが、カメラからの録画中に一時停止機能を構築できるようにしたいのですが、現在、このメソッドはクラスに存在しないため、やりたいことは何ですか?これを達成するには、出力をバッファに保存し、いつ書き込むか書き込まないかを選択します。これを行うにはどうすればよいですか?
編集:これは私の試みですが、動作させることができませんでした
private FileDescriptor getStreamFd() {
ParcelFileDescriptor pipe = null;
try {
Calendar calendarTime = Calendar.getInstance();
File file = new File(Environment.getExternalStorageDirectory(),
String.valueOf(calendarTime.getTimeInMillis()) + ".mp4");
pipe = ParcelFileDescriptor.open(file,
ParcelFileDescriptor.MODE_CREATE
| ParcelFileDescriptor.MODE_APPEND
| ParcelFileDescriptor.MODE_WORLD_WRITEABLE);
byte[] buf = new byte[1024];
int len;
FileOutputStream out = new FileOutputStream(FileDescriptor.out);
InputStream is = new FileInputStream(FileDescriptor.in);
while (usecamera) {
if(recordng){
out.write(buf, 0, len);
}
}
is.close();
out.close();
} catch (IOException e) {
Log.e(getClass().getSimpleName(), "Exception opening pipe", e);
}
return pipe.getFileDescriptor();
}