2

我面临一个大问题。我使用 MediaMuxer 创建一个 mp4 文件。这是 MediaMuxer 的构造函数:

public MediaMuxer (String path, int format)

例如:

sMediaMuxer = new MediaMuxer("/storage/emulated/0/OuputVideos/output1.mp4",OutputFormat.MUXER_OUTPUT_MPEG_4

问题是:主存储(内部存储)一切正常,但我无法将输出视频保存到辅助 SD 卡(外部)。我的应用程序在 Lollipop 设备 (5.0) 中运行。我阅读了很多关于在 Lollipop 上使用 SD 卡的主题(例如:如何使用为 Android 5.0 (Lollipop) 提供的新 SD 卡访问 API?)。他们都在谈论使用新的 Intent ACTION_OPEN_DOCUMENT_TREE 来选择输出目录。

Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
startActivityForResult(intent, 42);

关于这个意图的结果:

public void onActivityResult(int requestCode, int resultCode, Intent resultData) {
if (resultCode == RESULT_OK) {
    Uri treeUri = resultData.getData();
    DocumentFile pickedDir = DocumentFile.fromTreeUri(this, treeUri);

但我不知道如何将pickDir 用于MediaMuxer。有谁能够帮我?非常感谢!

4

0 回答 0