sdl說明:
選擇
工程配置:
* * 雷霄驊 lei xiaohua
* 中國傳媒大學/數碼電視技術
* communication university of china / digital tv technology
* * * api(direct3d,opengl)的封裝,使用起來明顯簡單於直接呼叫底層
* api。
* * 函式呼叫步驟如下:
* * [初始化]
* sdl_init(): 初始化sdl。
* sdl_createwindow(): 建立視窗(window)。
* sdl_createrenderer(): 基於視窗建立渲染器(render)。
* sdl_createtexture(): 建立紋理(texture)。
* * [迴圈渲染資料]
* sdl_updatetexture(): 設定紋理的資料。
* sdl_rendercopy(): 紋理複製給渲染器。
* sdl_renderpresent(): 顯示。
* * this software plays rgb/yuv raw video data using sdl2.
* use sdl is much easier than directly call these low-level api.
* * the process is shown as follows:
* * [init]
* sdl_init(): init sdl.
* sdl_createwindow(): create a window.
* sdl_createrenderer(): create a render.
* sdl_createtexture(): create a texture.
* * [loop to render data]
* sdl_updatetexture(): set texture's data.
* sdl_rendercopy(): copy texture to render.
* sdl_renderpresent(): show.
*/#include extern "c"
;const int bpp=12;
int screen_w=500,screen_h=500;
const int pixel_w=320,pixel_h=180;
unsigned char buffer[pixel_w*pixel_h*bpp/8];
//refresh event
#define refresh_event (sdl_userevent + 1)
#define break_event (sdl_userevent + 2)
int thread_exit=0;
int refresh_video(void *opaque)
thread_exit=0;
//break
sdl_event event;
event.type = break_event;
sdl_pushevent(&event);
return 0;
}int main(int argc, char* ar**)
sdl_window *screen;
//sdl 2.0 support for multiple windows
screen = sdl_createwindow("******st video play sdl2", sdl_windowpos_undefined, sdl_windowpos_undefined,
screen_w, screen_h,sdl_window_opengl|sdl_window_resizable);
if(!screen)
sdl_renderer* sdlrenderer = sdl_createrenderer(screen, -1, 0);
uint32 pixformat=0;
//iyuv: y + u + v (3 planes)
//yv12: y + v + u (3 planes)
pixformat= sdl_pixelformat_iyuv;
sdl_texture* sdltexture = sdl_createtexture(sdlrenderer,pixformat, sdl_textureaccess_streaming,pixel_w,pixel_h);
file *fp=null;
fp=fopen("test_yuv420p_320x180.yuv","rb+");
if(fp==null)
sdl_rect sdlrect;
sdl_thread *refresh_thread = sdl_createthread(refresh_video,null,null);
sdl_event event;
while(1)
sdl_updatetexture( sdltexture, null, buffer, pixel_w);
//fix: if window is resize
sdlrect.x = 0;
sdlrect.y = 0;
sdlrect.w = screen_w;
sdlrect.h = screen_h;
sdl_renderclear( sdlrenderer );
sdl_rendercopy( sdlrenderer, sdltexture, null, &sdlrect);
sdl_renderpresent( sdlrenderer );
}else if(event.type==sdl_windowevent)else if(event.type==sdl_quit)else if(event.type==break_event)
} sdl_quit();
return 0;
}原始碼位置:
使用說明 附註工具使用說明
附註工具使用說明 附註工具用途 附註工具主要用於更新利用word附註應用程式生成的帶域 的附註,該工具在word右鍵 更新鏈結 的基礎上進行了優化,故在使用時,不能再利用word右鍵 更新鏈結 而要用本工具的 更新當前鏈結 或 更新所有鏈結 使用說明 一 更換路徑 當利用word附註應用程式生成帶域...
使用說明 農用遮光網使用說明
農用遮光網使用說明 建築防塵網購買方 建築施工企業 在購買建築防塵網時,應該對 作出比較,可以分辨品牌 型號,且購買時應該在一定程度上了解信譽良莠。建築防塵網購買方 市場售賣方 在選購建築防塵網時,可以把 作為基礎,好的 可以用來彌補信譽不足,而差的 則需要按照你的服務收費。農用遮光網使用說明 用途...
Hibernate tools 使用說明
05年的8月份第一次接觸hibernate tools,使用起來感覺還不錯,但也沒有深入研究,後來由於一直在做乙個專案,再後來用了一陣myeclipse,現在換了公司,使用wtp all in one eclipse的乙個版本 生成domain的時候使用了hibernate tools,發現都不知怎...