AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 [C++] Lecture d'un flux audio

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Mass
*Excellent utilisateur*
avatar

Messages : 3325
Localisation : Dans une canonnière wookie.
Projet Actuel :
Things


MessageSujet: [C++] Lecture d'un flux audio   Dim 17 Mai 2015 - 16:17

Salut,

Je cherche à lire proprement un flux audio.
A l'heure actuelle mon soft reçoit l'audio par paquets de ~48ms qu'il décode (no soucis) et lit à la suite. Le problème est que lors de la lecture, il y a un petit "jeu" entre deux séries de samples que je ne parviens pas à réduire, et qui est perceptible à l'oreille, en plus de décaller petit à petit le flux.
Donc, comment est-il possible de lire un flux audio en c++ ? Je ne parle pas de l'aspect réseau mais de comment lire des samples qui arrivent régulièrement, à la suite.

Merci de votre aide gnii

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
arthuro
Utilisateur confirmé: Rang ****
avatar

Messages : 1329
Localisation : Grenoble / Méribel
Projet Actuel : CBNA

MessageSujet: Re: [C++] Lecture d'un flux audio   Dim 17 Mai 2015 - 18:12

Je ne sais pas.

Par contre, tu peux sûrement te baser sur la classe abstraite SoundStream.
Sûrement que le code source de la SFML pourrait te donner ta réponse.

Cette classe possède une implémentation pour un flux venant d'un fichier du disque dur. : Music
Il n'y a pas d'implémentation pour un flux réseau. Il donne un petit exemple pour faire une spécialisation custom :
Spoiler:
 

J'espère que cela pourra t'aider.
Si tu en sais plus sur l'origine de ce "jeu", n'hésite pas à en parler ici. Cela pourrait m'être utile dans le futur.

_________________

D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
onilink_
Modérateur
avatar

Messages : 8915
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

MessageSujet: Re: [C++] Lecture d'un flux audio   Dim 17 Mai 2015 - 20:23

Je crois qu'il utilise déjà ça vu qu'il est sous la SFML.

Mais le soucis ouai c'est que si y a un petit lag a un moment, la queue va continuer de se remplir petit a petit et va y avoir accumulation du lag...

Je pense que le plus efficace est juste de carrément supprimer certains paquets de la queue qui va être envoyée a openal, si le lag est trop important.
Ou encore d’accélérer vite fais l'audio jusqu’à que ça rattrape le lag (mais le rendu risque d'être un peu spécial :p).

_________________
                 
Revenir en haut Aller en bas
Mass
*Excellent utilisateur*
avatar

Messages : 3325
Localisation : Dans une canonnière wookie.
Projet Actuel :
Things


MessageSujet: Re: [C++] Lecture d'un flux audio   Dim 17 Mai 2015 - 20:32

Non effectivement j'ignorais l'existence de cette classe, alors que j'utilise la SFML beh
A l'heure actuelle je charge les sounds de 48ms en mémoire, et je les lis à la suite. Je suppose que le jeu est dû au fait que chaque lecture d'un sound implique la création d'un thread, ce qui est coûteux en ressources.
Du coup je vais essayer cette méthode Smile

_________________
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
arthuro
Utilisateur confirmé: Rang ****
avatar

Messages : 1329
Localisation : Grenoble / Méribel
Projet Actuel : CBNA

MessageSujet: Re: [C++] Lecture d'un flux audio   Dim 17 Mai 2015 - 21:08

Mass a écrit:
Non effectivement j'ignorais l'existence de cette classe, alors que j'utilise la SFML beh
gnii , je n'aurais jamais pensé être aussi pertinent dans ma réponse. Je ne savais pas que t'utilisais la SFML.

C'est parfait alors, je pense que ton problème va très vite être réglé.

_________________

D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: [C++] Lecture d'un flux audio   

Revenir en haut Aller en bas
 
[C++] Lecture d'un flux audio
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Demande aide lecture acte mariage 1742 Cormeilles Eure
» Audio: langue normande.
» un peu de lecture
» initiation à la lecture
» Lecture libre et gratuite

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Programmation-
Sauter vers: