begin process at 2012 05 30 01:22:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Multimédia

 > 

Packed DIB et BMP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Packed DIB et BMP

vendredi 28 octobre 2005 à 18:11:00 | Packed DIB et BMP

Shadiest

Je souhaite extraire une image d'un fichier AVI pour, par la suite, lui appliquer des transformations

J'utilise donc la fonction "AVIStreamGetFrame" qui retourne (à ce que j'ai compris) un pointeur sur "paquet DIB" qui contient l'entete BITMAPINFOHEADER suivi des informations du Bitmap, je souhaite acceder à ces informations et faire de ma frame un objet de la classe Image décrite ici : http://www.cppfrance.com/code.aspx?id=30768

Le problème est dans ma table qui semble mauvaise... (le fichier créé est illisible)

Le code :
    AVIFileInit();//initialisation
    PAVIFILE avi;
 
    //ouverture du fichier AVI
    AVIFileOpen(&avi, Name, OF_READ, NULL);
    AVIFileInfo(avi, &avi_info, sizeof(AVIFILEINFO)); 

    //Creation du stream
    int streamNumber=0;
    avi_stream=PAVISTREAM();
    AVIFileGetStream(avi, &avi_stream, streamtypeVIDEO, 0);


    PGETFRAME frame;
    frame=AVIStreamGetFrameOpen(avi_stream, NULL);

    unsigned char * pDIB = (unsigned char *) AVIStreamGetFrame(frame, 3);

    Image test;
    test.EcritureEntete(avi_info.dwHeight,avi_info.dwWidth,24);

//Lecture de la table (à ce niveau là que j'ai de serieux doutes...)
    for(int i=0;i<avi_info.dwHeight*avi_info.dwWidth*sizeof(BYTE);i++)
        test.PImage[i]=pDIB[i+sizeof(BITMAPINFOHEADER)];

    test.Sauvegarde("test.bmp");

J'ai retirer les tests de validité du fichier pour que ça soit plus clair

Merci d'avance pour votre aide !
vendredi 28 octobre 2005 à 18:32:34 | Re : Packed DIB et BMP

Shadiest


    P.S :
         test.EcritureEntete(avi_info.dwWidth,avi_info.dwHeight,24);

     Et non le contraire, ça n'enleve rien à mon probleme mais l'image est lisible mais n'est pas correcte...
vendredi 28 octobre 2005 à 18:35:25 | Re : Packed DIB et BMP

Shadiest

Réponse acceptée !
J'ai trouvé l'erreur :

for(int i=0;i<avi_info.dwHeight*avi_info.dwWidth*sizeof(BYTE);i++)

for(int i=0;i<avi_info.dwHeight*avi_info.dwWidth*sizeof(BYTE)*3;i++) car il y a trois composante RVB ...

J'espere au moin que ce topic aidera quelqu'un...


Cette discussion est classée dans : fichier, test, frame, stream, avi


Répondre à ce message

Sujets en rapport avec ce message

lecture d'un fichier avi en cliquant sur un bouton de dialogue box [ par brrouabdellah ] je cherche également comme un Monsieur à écrire un simple fichier en c++ avec un dialogue box avec des boutons pour la lecture d'une fichier vidé avi. lecture d'un fichier avi comprenant un clip vidéo et non une animation par des boutons de dialogue box ou contrôleur MCI avec le langage c++ [ par brrouabdellah ] je trouve des difficultés à réaliser un programme en c++ qui peut lire un fichier avi comprenant un clip vidéo et non une animation. Mr Vieuxlion a ré Pb de copie de fichier/taille de structure [ par wannie ] Salut tt le monde. Quelqu'un pourrai tester mon prog est me dire si ça fonctionne. Moi je comprend pas j'ai une copie d'un caractère dans chaque ligne Initialisation tableau dans un Header ? [ par Capa6T ] Salut,J'ai fait un programme en C qui doit me générer un fichier header (genre test.h) que je pourrais insérer dans un autre projet en C.Ce Header doi test sur variable de type char [ par enrageur ] j'aimerais indetifier des mots dans un fichier txt. J'ouvre le fichier et je le copy dans un char (data). Ensuite je fais un test pour voir si les deu Lire un fichier avi (ou autre) avec SDL [ par koyott_sup ] Bonjour,J'aimerai savoir comment lire un fichier avi (divx) , ou un autre format video, avec la SDL pour afficher la séquence dans une SDL_SurfaceBut Extraire url d'un fichier [ par oeil123 ] J'ai fait ce peit bout de code mais malheureusement il y a plusieurs ligne dans le fichier. Donc je n'ai que la premiere url et j'aimerai éviter une b Debutant : test NULL en C++ [ par Spacekiller ] Bonjour, voila je suis debutant et j'ai quelques problemes avec les fichiers.Lorsque je veux tester si un fichier n'existe ou pas j'ai toujour une err creation d'un fichier avi avec plusieur avi [ par gregbds ] bonjour je voudrais créer un fichier video avi à partir de plusieur morceaux de fichier avi mis bout à bout. Je recherche se petit programme pour l'in MCI pour lire un fichier avi [ par chamoine ] J'aimerai lire des fichiers avi dans mon prog. Pour cela je voulai utiliser le MCI mais je n'y arrive pas. Le but de mon code est de pouvoir lire un f


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales