gpt4 book ai didi

android - 使用 SCameraCaptureSession 在三星设备上的 Android 8 上出现错误

转载 作者:IT老高 更新时间:2023-10-28 23:25:19 26 4
gpt4 key购买 nike

我正在尝试使用 SCameraCaptureSession 类捕获视频。在使用此类的函数 - setRepeatingRequest (描述 here )时,我收到以下错误:

java.lang.IllegalArgumentException:CaptureRequest 包含未配置的输入/输出表面!

正如我所注意到的,问题是由于 MediaRecorder 的 Surface 对象中的某些东西而发生的。但是,它在使用低于 8 的 Android 版本时运行良好,并且崩溃仅发生在运行 Android 8 的三星设备上。谷歌搜索没有发现任何关于那次崩溃的有用信息,所以我相信它是相当新的......

有人知道吗?如何使 MediaRecorder 的表面在我提到的设备上正常工作?

重要提示:在 8 之前的任何 Android 版本上捕获视频非常棒!!!

最佳答案

似乎来自 MediaRecorder 的表面配置存在问题。如果您传递自定义持久表面,它应该可以工作。

  1. 通过调用 MediaCodec.createPersistentInputSurface() 实例化一个表面

  2. 使用 mediaRecorder.setInputSurface(yourSurface); 传递它

  3. 在停止使用此表面后调用 yourSurface.release()。

注意:如果您决定使用此方法,请勿使用 mediaRecorder.getSurface()

引用:

媒体记录器:MediaRecorder - Android Docs

媒体编解码器:MediaCodec - Android Docs

关于android - 使用 SCameraCaptureSession 在三星设备上的 Android 8 上出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49533401/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com