首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MediaMuxer:未能获得文件状态标志错误:文件描述符

MediaMuxer:未能获得文件状态标志错误:文件描述符
EN

Stack Overflow用户
提问于 2022-01-19 07:11:53
回答 1查看 72关注 0票数 0

在Anroid 8设备上,我将h264+aac流组合成mp4,所以我使用MediaMuxer,但是我使用FileDescriptor创建一个文件,logcat显示如下:

代码语言:javascript
复制
Fail to get File Status Flags err: Bad file descriptor
System.err: java.lang.IllegalArgumentException: Invalid file descriptor
System.err:     at android.media.MediaMuxer.nativeSetup(Native Method)
System.err:     at android.media.MediaMuxer.setUpMediaMuxer(MediaMuxer.java:359)
System.err:     at android.media.MediaMuxer.<init>(MediaMuxer.java:351)

这是我的密码:

代码语言:javascript
复制
mMediaMuxer = new MediaMuxer(createFileDescriptor(context, destFile), MediaMuxer.OutputFormat.MUXER_OUTPUT_MPEG_4);

........

public static FileDescriptor getFileDescriptor(Context context, File destFile) {
        FileDescriptor fd = null;
        try {
            DocumentFile file = DocumentsUtils.getDocumentFile(destFile, false, context);
                if (file != null && file.canWrite()) {
                    ParcelFileDescriptor out = context.getContentResolver().openFileDescriptor(file.getUri(), "rw");
                    fd = out.getFileDescriptor();
                    }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return fd;
    }

我用了这么多方法,但还是不能解决这个问题,有谁知道怎么解决吗?谢谢..。

EN

回答 1

Stack Overflow用户

发布于 2022-01-21 07:15:49

顺便说一下,我在SD路径上录制了视频,logcat显示了“无效的文件描述符”,这个问题仍然混淆了me= =

奇怪的是,它可以在内部路径上写入文件……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70766570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档