Problème Libvorbis avec Mingw
Bonjour à tous
Actuellement, je travaille sur la conception d'un petit jeu sous windows. En ce qui concerne le son, je souhaiterai utiliser la libvorbis et libogg. (la libogg est nécessaire à la compilation de la libvorbis)
Je compile sans soucis les deux libs et j'essai un petit programme de test :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "vorbis/codec.h"
#include "vorbis/vorbisfile.h"
#include <iostream>
#include <io.h>
#include <fcntl.h>
char pcmout[4096];
int main(int argc, char **argv)
{
OggVorbis_File vf;
FILE * fic;
fic=fopen("./menu.ogg","rb");
if(fic)
{
std::cerr<< "prout" << std::endl;
}
//ici j'ai testé les deux fonction suivantes et j'obtiens la même erreur
//if(ov_open_callbacks(fic, &vf, NULL, 0, OV_CALLBACKS_DEFAULT) < 0)
if(ov_fopen("./menu.ogg",&vf)<0)
{
fprintf(stderr,"Input does not appear to be an Ogg bitstream.\n");
exit(1);
}
else
{
std::cerr<< "youpi on a ouvert" << std::endl;
}
ov_clear(&vf);
fprintf(stderr,"Done.\n");
return(0);
} |
A la compilation aucun problème, mais lorsque je lance lance le programme j'ai un segmentation fault au moment de l'appel de ov_fopen ou ov_open_callbacks (dans les deux cas).
j'ai lancé gdb pour essayer d'avoir plus d'information :
(gdb) bt
#0 0x77509e03 in ntdll!RtlEncodePointer () from C:\Windows\SysWOW64\ntdll.dll
#1 0x77509d12 in ntdll!RtlEncodePointer () from C:\Windows\SysWOW64\ntdll.dll
#2 0x60866fa3 in msys-1.0!cfsetispeed ()
from C:\MinGW\msys\1.0\bin\msys-1.0.dll
#3 0x00000002 in ?? ()
#4 0x0028fad8 in ?? ()
#5 0xfffffffc in ?? ()
(gdb)
merci gdb ^^
J'ai essayé de recompiler les libs sans observer le moindre changement
est-ce que quelqu'un aurait la moindre idée de ce que j'ai raté?
merci de votre attention