Aller au contenu

Lire MP3 en tant que resource

Featured Replies

Posté(e)

bonjour,

j'aimerai lire un fichier mp3 via une resource

pour le moment, j'ai playsound, qui le fait bien, mais que pour les .wav

avec un fichier mp3, playsound ne me genere pas d'erreur, mais il ne genere pas de son non plus

et avec MCIWndCreate et MCIWndPlay, j'arrive à lire des mp3, mais seulement en tant que fichier externe

comment faire ?

merci

Posté(e)

Une solution (un peu bidouille je te l'accorde) serait au moment de l'execution de récupérer ton fichier mp3 dans les ressources et de l'enregistrer en tant que fichier externe ensuite. Et à la fin de virer ce fichier mp3 temporaire.

DWORD nSize;
HGLOBAL hGlob;
PVOID pData;
HMODULE hMod(AfxGetResourceHandle());

HRSRC hRes = FindResource(hMod, MAKEINTRESOURCE(IDR_TON_MP3_RESOURCE), _T("TYPE_RESOURCE"));

if (hRes != NULL)
{
  nSize = SizeofResource(hMod, hRes);
  hGlob = LoadResource(AfxGetResourceHandle(), hRes);
  pData = ::LockResource(hGlob);
}

CFile mp3;

mp3.Open("toto.mp3", CFile::modeCreate | CFile::modeWrite);
mp3.Write(pData, nSize);
mp3.Close();

Y'a du mfc dans le lot un peu ^^

Je te laisse remettre ça à ta sauce ;)

Posté(e)
  • Auteur

mouais c'est barbare comme methode :transpi:

je verrai ca, si je trouve pas mieux :transpi:

il n'y a pas une methode de windows qui accepte un handle de fichier comme paramètre ?

(comme playsound, mais qui sache lire les mp3)

Posté(e)
  • Auteur

Sinon y'a la lib fmod qui gère le mp3. A voir si elle accepte direct une resource.

oui, mais je voudrais me passer d'une librairie externe

windows doit faire ca + ou - en natif avec Media Player ??

sinon, je vais me faire un fichier à coté contenant tous mes mp3

avec un pointeur qui se baladera dans le fichier

Posté(e)

Je t'avoue qu'à part ma méthode de bourrin je vois pas trop ^^

J'ai pas eu trop le temps de réfléchir mais bon ^^

Bonne chance en tout cas :arrow:

Posté(e)

mOOt

Ta signature "en recherche d'un nouveau poste...". La page linkée affiche une erreur "stack overflow at line: 64"

Ca fait pas sérieux :francais:

Posté(e)
  • Auteur

bon j'ai choisi la solution de lire un fichier externe

seul probleme : comment lire un fichier son de l'octet X à l'octet Y ? (sans extraire la partie :dd: )

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.