У меня такое ощущение, что я упускаю что-то простое здесь ...
У меня есть приложение AR, которое отображает 3D-объект при обнаружении маркера. Объект - это просто плоский трехмерный прямоугольник, с которым я могу без проблем связать текстуры изображения. Однако мне нужно связать видеофайл (.m4v) в качестве текстуры объектов. Я успешно читаю файл с AVAssetReader , однако при привязке текстуры таким образом, объект просто выглядит белым.
CMSampleBufferRef sampleBuffer = [mOutput copyNextSampleBuffer];
CVImageBufferRef pixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);
CVPixelBufferLockBaseAddress( pixelBuffer, 0 );
glBindTexture(GL_TEXTURE_2D, texture);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 320, 240, 0, GL_BGRA, GL_UNSIGNED_BYTE, CVPixelBufferGetBaseAddress(pixelBuffer));
CVPixelBufferUnlockBaseAddress( pixelBuffer, 0 );
CFRelease(sampleBuffer);
Буду признателен за любую помощь, которую вы можете оказать. Спасибо!