begin process at 2012 05 29 16:19:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Multimédia

 > 

Position Trackbar wave c++


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

Position Trackbar wave c++

dimanche 11 janvier 2009 à 22:05:16 | Position Trackbar wave c++

csauvane

Bonjour,
Je suis en train de coder une application qui traite les son .wav.
J'ai un petit probleme avec la representation de la barre de progression du son.
En effet, je voudrais representer une "trackbar" qui suis le son pendant qu'il s'execute.
J'utilise le code suivant:

// position du curseur (tous les 200ms) sur une echelle de 2000 unitÈs
// int length=MP1->Length;
MMTIME wavePosition;
wavePosition.wType = TIME_MS;
waveOutGetPosition(&projectWaveHandle, &wavePosition, sizeof(MMTIME));

// DataSize is total size in bits
// so we need position in bytes
// pos is position in ms
int pos = wavePosition.u.ms;

Memo1->Lines->Add("pos: "+String(wavePosition.u.ms)+" DataSize: "+String(DataSize));       
       
Je m'attends a avoir une valeur de pos qui evolue, mais je me retrouve avec une constante. (Je l'affiche toutes les 200ms).

Quelqu'un sait-il d'ou provient le probleme? et eventuellement comment le resoudre?

Merci,

Colin Sauvanet,

Développeur occasionnel
dimanche 11 janvier 2009 à 22:45:15 | Re : Position Trackbar wave c++

nanonavich


GetPosition()
{
   
    
    MMTIME mmt;
    mmt.wType = TIME_MS;
    waveOutGetPosition(m_hWaveOut, &mmt, sizeof(MMTIME));
    if(mmt.wType==TIME_MS)
        return mmt.u.ms;
    else if(mmt.wType==TIME_BYTES)
    {
        double d;
        d = (double)mmt.u.cb/(double)m_wfx.nAvgBytesPerSec;
        return (DWORD)(d*1000);
    }
    
    return 0;
}
lundi 12 janvier 2009 à 12:17:59 | Re : Position Trackbar wave c++

csauvane

Non, ça ne fonctionne pas. L'erreur doit venir de la structure de donnée qui ne doit pas être correcte ? (pourtant la fonction waveOutWrite arrive à lire correctement le fichier)
lundi 12 janvier 2009 à 19:50:18 | Re : Position Trackbar wave c++

csauvane

Après une petit journée de recherche, je pense que c'est surtout parce que l'on ne maîtrise pas assez la structure des wave. Quelqu'un sait-il comment lire correctement les données brutes qu'il y a dans le tableau de caractères DataChunk ? (on comprend la structure, mais comment récupérer les bits du tableau de caractères ?)

Si j'ai besoin d'être plus clair, dites le moi...

Colib
mardi 13 janvier 2009 à 14:24:15 | Re : Position Trackbar wave c++

csauvane

Réponse acceptée !
J'utilisais mal la fonction waveOutGetPosition, retirer le passage par référence :

waveOutGetPosition(projectWaveHandle, &wavePosition, sizeof(MMTIME));

et non pas

waveOutGetPosition(&projectWaveHandle, &wavePosition, sizeof(MMTIME));


Cette discussion est classée dans : ms, position, pos, trackbar, waveposition


Répondre à ce message

Sujets en rapport avec ce message

probleme de slider [ par shadow1779 ] Bonjour,pour mon mp3 je me suis fais un slider pour fais l'avancement de la position, j'ai donc dans mon WM_INITDIALOG ceci://initialisation de la pos Problème de réinitialisation lorsque l'on ferme par la croix rouge [ par ag1987 ] Bonjour,Je programme en C++ avec Microsoft Visual C++ 6.0, et je travail sur un projet qui utilise les MFC.J'ai un problème de réinitialisation lorsqu comment avoir la position du ScrollBars dans richTextBox [ par Billyjijel ] ma question et comment connaître la position d'un scroll vertical à tous moment et merci d'avance masquez la fenetre de commande ms-dos [ par debjo ] bonsoir, j'ai créé un programme en c++, et j'effectue une commande "ping" et je voudrais savoir si il est possible de masquer la fenêtre de commande aide jeux par C [ par ousous09 ] voila, quand je compile ca me donne cette erreur size of indefined or zero j'ai rien compris voila mon programme en C #include #include #include traitement d'un fichier [ par boualiasma ] Salut,J'ai un fichier texte bien formé contient deux champs: objet et attribut.tous les objets sont des entiers et tous les attributs sont de chaines Trouver la position d'un caractère dans une chaine [ par katerson ] Bonjour, J'aimerai avoir votre avis sur le problème suivant : Ma chaine se formatte de la façon suivante: "RD-AAA=?" - AAA étant 3 lettres variables Obtenir la position actuelle du pointeur en utilisant l'interface IStream [ par khaliloenit ] Salut, J'essaie d'obtenir la [b]position actuelle[/b] de pointeur dans le flux ([b]IStream[/b] Interface) avec la méthode [b]Seek [/b](IStream::Seek) moteur physique [ par Jackyzgood ] Bonjour à tous ! J'essaye actuellement de créer une fonction qui me gère des trajectoires simple dans un champ de pesanteur avec rebond. Mon problème Deplacement de plusieurs sprites à l'écran (SDL) [ par rasolofomanana ] Bonjour à tous, je débute en C et j'essaie de créer un programme où l'on peut déplacer plusieurs sprites à l'écran, par cases de 40px. Le problème es


Nos sponsors


Sondage...

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,265 sec (3)

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