lundi 26 mai 2014

Handling 1280 * 720 [ hd version ] size of Frame in SDL2 how to?


Vote count:

0




Is this the right way of creating texture to render 1280*720 [ hd version] image?


I am receiving the packet from RTSP server through ffmpeg, and decoding and getting frame.


To render i follow the below steps.



SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER);

screen = SDL_CreateWindow("TEST APPLICATION", SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED, 0, 0,
SDL_WINDOW_SHOWN | SDL_WINDOW_FULLSCREEN);

bmp = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_IYUV, SDL_TEXTUREACCESS_STREAMING, 1280, 720);

SDL_RenderSetLogicalSize(renderer, 1280, 720);


while (1)
{
Handling SDL Event. ->
for (;;) {
while ( SDL_PollEvent(&event))
switch (event.type) {
case SDL_QUIT:
case SDL_KEYDOWN:
SDL_Quit ();
exit (0);
break;
case DISPLAY_IMAGE:
SDL_UpdateYUVTexture(bmp, NULL, pFrame->data[0],
pFrame->linesize[0], pFrame->data[1],
pFrame->linesize[1],
pFrame->data[2], pFrame->linesize[2]);

SDL_RenderClear(renderer);
SDL_RenderCopy(renderer, bmp, NULL, NULL);
SDL_RenderPresent(renderer);
break;
}

}


Also, From some other thread, i will push the event like:



SDL_Event event;
event.type = DISPLAY_IMAGE;
SDL_PushEvent (&event);


Kindly tell me if this is the right practice ?



asked 1 min ago

Whoami

2,284





Aucun commentaire:

Enregistrer un commentaire