Sprach-Audio Datei in Text-Datei umwandeln

  • VB.NET
  • .NET 5–6

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von MCSPRV.

    Sprach-Audio Datei in Text-Datei umwandeln

    In VB möchte ich habe ich ein Programm geschrieben das den Microfon aufnahme als .wav abspeichert.
    Jetzt möchte ich als 2. Schritt diese Aufnahme in eine Textdatei umwandeln, idealer weise direkt auch übersetzen.
    In Python geht es über google- Link
    Aber wie kann ich es hier umsetzten?

    Ich habe schon ältere Themen dazu hier im forum gefunden aber , da sagt mein VB 2022 das ist veraltet.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal Command As String, ByVal Returnstring As String, ByVal returnlength As Integer, ByVal callback As Integer) As Integer
    3. Dim rs As String
    4. Dim cb As Integer
    5. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    6. If Button1.Text = "Record" Then
    7. Button1.Text = "Stop"
    8. Button2.Enabled = False
    9. rs = New String(" ", 128)
    10. Call mciSendString("Open New Type waveaudio Alias capture", rs, 128, cb)
    11. Call mciSendString("record capture", rs, 128, cb)
    12. Else
    13. Button1.Text = "Record"
    14. Button2.Enabled = Enabled
    15. Call mciSendString("Stop capture", rs, 128, cb)
    16. Call mciSendString("save capture " & "D:\Aufnahme.wav", rs, 128, cb)
    17. Call mciSendString("Close capture", rs, 128, cb)
    18. End If
    19. End Sub
    20. ## Hier fehlt noch der Teil wie ich die Aufnahme.wav in eine Textdatei umwandeln kann
    21. ## da weis ich nicht wie ich es umsetzen kann
    22. ## Das ist schon der übersetzer Part
    23. Function Übersetzen(ByVal stext As String, ByVal language_comes As String, ByVal language_goes As String) As String
    24. Dim client As New Net.WebClient() #[i][b] VB 2022 meldet es ist veraltet [/b][/i]
    25. Dim übersetzung_vorläufig As String = client.DownloadString("http://translate.google.de/translate_a/t?client=t&text=" & stext & "&sl=" & language_goes & "&tl=" & language_comes)
    26. Dim TransRegEx As New Regex("\""trans\""\:\""(?<string>(.*))\""\,\""orig\""") # VB2022 Meldet REGEX ist nicht definiert
    27. Dim myTrans As String = TransRegEx.Match(übersetzung_vorläufig).Groups("string").ToString()
    28. Return myTrans
    29. End Function
    30. End Class


    komme da gerade nicht weiter

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    MCSPRV schrieb:

    da sagt mein VB 2022 das ist veraltet.
    Was genau ist veraltet?
    Probier mal, das in ein Framework-Projekt einzubinden.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Vollzitat des direkten Vorposts an dieser Stelle entfernt ~VaporiZed

    Sorry wenn ich mich dumm anstelle , aber mit der von dir genannten Klasse komme ich nicht klar.
    Beispiele be google und Co. finde ich nur bei C#.

    Kannst du mir vieleicht ein beispel für dummies geben, wie ich es richtig anwende in VB?

    Zitierfehler korrigiert ~VaporiZed

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    MCSPRV schrieb:

    finde ich nur bei C#.
    Wenn das Microsoft Docs sind, kannst Du die Sprache oben rechts auf VB umstellen.
    Wenn nicht, verwende einen Translator, sieh Dir mal den in meiner Signatur an.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Vollzitat des direkten Vorposts an dieser Stelle entfernt ~VaporiZed
    ich habe den C# vorschlag über den Translator übersetzt :

    VB.NET-Quellcode

    1. Private Shared Async Function Main() As Task
    2. Try
    3. Dim response As HttpResponseMessage = Await client.GetAsync("http://www.contoso.com/")
    4. response.EnsureSuccessStatusCode()
    5. Dim responseBody As String = Await response.Content.ReadAsStringAsync()
    6. Console.WriteLine(responseBody)
    7. Catch e As HttpRequestException
    8. Console.WriteLine(vbLf & "Exception Caught!")
    9. Console.WriteLine("Message :{0} ", e.Message)
    10. End Try
    11. End Function


    ich muss es noch eh anpassen später zu meinem eigentlichen Script.

    Aber
    HttpResponseMessage und HttpRequestException sind nicht definiert,

    obwohl ich es über den Objektkatalog hinzugeügt habe:
    System.Net.Http.HttpResponseMessage und System.Net.Http.HttpRequestException

    Und entsprechend die Imports gesetzt habe:

    VB.NET-Quellcode

    1. Imports System
    2. Imports System.IO
    3. Imports System.Threading
    4. Imports System.Net.Http.HttpRequestException
    5. Imports System.Net.Http.HttpResponseMessage

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    @MCSPRV Füge die DLL System.Net.Http als Verweis Deinem Projekt hinzu.
    docs.microsoft.com/de-de/dotne…ponsemessage?view=net-6.0
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!