bonjour,
j'ai le code suivant qui me permet d'intégrer un effet video/animation dans l'un de mes programmes.
Problème : je suis obligé d'écrire sur le disque la video avant de la lire car je suis limité par le composant MediaPlayer1 qui ne veut pas lire depuis une TMemoryStream
Quelqu'un sait-il s'il est possible de lire directement la memorystream sans passer par un fichier intermédiaire ( qui me fait perdre du coup l'avantage que j'avais de l'intégrer en ressource dans mon .EXE )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 /*! Charger le film */ TMemoryStream *a; a= new TMemoryStream(); // chargement de la video depuis les ressources HRSRC hRsrc; HGLOBAL hGlob; hRsrc = FindResource(NULL, L"Video1", RT_RCDATA); if (hRsrc == NULL)exit(EXIT_FAILURE); hGlob = LoadResource(NULL, hRsrc); if (hGlob == NULL)exit(EXIT_FAILURE); a->Write(hGlob, SizeofResource(NULL, hRsrc)); a->SaveToFile("patcheur.wmv"); delete a; this->MediaPlayer1->FileName="test.wmv"; this->MediaPlayer1->Open(); this->MediaPlayer1->Position=0; // memoriser la position de la fenetre de depart Position_Fenetre_X=this->Left; Position_Fenetre_Y=this->Top;
Partager