Android MediaCodec dequeueOutputBuffer 总是在三星设备 android 10 中返回 -1

标签 android android-mediacodec

我的应用程序(android)有一种使用编解码器对语音数据进行编码和解码的方法。 dequeueOutputBuffer always return -1 仅出现在 Android 10 版本之后的三星设备上。 Android 9 没有问题,但在三星设备上升级到三星 10 后出现。 在其他Android 10设备上没有这种症状。 你能告诉我为什么吗?

dequeueOutputBuffer 始终仅返回 -1 android 10 和 Samsung 设备。

不是 GALAXY NOTE 系列

最佳答案

我最近遇到了同样的问题。一切都很好,缓冲区被馈送到编解码器,但“dequeueOutputBuffer”仍然返回 -1。在我的例子中,缓冲区被保存并从服务器读取,所以我开始降低 MediaFormat 值,这很有帮助。可以说,在这个问题上,很大程度上还取决于互联网连接的质量。在接下来的步骤中,我会考虑分开编码和解码的 MediaFormat 值。我在 stackoverflow 的某个地方读到,解码器不一定需要与编码器相同的所有设置,因为这些设置已经包含在编码过程中。这可能会提高性能。

关于Android MediaCodec dequeueOutputBuffer 总是在三星设备 android 10 中返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60629236/

相关文章:

android - 如何停止(而不是终止)一个 Activity 来触发 onRestart()?

android - 如何在加载所有图像之前加载 Activity ?

android - 控制 VirtualDisplay 的帧率

android - MediaFormat.getByteBuffer ("csd-0") 在某些设备上返回 null

android - MediaCodec 的 presentationTimeUs 有什么用?

android - Firebase 数据库错误仅在应用程序发布到谷歌播放后 - android

android - React-native 获取通话记录(Android/iOS)

android - MediaCodec 编码相机表面呈现时间不统一

android - 内容提供者更新所有行

安卓 MediaExtractor readSampleData IllegalArgumentException