Salut,
J'ai réussi à lire un son avec openal en streaming, mais quand je crée un thread pour jouer le son je vois que mon cpu est presque à 100%
vous avez une petite idée pour diminuer l'usage du cpu ?
voici comment je fais appel au thread:
Merci d'avance
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 /* pour jouer le son */ void play(ASS_Sound* sound) { pthread_create(&sound->thread,NULL,ASS_PlaySound,(void*)sound); } /* et la fonction pour mettre à jour le son */ void* ASS_PlaySound(void* snd) { ASS_Sound* sound=snd; alSourcePlay(sound->source); while(updateStream(sound)) /* peut être cette boucle qui consomme le cpu ??*/ { if(!(ASS_GetStatus(*sound)==AL_PLAYING)) { if(!playback(sound)) printf("stream abruptly stopped."); else printf("stream was interrupted.\n"); } } }
Partager