Voice Recorder

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von TheGameSiders.

    Voice Recorder

    Hi.

    Ich habe nun 3 Buttons.
    1 Nimt auf, der andere stoppt und der andere spielt es ab.

    Code:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrreturnString As String, ByVal uReturnLength As Integer, ByVal hvndCallback As Integer) As Integer
    3. Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
    4. My.Computer.Audio.Play("sound.wav", AudioPlayMode.WaitToComplete) 'Hier ist wieder der Pfad D:\sound.wav angegeben um natürlich die erstellte Datei abzuspielen
    5. End Sub
    6. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    7. mciSendString("open new Type waveaudio Alias recsound", "", 0, 0)
    8. mciSendString("record recsound", "", 0, 0) 'Ab jetzt wird das Mikro aufgenommen
    9. End Sub
    10. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    11. mciSendString("stop recsound", "", 0, 0) 'Aufnahme wird gestoppt
    12. mciSendString("save recsound sound.wav", "", 0, 0)
    13. mciSendString("close recsound", "", 0, 0)
    14. End Sub
    15. End Class


    Nun möchte ich, dass er immer kurz aufnimmt auf einem Timer, und ein anderer das gleichzeitig immer abspielt.
    Sozusagen etwas wie Skype oder TS.

    Danke

    TheGameSiders schrieb:

    Hi.

    Nun möchte ich, dass er immer kurz aufnimmt auf einem Timer, und ein anderer das gleichzeitig immer abspielt.
    Sozusagen etwas wie Skype oder TS.

    Danke


    Mir ist nicht ganz klar was du überhaupt machen willst. Wenn du genau sagen kannst was "immer kurz" gemacht werden soll und wann irgendwas "gleichzeitig" abgespielt werden soll, dann wird dir vielleicht jemand helfen.

    mfg Markus
    mciSendString wirste da am besten schnell wieder vergessen.
    Das was du willst ist etwas "streamen".
    Das was du suchst wären sachen wie:
    • DirectX (In)
    • Bass.dll
    • WaveIn
    • ...
    Doch ich würde mich an deiner Stelle fragen ob du denn schon für sowas bereit bist.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    Denke mal schon.

    Habe jetzt geschafft, genau wie bei TS einen Server erstellen zu können, joinen zu können und alles.

    Nur jetzt ist es halt die Sache mit der Quallität.

    Gibt es irgendwo einen Recorder mit der bass.dll hier im Forum oder sonst wo?
    Wenn du dich für bass.dll entschieden hast würde ich mal am besten bei den bass Samples nachschauen. Wie man aber genau streamt darfst du mich nicht fragen.
    Wenn du aber wirklich vor hast das Zeug über ne Leitung zu schicken musst du irgendwie schaue, dass das nicht als PCM rüber geht. Wie man das bei bass einstellt darfst du mich auch nicht fragen. Arbeite nie mit bass sondern schnippsle mir Zeug gern selbst zusammen. Aber es gibt auch hier eine relativ einfache lib: nspeex.codeplex.com/ (falls es bass nicht unterstützt)


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    ich weiß nicht wie man bei Bass aufnehmen kann. Du musst da selbst in der Dokumentation oder Samples nachschauen. Aber denk dran wie im post drüber erwähnt. Du musst irgendwie das Zeug kompremieren. Sonst wird das nicht wirklich gut gehen. Und beim Wiedergeben auch wieder natürlich richtig decodieren. Es gibt dabei versch. codecs. Ich habe mal den hier verwendet... und hat soweit geklappt nur wirklich auf nen anderen Rechner hab ich nie getestet (kenn mich mit Netzwerksachen nicht so aus :P).


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.