Die API wurde im August 2017 aktualisiert, um bis zu 3 Stunden Audio zu ermöglichen. Ich habe versucht, Audiodaten in eine TXT-Datei zu konvertieren. Die Umgebung verwendet die Cloud-Konsole von GCP, die auch unterwegs verwendet werden kann, sodass sie automatisch transkribiert werden kann, sobald ein Interview geführt wird.
※Referenz http://jp.techcrunch.com/2017/08/15/20170814google-updates-its-cloud-speech-api-with-support-for-more-languages-word-level-timestamps/
Aktivieren Sie die Sprach-API unter Bezugnahme auf die unten stehende URL. Kostenlos für bis zu 60 Minuten Sprache. Danach werden Ihnen alle 15 Sekunden 0,6 Cent berechnet. Wenn Sie jedoch zum ersten Mal die Google Cloud Platform verwenden, erhalten Sie 300 US-Dollar, gültig für ein Jahr (Stand August 2017). https://cloud.google.com/speech/docs/getting-started
Erstellen Sie die Authentifizierungsinformationen in der Dienstkonto-Schlüsseldatei (JSON-Format).
Starten Sie Google Cloud Shell und laden Sie die JSON-Datei zur Authentifizierung in der oberen rechten Ecke hoch.
Authentifizieren Sie sich nach dem Hochladen mit der JSON-Datei.
python
$ export GOOGLE_APPLICATION_CREDENTIALS=hogehoge.json
Es ist nicht möglich, MP3 oder AAC so wie es ist zu verwenden, und es ist notwendig, es in ein kompatibles Format zu konvertieren. Ich habe verschiedene Dinge ausprobiert, aber die folgenden Einstellungen werden empfohlen.
(Referenz: Online-Konvertierungsdienst) https://audio.online-convert.com/convert-to-flac
Laden Sie die FLAC-Datei in Google Cloud Strage hoch. Klicken Sie hier, um zu erfahren, wie Sie Google Cloud Storage erstellen https://cloud.google.com/storage/docs/quickstart-console?hl=ja
Ich habe die Python-Datei direkt in die Shell hochgeladen. Ich bin kein Hauptingenieur, also während ich mir das Tutorial ansehe ...
transcribe.py
# !/usr/bin/env python
# coding: utf-8
import argparse
import io
import sys
import codecs
import datetime
import locale
def transcribe_gcs(gcs_uri):
from google.cloud import speech
from google.cloud.speech import enums
from google.cloud.speech import types
client = speech.SpeechClient()
audio = types.RecognitionAudio(uri=gcs_uri)
config = types.RecognitionConfig(
encoding=enums.RecognitionConfig.AudioEncoding.FLAC,
language_code='ja-JP')
operation = client.long_running_recognize(config, audio)
print('Waiting for operation to complete...')
operationResult = operation.result()
d = datetime.datetime.today()
today = d.strftime("%Y%m%d-%H%M%S")
fout = codecs.open('output{}.txt'.format(today), 'a', 'shift_jis')
for result in operationResult.results:
for alternative in result.alternatives:
fout.write(u'{}\n'.format(alternative.transcript))
fout.close()
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description=__doc__,
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument(
'path', help='GCS path for audio file to be recognized')
args = parser.parse_args()
transcribe_gcs(args.path)
Führen Sie abschließend die folgenden Schritte aus und warten Sie eine Weile, bis die Konvertierung abgeschlossen ist.
python
$ python transcribe.py gs://Eimername/testmusic.flac
python
config = types.RecognitionConfig(
encoding=enums.RecognitionConfig.AudioEncoding.FLAC,
sample_rate_hertz=16000, #Fügen Sie diese Zeile hinzu
language_code='ja-JP')
python
sudo pip install --upgrade google-cloud-speech
Es ist überraschend, dass der Nachhall des Raumes die Genauigkeit erheblich beeinflusst. Geräusche wie Klimaanlagengeräusche beeinträchtigten die Genauigkeit nicht, selbst wenn sie ziemlich laut waren. Es kann leicht zu trennen sein.
Recommended Posts