Визуализация AVFrame RGB565 в SDL - PullRequest
0 голосов
/ 20 марта 2019

Я работаю над декодером H264, я хочу декодировать данные в формате родного изображения в RGB565 и визуализировать это изображение в SDL.

struct SwsContext *sws_ctx = NULL;
int frameFinished;
AVPacket packet;
// initialize SWS context for software scaling
sws_ctx = sws_getContext(pCodecCtx->width,
    pCodecCtx->height,
    pCodecCtx->pix_fmt,
    pCodecCtx->width,
    pCodecCtx->height,
    PIX_FMT_RGB565,
    SWS_BILINEAR,
    NULL,
    NULL,
    NULL
    );

avcodec_decode_video2(pCodecCtx, pFrame, &frameFinished, &packet);

// Convert the image from its native format to RGB
sws_scale(sws_ctx, (uint8_t const * const *)pFrame->data,
          pFrame->linesize, 0, pCodecCtx->height,
          pFrameRGB->data, pFrameRGB->linesize);

Теперь у нас есть данные rgb565 в PFrameRGB . Может ли кто-нибудь помочь мне отобразить эти данные RGB565 в SDL, используя SDL_CreateRGBSurfaceFrom .

...