Как конвертировать IpLImage в SDL_Surface.
Я использовал это post
для преобразования изображения с 8 nChannels, и оно отлично работало, но когда я пытаюсь сделать это с изображением одного nChannel, на консоли отображается следующее сообщение:
Depth 8, nChannels 1, pitch 640
Unable to convert the IplImage image ! SDL Error: Unknown pixel format
И вот код, который я использовал:
int pitch = colored_capture->nChannels * colored_capture->width;
printf("Depth %d, nChannels %d, pitch %d\n", colored_capture->depth,
colored_capture->nChannels, pitch);
surface_1 = SDL_CreateRGBSurfaceFrom((void*)colored_capture->imageData,
colored_capture->width,
colored_capture->height,
colored_capture->depth * colored_capture->nChannels,
colored_capture->widthStep,
0x0000ff, 0x00ff00, 0xff0000, 0);
if (surface_1 == NULL)
{
fprintf ( stderr ,"Unable to convert the IplImage image ! SDL
Error: %s \n", SDL_GetError());
}