Je pensais que ce serait une tâche relativement simple avec quelque chose comme FMOD, mais je ne peux pas le faire fonctionner. Même l'exemple de code netstream ne semble pas faire l'affaire. Peu importe ce que je mp3 essaie de jouer avec le programme exemple Netstream, je reçois cette erreur:Streaming MP3 à partir d'Internet avec FMOD
FMOD error! (20) Couldn't perform seek operation. This is a limitation of the medium (ie netstreams) or the file format.
Je ne comprends pas vraiment ce que cela signifie. N'est-ce pas exactement ce que le programme d'exemple netstream était? diffuser un fichier depuis Internet?
Je ne peux pas passer la méthode createSound
result = system->createSound(argv[1], FMOD_HARDWARE | FMOD_2D | FMOD_CREATESTREAM | FMOD_NONBLOCKING, 0, &sound);
EDIT:
C'est ce que j'ai modifié après avoir lu la réponse de Mathew
FMOD_CREATESOUNDEXINFO soundExInfo;
memset(&soundExInfo, 0, sizeof(FMOD_CREATESOUNDEXINFO));
soundExInfo.cbsize = sizeof(FMOD_CREATESOUNDEXINFO);
soundExInfo.suggestedsoundtype = FMOD_SOUND_TYPE_MPEG;
result = system->createSound(argv[1], FMOD_HARDWARE | FMOD_2D | FMOD_CREATESTREAM | FMOD_NONBLOCKING | FMOD_IGNORETAGS, &soundExInfo, &sound);
Je reçois deux erreurs différentes en fonction des fichiers que j'utilise.
Test 1 URL: http://kylegobel.com/test.mp3
Test 1 Erreur: (25) fichier non pris en charge ou le format audio.
Test 2 URL: http://kylegobel.com/bullet.mp3
Test 2 Erreur: (20) Impossible de rechercher l'opération. Ceci est une limitation du support (c.-à-d. Netstreams) ou du format de fichier.
Avant de faire la modification, je pourrais utiliser netstream pour jouer "C: \ test.mp3" qui est le même fichier nommé test.mp3 sur le web, mais cela ne fonctionne plus avec les changements ci-dessus. Peut-être que ces fichiers sont juste dans les mauvais formats ou quelque chose? Désolé pour mon manque de connaissances dans ce domaine, je ne connais pas vraiment le son, mais j'essaie de comprendre.
Merci, Kyle
J'ai édité par votre demande, une idée de pourquoi cela fonctionnerait lors de la lecture du fichier localement? comme c: \ test.mp3 plutôt que http://mysite.com/test.mp3? –
Parce que vous lui dites que le format suggéré est MPEG (qui saute le codec de balise), et que MPEG ne recherche que 4k de données à la recherche de l'audio, il échouera. Vous pouvez utiliser FMOD_MPEGSEARCH pour résoudre ce problème. J'ai aussi édité ma réponse pour que le fichier fonctionne pour vous. –