Utilisation CPU et temps en FMOD en C

Fermé
tinou98 Messages postés 43 Date d'inscription samedi 11 août 2012 Statut Membre Dernière intervention 24 avril 2013 - 24 nov. 2012 à 10:56
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 30 nov. 2012 à 17:45
Bonjour,
J'aimerais calculer l'utilisation du CPU en %.
J'aurais aussi besoin du temps total d'une musique et le temps restants de la musique ou le temps déjà lu.
Merci


A voir également:

2 réponses

Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
26 nov. 2012 à 22:25
Bonjour,

Pour récupérer l'utilisation du cpu :
float FSOUND_GetCPUUsage();

Pour la durée totale en millisecondes (faut faire la conversion h/m/s..) :
int FSOUND_Stream_GetLengthMs(FSOUND_STREAM *)

Pour la durée écoulée (pareil à convertir de millisecondes en h/m/s) :
int FSOUND_Stream_GetTime(FSOUND_STREAM *)
0
tinou98 Messages postés 43 Date d'inscription samedi 11 août 2012 Statut Membre Dernière intervention 24 avril 2013 24
27 nov. 2012 à 18:30
Merci mais il me met ces erreur :
error: 'FSOUND_Stream_GetLengthMs' was not declared in this scope
error: 'FSOUND_Stream_GetTime' was not declared in this scope
error: 'FSOUND_GetCPUUsage' was not declared in this scope
0
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
Modifié par Hxyp le 30/11/2012 à 18:27
Vous avez peut-être oubliez d'ajouter l'header fmod.h

je vous ai fait un exemple tout simple :

Le fichier main.c :

#include <stdio.h>
#include "fmod.h"
void info(FSOUND_STREAM *fs)
  {
    float cpu;
    int temps,temps_actu;
    cpu = FSOUND_GetCPUUsage();
    temps = FSOUND_Stream_GetLengthMs(fs);
    temps_actu = FSOUND_Stream_GetTime(fs);
    fflush(stdout);
    printf("\r[fmod_cpu %f]\t[mp3 %d\t/\t%d]",cpu,temps,temps_actu);
  }

int main(int argc, char* argv[])
  {
    FSOUND_STREAM *mp3;
    FSOUND_Init(44100, 32, 0);
    mp3=FSOUND_Stream_Open("musique.mp3",FSOUND_NORMAL,0,0);
    FSOUND_Stream_Play(0,mp3);
    FSOUND_SetVolume(0,128);
    while(1){
        info(mp3);
        _sleep(500);
    }
    return 0;
  }


Ce main.c est dans un dossier et dans ce dossier j'ai mis les header de la lib fmod ce qui explique le #include "fmod.h", dans ce même dossier où se trouve ces fichier il y a la dll fmod.dll (dc sous windows) et un fichier musique.mp3 (une musique.), et aussi un dossier "lib" dans lequel j'ai mis la libfmod.a qui permet de linker.
Pour compiler alors avec gcc ça peut se faire ainsi :
c:\mingw\bin\gcc main.c -o main.exe -L./lib -lfmod
ou sous linux
gcc main.c -o main -L./lib -lfmod

après ça dépend où vous avez mis fmod.. sous linux ça sera tout simple normalement elle s'installe d'elle même avec un apt-get install je pense après y a plus qu'à #include <fmod.h> et linker -lfmod à la compilation
0