2011-08-06 5 views
1

J'essaie de faire une simulation dans NS2 dans laquelle je lis les fichiers .wav, les code dans gsm et les envoie sur le réseau. J'ai déjà réussi à faire une application qui lit en .wav, encode en gsm et stocke sur le disque dur (testé, fonctionne bien). Maintenant j'essaye de faire la même extension le Network Simulator 2 et j'ai un problème avec av_open_input_file qui dit constamment qu'il n'y a aucun tel fichier, bien que je n'ai eu aucun problème avec ce dossier dans mon application d'encodage de gsm. L'appel que j'utilise:av_open_input_file renvoie -2 mais le fichier existe (libav dans NS2)

av_open_input_file(&pFormatCtx, "/home/xxx/audio_samples/audio.wav", NULL, 0, NULL); 

déjà essayé différents fichiers, hardcoding le chemin, chemin absolu, chemin relatif et de mettre « file: // » devant parce que libav utilise apparemment une sorte de protocole de fichier. Ensuite, j'ai essayé d'ouvrir le fichier avec moi-même:

int desc = open("/home/xxx/audio_samples/audio.wav", O_RDONLY, 0); 

(trouvé cet appel dans file.c de libav qui est censé être appelé par av_open_input_file) Aucun problème avec l'ouverture du fichier comme ça, tout semble ok, alors maintenant je n'ai aucune idée de ce qui pourrait être faux.

Des suggestions?

Meilleures salutations, florencka

Répondre

3

Problème résolu. Il manquait av_register_all() avant d'appeler av_open_input_file. Il n'y avait pas d'avertissement ni d'erreur cependant.

+0

Comment a-t-il pu vous prévenir :) – mmoment

Questions connexes