getOutputBuffers返回值类型为什么可以是uint8_t *
时间: 2024-02-24 21:11:38 浏览: 156
uint128_t:C ++无符号128位整数类型
在 Android 中,getOutputBuffers 方法返回的类型是 ByteBuffer[],而不是 uint8_t*。uint8_t* 是 C/C++ 中的指针类型,用于表示一个内存地址,而 ByteBuffer[] 是 Java 中的数组类型,用于表示一组 ByteBuffer 对象。在 JNI 编程中,我们可以通过使用 Java 中的 ByteBuffer 类型和 C/C++ 中的 uint8_t* 类型之间的转换方法来实现在 Java 和 C/C++ 之间传递数据。因此,如果需要在 C/C++ 程序中使用 MediaCodec 的输出缓冲区,可以将 ByteBuffer 对象转换为 uint8_t* 类型,但这需要使用 JNI 接口和相关的转换方法。
阅读全文