gpt4 book ai didi

android - 从 MediaCodec 解码输出缓冲区

转载 作者:太空宇宙 更新时间:2023-11-03 10:22:16 25 4
gpt4 key购买 nike

我正在使用 Android MediaCodec 库解码存储在文件系统中的视频。我得到一个看起来合法的输出缓冲区(具有适当的 bufferinfo.offsetsize)。它的格式似乎是 256(即 JPEG)。我尝试用 BitmapFactory.decodeByteArray 解码它,但结果是 null

有谁知道确定输出缓冲区格式的正确方法吗?开始解码输出字节数组的正确方法是什么?

最佳答案

MediaCodec 颜色格式由 MediaCodecInfo.CodecCapabilities 定义类(class)。 256 在内部使用,通常并不意味着您有 JPEG 数据缓冲区。这里的混淆可能是因为您正在查看 ImageFormat 类中的常量,但这些常量仅适用于相机输出。 (例如,ImageFormat.NV16是YCbCr格式,而COLOR_Format32bitARGB8888是RGB,但两者的数值都是16。)

MediaCodec 用法的一些示例,包括练习 MediaCodec 的 CTS 测试的链接,可以在 here 中找到。 .在某些设备上,您将无法解码来自 ByteBuffer 输出的数据,而必须解码为 Surface

关于android - 从 MediaCodec 解码输出缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18414674/

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