Bonjour vous tous,

j'ai un problème, j'essaie de créer un CvVideoWriter pour créer une vidéo.

En effet je pars d'une vidéo de base (qui s'affiche dans la fenetre) et je copier l'image dans le CvVideoWriter...

Sauf que le fichier "copie.avi" est vide! Il est bien créé mais vide...

Voici ma méthode:

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
int Tr_video::fen_original(char* nomfichier,int temps)
{
    /* Variables */  
     IplImage *im, *imcp;
 
     CvCapture *avi; 
     /* Ouverture de la video */  
     avi = cvCaptureFromAVI(nomfichier); 
     cvNamedWindow("Originale", CV_WINDOW_AUTOSIZE); 
 
    typedef struct CvVideoWriter CvVideoWriter;
    CvVideoWriter* writer = cvCreateVideoWriter("copie.avi", CV_FOURCC('D','I','V','X'), 25, cvSize(100,100));
 
     while(cvGrabFrame(avi)) 
       { 
       im = cvRetrieveFrame(avi);
 
       /* Traitement de l’image */  
       cvShowImage("Originale", im);
       cvWriteFrame(writer, im);
       cvWaitKey(temps);
       }
       return 1;   
}
Il doit y avoir un coquille avec l'utilisation de cvWriteFrame...

Merci