ich eine Lösung erhielt, die gut funktioniert Sprache zu haben, zu erkennen und Audio-Aufnahme . Hier ist das link zu einem einfachen Android-Projekt, das ich erstellt habe, um zu zeigen, dass die Lösung funktioniert. Außerdem habe ich einige Druckbildschirme in das Projekt eingefügt, um die App zu veranschaulichen.
Ich werde versuchen, kurz den Ansatz zu erklären, den ich verwendet habe. Ich habe zwei Funktionen in diesem Projekt kombiniert: Google Speech API und Flac-Aufnahme.
Die Google Speech-API wird über HTTP-Verbindungen aufgerufen. Mike Pultz gibt weitere Details über die API:
"(...) die neue [Google] API ist eine Vollduplex-Streaming-API. Das bedeutet, dass es tatsächlich zwei HTTP-Verbindungen verwendet - eine POST-Anfrage zum Hochladen der Inhalt als "live" Chunked-Stream und eine zweite GET-Anfrage, um auf die Ergebnisse zuzugreifen, was bei längeren Audio-Samples oder beim Streaming von Audio viel sinnvoller ist. "
Diese API muss jedoch eine FLAC-Audiodatei erhalten, damit sie ordnungsgemäß funktioniert. Das bringt uns zum zweiten Teil: Flac-Aufnahme
Ich habe die Flac-Aufnahme in diesem Projekt implementiert, indem ich einige Code-Teile und Bibliotheken aus einer Open-Source-App namens AudioBoo extrahiert und angepasst habe. AudioBoo verwendet nativen Code zum Aufnehmen und Abspielen von FLAC-Formaten.
So ist es möglich, einen Flac-Sound aufzunehmen, an Google Speech API zu senden, den Text zu erhalten und den soeben aufgenommenen Sound abzuspielen.
Das Projekt, das ich erstellt habe, hat die grundlegenden Prinzipien, damit es funktioniert und kann für bestimmte Situationen verbessert werden. Damit es in einem anderen Szenario funktioniert, ist es erforderlich, einen Google Speech-API-Schlüssel zu erhalten, der durch die Mitgliedschaft in der Google Chromium-dev-Gruppe erhalten wird. Ich habe einen Schlüssel in diesem Projekt gelassen, nur um zu zeigen, dass es funktioniert, aber ich werde es irgendwann entfernen. Wenn jemand mehr Informationen darüber benötigt, lass es mich wissen, weil ich nicht mehr als 2 Links in diesen Beitrag schreiben kann.
Wissen Sie, ob dies seither in der API enthalten ist? Falls nicht, haben Sie eine Problemumgehung gefunden, um Ihre eigene Aufzeichnung an Google zu senden? – ahsteele
Ich frage mich das Gleiche. Ich kann nicht glauben, dass Android dieses hohe Niveau ist, da es ernstlich einen Mangel an API gibt, wenn es um Medien geht. – Tom
Android nicht zur Verfügung gestellt Eine Bibliothek, um dies zu tun. – sravan