伙计们,
在我的 Android 应用程序中,需要在 Canvas 视图上显示来自外部源的视频流。从我的 Java 代码中,我通过 JNI 将 ByteBuffer 传递给底层 C++ 库。该库对流进行解码并在 ByteBuffer 中构建一个 RGB 位图图像并将其返回。
现在,在我的 Java 代码中,我有一个 ByteBuffer,其中包含 RGB 值的宽度、高度和行。我现在可以在 for 循环中绘制它:
for(int y=0;y<height;y++) {
for(int x=0;x<width;x++) {
get the right RGB value from ByteBuffer and draw the pixel
}
}
我想知道是否有更有效的方法来做到这一点?任何想法,将不胜感激。
ByteBuffer 数据的布局在我的控制之下。也许我可以重新安排它以获得更好的性能。
预先感谢您的帮助。
问候,
彼得