我正在尝试提取MediaRecorder
的muxer部分,所以我现在正在学习Android 4.2.2的源代码,无论如何,这并不重要。
我在这里有一个问题。它约为setOutputFile(String path)
的{{1}}。
MediaRecorder.java
的通话后果是
MediaRecorder.java
但在MediaRecorder.java
+- android_media_MediaRecorder.cpp
+- MediaRecorder.cpp
+- MediaPlayerService.cpp
+- MediaRecorderClient.cpp
+- StagefrightRecorder.cpp
中,它说
StagefrightRecorder.cpp
那么我们如何继续使用status_t StagefrightRecorder::setOutputFile(const char *path) {
ALOGE("setOutputFile(const char*) must not be called");
// We don't actually support this at all, as the media_server process
// no longer has permissions to create files.
return -EPERM;
}
的{{1}}?我真的不明白。
答案 0 :(得分:3)
在MediaRecorder.java
中,setOutputFile
在Java
图层处理,没有相应的原生实现。在Java
实施中,path is stored into mPath
。
调用prepare
时,可以从此实现中观察到File Descriptor
File Descriptor
。此方法即接受MediaRecorderTest.java
由本机实现支持,因此生成输出并存储到文件系统中。
因此,在诸如MediaRecorder
的示例中,可以观察到string
对象已使用{{1}}初始化输出文件路径。