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

VB.NET Discussion :

Streaming avec Naudio


Sujet :

VB.NET

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 117
    Points : 72
    Points
    72
    Par défaut Streaming avec Naudio
    Bonjour, j'aimerai récupérer le son du micro et l'envoyer sur un réseau tcp via un flux mémoire. J'ai donc télécharger la bibliothèque naudio. Le problème c'est que je n'arrive pas à trouver de code d'exemple pour récupérer le son du micro et l'enregistrer dans un flux (et non dans un fichier).

    Donc si une personne connait cette bibliothèque et peux m'aider, merci d'avance.

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Je ne promets rien, mais il y a (un gros) peut-être un début de réponse par là:

    http://www.codeproject.com/Articles/...-PCM-WAV-in-Wi

    Je ne sais pas de quel site tu as téléchargé naudio, ou si tu l'as pris directement de NuGet; mais tu peux toujours aller voir "à la source", si tu n'y es pas déjà allé:

    http://naudio.codeplex.com/documentation

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 117
    Points : 72
    Points
    72
    Par défaut
    Bonjour, merci pour ta réponse.

    Huum, pas évident. Je penserai que ça serait plus simple que ça. Je vais voir si je peux trouver quelque chose dans la source.

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 117
    Points : 72
    Points
    72
    Par défaut
    J'ai réussi a trouver un début de réponse en C# et j'ai trouvé la solution.

    Pour que ça serve aux autres :

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Imports NAudio.Wave
    Imports System.Net
    Imports System.IO
     
    Public Class Form1
        Public WithEvents wi As New WaveIn
        Public wo As New WaveOut
        Public bw As BufferedWaveProvider
        Public byteToBase64 As String
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            wi.DeviceNumber = 0
            wi.WaveFormat = New NAudio.Wave.WaveFormat(16000, 1)
     
            bw = New BufferedWaveProvider(wi.WaveFormat) ' buffer d'enregistrement
     
            bw.DiscardOnBufferOverflow = True
            wo.Init(bw) ' init avec le buffer
        End Sub
     
        Private Sub BtnEnregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnEnregistrer.Click
            wi.StartRecording() ' demarrage de l'enregistrement
            wo.Play()
        End Sub
     
        Private Sub wi_DataAvailable(ByVal sender As Object, ByVal e As WaveInEventArgs) Handles wi.DataAvailable
            bw.AddSamples(e.Buffer, 0, e.BytesRecorded)
        End Sub
     
        Private Sub BtnStopper_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnStopper.Click
            wi.StopRecording()
        End Sub
    End Class
    Pour ma part, il suffit de transformer e.Buffer en base64.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Question] Streaming avec une caméra IP
    Par prudho dans le forum Vidéo
    Réponses: 3
    Dernier message: 29/08/2008, 12h23
  2. erreur memory stream avec FREEIMAGE
    Par aziatedu13 dans le forum Bibliothèques
    Réponses: 7
    Dernier message: 26/02/2008, 13h47
  3. Multi Stream avec VBO
    Par Bob.Killer dans le forum OpenGL
    Réponses: 5
    Dernier message: 23/12/2007, 18h52
  4. Comment utiliser le streaming avec en .flv
    Par pierrot10 dans le forum Flash
    Réponses: 3
    Dernier message: 21/10/2006, 17h38
  5. Utiliser les Streams avec TSocket
    Par francky23012301 dans le forum Web & réseau
    Réponses: 8
    Dernier message: 02/05/2006, 23h07

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