我正在尝试将 hls 文件转换为 jpeg。首先,我使用openh264将 HLS 文件转换为 YUV。我得到了一个包含 Y、U、V 缓冲区 (*pData[3]) 的二维数组。之后,我尝试将三个数组合二为一,将其传递给CompressYUYV2JPEG。这是我的转换方式:
for(i = 0; i < l; i++) {
inbuf.push_back(yuvData[0][i]);
}
l = bufferInfo.UsrData.sSystemBuffer.iWidth*bufferInfo.UsrData.sSystemBuffer.iHeight/4;
for(i = 0; i < l; i++) {
inbuf.push_back(yuvData[1][i]);
}
l = bufferInfo.UsrData.sSystemBuffer.iWidth*bufferInfo.UsrData.sSystemBuffer.iHeight/4;
for(i = 0; i < l; i++) {
inbuf.push_back(yuvData[2][i]);
}
但不幸的是,它不会产生预期的结果。将二维 YUV 数组转换为一维数组的正确方法是什么?