}
int create_video_surface(void) {
+ float q;
DFBSurfaceDescription desc;
DFBVideoProviderCapabilities caps;
dfb->CreateVideoProvider(dfb,dfb_video_dev,&video_provider);
video_provider->GetSurfaceDescription(video_provider,&desc);
+ q=(((float)screen_height/desc.height>=(float)screen_width/desc.width)?
+ (float)screen_height/desc.height:(float)screen_width/desc.width);
+ desc.width=(int)(screen_width/q);
+ desc.height=(int)(screen_height/q);
video_provider->GetCapabilities(video_provider,&caps);
printf("video capabilities: %x\n",caps);
dfb->CreateSurface(dfb,&desc,&video);
}
DVFrameCallback video_callback(void) {
- primary->StretchBlit(primary,video,NULL,NULL);
- // flip_it;
+ puts("callback flip");
+ flip_it;
return DFENUM_OK;
}
create_primary_surface();
- create_video_surface();
- // create_logo_surface();
+ // create_video_surface();
+ create_logo_surface();
get_primary_surface_size();
printf("primary surface width/height: %d/%d\n",screen_width,screen_height);
clear_screen(primary);
puts("main: blit video");
- blit_video();
- // blit_logo();
+ // blit_video();
+ blit_logo();
// puts("main: flip");
- // flip_it();
+ flip_it();
sleep(10);