From 0d5d3b7cc8b9ff142269a947443c758cb2af4684 Mon Sep 17 00:00:00 2001 From: Robert Shih Date: Thu, 10 Jul 2014 15:24:43 -0700 Subject: [PATCH] MediaRecorder: use fd from RandomAccessFile Use RandomAccessFile instead of FileOutputStream so the underlying fd is opened O_RDWR; O_RDWR is needed for mmap calls in the native webm writer. Change-Id: I444cbf40add96bc05905369ae2fa2b5446b0f9cc --- media/java/android/media/MediaRecorder.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/media/java/android/media/MediaRecorder.java b/media/java/android/media/MediaRecorder.java index 21e2f4bf93641..f8c0494e32534 100644 --- a/media/java/android/media/MediaRecorder.java +++ b/media/java/android/media/MediaRecorder.java @@ -25,8 +25,8 @@ import android.util.Log; import android.view.Surface; import java.io.FileDescriptor; -import java.io.FileOutputStream; import java.io.IOException; +import java.io.RandomAccessFile; import java.lang.ref.WeakReference; /** @@ -713,11 +713,11 @@ public class MediaRecorder public void prepare() throws IllegalStateException, IOException { if (mPath != null) { - FileOutputStream fos = new FileOutputStream(mPath); + RandomAccessFile file = new RandomAccessFile(mPath, "rws"); try { - _setOutputFile(fos.getFD(), 0, 0); + _setOutputFile(file.getFD(), 0, 0); } finally { - fos.close(); + file.close(); } } else if (mFd != null) { _setOutputFile(mFd, 0, 0);