libvisual INFO: ./madrigal-server: Video initialized libvisual INFO: ./madrigal-server: ==== Video ==== libvisual INFO: ./madrigal-server: Screen BPP : 32 libvisual INFO: ./madrigal-server: Vendor : Tungsten Graphics, Inc libvisual INFO: ./madrigal-server: Renderer : Mesa DRI Intel(R) 845G 20050225 libvisual INFO: ./madrigal-server: Version : 1.3 Mesa 6.5.1 libvisual DEBUG: ./madrigal-server: main() [(madrigal-server.c,118)]: pointer to the pixels: 0xa60d5008 libvisual DEBUG: ./madrigal-server: main() [(madrigal-server.c,121)]: pitch: 3200 libvisual DEBUG: ./madrigal-server: visual_bin_set_depth() [(lv_bin.c,423)]: old: 0 new: 8 libvisual DEBUG: ./madrigal-server: visual_bin_sync() [(lv_bin.c,297)]: starting sync libvisual DEBUG: ./madrigal-server: visual_bin_sync() [(lv_bin.c,331)]: setting new video from actvideo 8 4 libvisual DEBUG: ./madrigal-server: visual_bin_sync() [(lv_bin.c,340)]: one last video pitch check 3200 depth old 0 forcedmain 8 noevent 0 libvisual INFO: ./madrigal-server: negotiating plugin Jakdaw plugin libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,254)]: Param changed: zoom mode libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,258)]: New value for the zoom mode param: 0 libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,254)]: Param changed: plotter trigger libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,266)]: New value for the plotter trigger param: 2 libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,254)]: Param changed: plotter type libvisual DEBUG: ./madrigal-server: act_jakdaw_events() [(actor_jakdaw.c,273)]: New value for the plotter type param: 0 libvisual DEBUG: ./madrigal-server: visual_bin_sync() [(lv_bin.c,354)]: pitch after main actor negotiate 3200 libvisual DEBUG: ./madrigal-server: visual_bin_sync() [(lv_bin.c,382)]: end sync function ---- int main(int argc, char *argv[]) { const SDL_VideoInfo *info; visual_init(&argc, &argv); atexit(visual_atexit); visual_log_set_verboseness(VISUAL_LOG_VERBOSENESS_HIGH); if(SDL_Init(SDL_INIT_VIDEO) < 0) { visual_log(VISUAL_LOG_CRITICAL, "Cannot initialize video"); return 1; } atexit(SDL_Quit); visual_log(VISUAL_LOG_INFO, "Video initialized"); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 5); SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 5); SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16); SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); info = SDL_GetVideoInfo(); screen = SDL_SetVideoMode(800, 600, info->vfmt->BitsPerPixel, SDL_OPENGLBLIT|SDL_HWSURFACE); if(!screen) { visual_log(VISUAL_LOG_CRITICAL, "Video mode set failed: %s", SDL_GetError()); return 1; } visual_log(VISUAL_LOG_INFO, "==== Video ===="); visual_log(VISUAL_LOG_INFO, "Screen BPP : %d", SDL_GetVideoSurface()->format->BitsPerPixel); visual_log(VISUAL_LOG_INFO, "Vendor : %s", glGetString(GL_VENDOR)); visual_log(VISUAL_LOG_INFO, "Renderer : %s", glGetString(GL_RENDERER)); visual_log(VISUAL_LOG_INFO, "Version : %s", glGetString(GL_VERSION)); bin = visual_bin_new(); visual_bin_set_supported_depth(bin, VISUAL_VIDEO_DEPTH_ALL); video = visual_video_new (); if(visual_video_set_depth(video, VISUAL_VIDEO_DEPTH_16BIT) < 0) { visual_log(VISUAL_LOG_CRITICAL, "Cannot set video depth"); return 1; } visual_video_set_dimension(video, 800, 600); if(visual_bin_set_video(bin, video) < 0) { visual_log(VISUAL_LOG_CRITICAL, "Cannot set video"); return 1; } visual_video_set_buffer(video, screen->pixels); visual_log(VISUAL_LOG_DEBUG, "pointer to the pixels: %p", screen->pixels); visual_video_set_pitch(video, screen->pitch); visual_log(VISUAL_LOG_DEBUG, "pitch: %d", video->pitch); visual_bin_connect_by_names(bin, "jakdaw", "alsa"); /* input = visual_bin_get_input (bin); ret = visual_input_set_callback (input, visual_upload_callback, NULL); if (ret < 0) { visual_log (VISUAL_LOG_CRITICAL, _("Cannot set input plugin callback")); return -1; }*/ visual_bin_switch_set_style(bin, VISUAL_SWITCH_STYLE_MORPH); visual_bin_switch_set_automatic(bin, TRUE); visual_bin_switch_set_mode(bin, VISUAL_MORPH_MODE_TIME); visual_bin_switch_set_time(bin, 4, 0); visual_bin_realize(bin); visual_bin_sync(bin, FALSE); while(1) { visual_video_set_buffer (video, screen->pixels); visual_bin_run(bin); SDL_Flip(screen); //SDL_GL_SwapBuffers(); } return 0; }