IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation multimédia/Jeux Python Discussion :

Chat vocal et qualité du son


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 10
    Points : 9
    Points
    9
    Par défaut Chat vocal et qualité du son
    Bonjour à tous,

    Bon, on est (un ami et moi) sur un petit projet de chat vocal à mettre en place.

    Voilà donc le concept:

    Un serveur + des clients
    le tout connecté en tcp via des sockets, et la donnée audio acquise à l'aide du module pyaudio (et traitée au moyen du module audioop)
    L'emission/réception est géré par des threads

    En réseau local (entre ma tour et mon ordi portable quoi), ça marche du tonnerre de dieu

    MAIS le problème (car il y en a un):

    C'est qu'à distance, c'est plutôt le tonnerre de dieu qu'on entend.

    En fait la communication passe, mais avec écho, parasites, son faible et tutti quanti

    Enfin voilà, je ne suis pas un expert du réseau, loin de là, et je ne sais pas si c'est un problème de ports, d'encodage du son, de débit, ou autre...

    Pour info: l'acquisition du son (et donc l'émission) se fait actuellement en 16bits, 44100Hz (on a aussi essayé 48000), en mono, et les "frames par buffer" (je sais pas trop comment traduire ça), sont à 1024

    Bonne journée, et merci d'avance!!!

  2. #2
    Membre averti
    Homme Profil pro
    Développeur en formation
    Inscrit en
    Juillet 2013
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur en formation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 300
    Points : 413
    Points
    413
    Par défaut
    Exactement le même problème ! si par ailleurs on pouvait également faire ça sans passer par un VPN pour des hôtes distants, ça m'arrangerait, mais il faut ouvrir son routeur pour ça... à moins de reproduire un truc du genre apache. Merci d'avance pour vos réponses.
    Bouddha : Tout n'est qu'illusion en ce bas monde.
    Jésus : Tout est amour divin.
    Einstein : Tout est relatif dans cet espace-temps.
    Moi : Tout est binaire sur ce forum.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Il y a toute une rubrique réseau sur développez: FAQ, Forums, tuto,...
    Vous avez même une s/rubrique sur les chats.

    Les réseaux, leur configuration, les soucis de bande passante, de temps de réponse et de protocoles sont indépendants du langage de programmation.
    Le seul avantage de Python sera de permettre une mise en œuvre plus facile, rapide,...
    Si vous ne savez pas comment fonctionne un réseau, vous atteindrez plus rapidement votre seuil d’incompétence...
    Un forum de discussion ne remplacera jamais un apprentissage que vous devez suivre avant de...

    C'est pareil avec toutes les bibliothèques "métiers".
    Prenez, Numpy par exemple, si vous ne savez pas ce que sont matrices, vecteurs et calcul numérique, ... vous pourrez faire mumuse rapidement avec la librairie mais pour faire quelque chose d’intéressant avec, il faudra avoir acquis des connaissances dans bien d'autres domaines.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    D'abord, merci pour vos réponses

    wiztricks, j’entends bien ton avis, et oui ce serait effectivement plus sage pour moi d'étudier un minimum le fonctionnement des les réseaux

    si j'ai posté la question ici, c'est que je découvre le langage python depuis quelques mois, et il se pourrait bien que des choses m'aient échappé soit au niveau des modules existants (j'ai lu des choses à propos de gstreamer entre autre, serait-ce plus adapté?), soit au niveau de l'utilisation que je fais des modules existants, pyaudio entre autre.

    De plus, étudier en profondeur le fonctionnement des réseaux pour mettre en place un petit chat vocal qui sera utilisé par 4 personnes au maximum, est-ce que ce n'est pas un peu comme apprendre le fonctionnement des matrices et des calculs vectoriels pour apprendre à jouer à tetris?

    Bonne journée!

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par olinox14 Voir le message
    De plus, étudier en profondeur le fonctionnement des réseaux pour mettre en place un petit chat vocal qui sera utilisé par 4 personnes au maximum, est-ce que ce n'est pas un peu comme apprendre le fonctionnement des matrices et des calculs vectoriels pour apprendre à jouer à tetris?
    Vous avez skype,... et des tas de solutions gratuites disponibles et fonctionnelles.
    Pourquoi perdre son temps a coder des fonctionnalités déjà disponibles si ce n'est ni pour apprendre ni pour faire mieux que ce qui existe?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    Bonne question

    1- oui, pour apprendre. mais par la pratique... il faut me comprendre, j'ai passé 2 ans en math sup à apprendre comment fonctionnent les plasma ou à apprendre le théorème de taylor lagrange, et ça ne m'a jamais servi à grand chose... ce qui m'est utile c'est ce que j'ai appris ensuite, par la pratique. Tout ça pour dire que je préfère apprendre progressivement en testant des choses sur la base d'une piste ou d'un conseil plutôt qu'en passant des heures à ingérer des pages de cours. D'autant plus que ce projet est pour mon plaisir, pas pour le boulot...

    2- skype est foncièrement déagréable à utiliser, et on n'a aucune maitrise sur la qualité du son qui est souvent mauvaise. d'autres oiutils existent, comme mumble, mais ils sont payants

    3- parce que nous comptons intégrer ce module de chat vocal à un logiciel sur lequel nous travaillons avec un ami

    Enfin, comprenez moi bien, je suis ouvert à l'apprentissage, sans aucun doute! mais si je poste ici, c'est surtout pour avoir des pistes à ce sujet. Sur un autre forum, on m'a parlé de l'udp, je vais donc me renseigner à ce sujet... Si vous avez des conseils à me donner, d'autres idées, je suis preneur! je n'attends pas forcément une solution toute cuite...

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    C'est pas complique, un chat s'appelle IRC (vous pouviez trouver ça dans le forum réseau).
    Si vous aimez bien Python, vous allez chercher une librairie qui... fait de l'IRC et plus particulièrement ses capacités a faire du DCC.

    Une autre piste est RTP.
    Pareil cote Python...

    Est ce que ces protocoles seront adaptes a vos besoins?
    Il n'y a que vous pour le dire...
    Mais cote programmation, c'est de la mise en œuvre "d'outils" habilement choisis i.e. peanuts quant on sait poser le problème.

    Si vous n'aimez pas Skype, vous pourriez regardez comment fait VLC pour mettre en œuvre ces protocoles. Ils ont même un pluging pour faire du video-conferencing VLVC.
    C'est open source. Vous pouvez l'utiliser pour votre application.

    Pour comprendre comment ça fonctionne, il faut pouvoir lire les sources.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    Salut,

    Merci pour toutes ces infos!

    je me renseignais dernièrement sur le UDP du coup, et j'ai cru comprendre que le RTP va "de paire" avec

    Pour ce qui est de VLC, c'est vrai que j'y avais pensé, mais je n'ai pas encore pris la peine de me renseigner, je vais le faire

    J'ai fait toute une série de tests, sinon, et visiblement il s'agit bien d'un problème de débit... j'en suis donc à essayer de compresser les flux audio (ce dernier point est d'ailleurs plus à sa place dans cette section du forum)

    J'essaye d'utiliser pymedia pour convertir à la volée mon flux audio en mp3, de manière à ménager mon débit sortant (ça a l'air bien parti, mais je n'ai pas encore pu tester ca en live

    Merci encore, et bonne journée!
    olinox

Discussions similaires

  1. [Conseil] Je cherche a créer et investir dans un chat vocal
    Par Root_JDK dans le forum IRC / mIRC
    Réponses: 8
    Dernier message: 13/12/2009, 10h51
  2. Crée Client Chat Vocal En exe
    Par Smato dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 05/04/2008, 01h27
  3. [FLASH 8] Qualité de son dans flash
    Par incredible dans le forum Flash
    Réponses: 1
    Dernier message: 27/03/2007, 23h55
  4. [FLASH MX] Problème de qualité de son
    Par Gwenouille dans le forum Flash
    Réponses: 6
    Dernier message: 01/03/2006, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo