modvlc problemas

Started by MisterN, November 01, 2012, 11:13:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

MisterN

Necesito ayuda con eso. Hice un proceso llamado cutscene();

process cutscene(string moviefile);
private
    string fname;
    int time=0, delay=30, timend=300;
begin
    z = -100;
    x = 160; y = 120;
   
    fname = moviefile;
   
    dump_type=complete_dump;
    restore_type=complete_restore;
   
    graph = video_play(fname, 320, 240);
   
    while(! video_is_playing()) // Wait for the video to actually start
        FRAME;
    end;
   
    loop
        if(timer[0] > time+delay)
            if(key(_space))
                video_pause();
                time = timer[0];
            end
        end
        if(timend>0)
            timend--;
        else
            signal(id,s_kill);
        end
    frame;end
end
No puedo hacer que el proceso cargue el archivo de pelicula (se llama "test.mov", esta en una carpeta llamada "FILES"). A menos que desde el principio se cargue en main. Ahora estoy experimentando con esto, introducier un codigo primero en el proceso principal hace esto:

ChDir("FILES\");
say(CD());
ChDir("..\");
say(CD());

Ahora, si agrego
cutscene("test.mov");
Entre las lineas 2 y 2, sale este error

Si lo agrego despues de la 4 ta linea y hago
cutscene("FILES\test.mov");

De alguna forma funciona. Esto es muy confuso, pero como que no puedo introducir este tipo de codigo cuando mi motor de juego tiene el directorio en "FILES" en todo momento excepto cuando se carga un efecto de sonido, cancion, fondo, o nivel. Incluso intente poner la carpeta en "FILES" eh intente varias carpetas distintas, incluso una carpeta "MOVIES", pero no funciona. Esto es muy raro.

Es un error? Gracias. Estoy usando el ejemplo de dll incluido en bennupack como un tutorial.
werg

alex

no te entiendo muy bien, pero creo que si lo dejas como una funcion así:
function cutscene(string moviefile);
private
    string fname;
    int time=0, delay=30, timend=300;
begin
    z = -100;
    x = 160; y = 120;
   
    fname = moviefile;
   
    dump_type=complete_dump;
    restore_type=complete_restore;
   
    graph = video_play(fname, 320, 240);
   
    while(! video_is_playing()) // Wait for the video to actually start
        FRAME;
    end;
   
    loop
        if(timer[0] > time+delay)
            if(key(_space))
                video_pause();
                time = timer[0];
            end
        end
        if(timend>0)
            timend--;
        else
            signal(id,s_kill);
        end
    frame;end
end


No te pide main, y creo que debería ir bien.

MisterN

werg

MisterN

it works when you set change the directory back to the default directory
werg

josebita

Quote from: DoctorN on November 04, 2012, 10:10:28 PM
it works when you set change the directory back to the default directory
Does the example included in this download work for you?
http://code.google.com/p/bennugd-vlc/downloads/detail?name=bennugd-module-vlc_ogv-1.1.4.7z