AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Lot de 50 masques à 10.99 €
Voir le deal
10.99 €

 

 [C++] Lecture d'un flux audio

Aller en bas 
AuteurMessage
Mass
*Excellent utilisateur*
Mass

Messages : 3338
Localisation : Dans une canonnière wookie.
Projet Actuel : Living the life
[C++] Lecture d'un flux audio Void

[C++] Lecture d'un flux audio Empty
MessageSujet: [C++] Lecture d'un flux audio   [C++] Lecture d'un flux audio EmptyDim 17 Mai 2015 - 18: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 ****
arthuro

Messages : 1472
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

[C++] Lecture d'un flux audio Empty
MessageSujet: Re: [C++] Lecture d'un flux audio   [C++] Lecture d'un flux audio EmptyDim 17 Mai 2015 - 20: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.

_________________
[C++] Lecture d'un flux audio Pochette[C++] Lecture d'un flux audio Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_

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

[C++] Lecture d'un flux audio Empty
MessageSujet: Re: [C++] Lecture d'un flux audio   [C++] Lecture d'un flux audio EmptyDim 17 Mai 2015 - 22: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).

_________________
[C++] Lecture d'un flux audio Runningpotato1[C++] Lecture d'un flux audio TvF6GED [C++] Lecture d'un flux audio MdetltS
Revenir en haut Aller en bas
Mass
*Excellent utilisateur*
Mass

Messages : 3338
Localisation : Dans une canonnière wookie.
Projet Actuel : Living the life
[C++] Lecture d'un flux audio Void

[C++] Lecture d'un flux audio Empty
MessageSujet: Re: [C++] Lecture d'un flux audio   [C++] Lecture d'un flux audio EmptyDim 17 Mai 2015 - 22: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 ****
arthuro

Messages : 1472
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

[C++] Lecture d'un flux audio Empty
MessageSujet: Re: [C++] Lecture d'un flux audio   [C++] Lecture d'un flux audio EmptyDim 17 Mai 2015 - 23: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é.

_________________
[C++] Lecture d'un flux audio Pochette[C++] Lecture d'un flux audio Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
Contenu sponsorisé




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

Revenir en haut Aller en bas
 
[C++] Lecture d'un flux audio
Revenir en haut 
Page 1 sur 1

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