こんにちは、Python初学者です。
Google Colaboratoryで、Google APIを利用して音声をテキスト変換しようとしたら詰んでしまいました。言語はPythonです。
コードはネットに公開しているものを使用しているので、自力で問題解決しようと試みましたが初学者には難しく、お力を借りたいです。
具体的な内容としては、record_audio を実行して音声を録音しようとしたところ以下のようなエラーが出ました。
AttributeError: 'dict' object has no attribute 'index'
おそらく辞書型にindex機能は含まれてないよ〜といった内容だと思うのですが、そこからどう変更を加えればよいかがわかりません。ご指南のほどよろしくお願いいたします。
以下ソースコード
Python
1import getpass 2APIKEY = getpass.getpass() 3 4#@title このセルを実行して record_audio を定義 5 6# Install required libraries and packages 7!pip install -qq pydub 8!apt-get -qq update 9!apt-get -qq install -y ffmpeg 10 11# Define record_audio 12import base64 13import google.colab 14import pydub 15 16from io import BytesIO 17 18def record_audio(file_id, framerate=16000, file_format='flac'): 19 # Record webm file from Colaboratory. 20 audio = google.colab._message.blocking_request( 21 'user_media', 22 { 23 'audio': True, 24 'video': False, 25 'duration': -1 26 }, 27 timeout_sec=600) 28 29 # Convert web file into in_memory file. 30 mfile = BytesIO(base64.b64decode(audio[audio.index(',')+1:])) 31 32 # Store webm file locally. 33 with open('{0}.webm'.format(file_id), 'wb') as f: 34 mfile.seek(0) 35 f.write(mfile.read()) 36 37 # Open stored web file and save it as wav with sample_rate=16000 38 output_file = '{0}.{1}'.format(file_id, file_format) 39 _ = pydub.AudioSegment.from_file('{0}.webm'.format(file_id), codec='opus') 40 _.set_frame_rate(16000).export(output_file, format=file_format) 41 42 return output_file 43 44 45record_audio('ja-sample') 46audio_filename='ja-sample.flac'
エラー
AttributeError Traceback (most recent call last) <ipython-input-3-2e60a39e1187> in <module>() ----> 1 record_audio('ja-sample') 2 audio_filename='ja-sample.flac' <ipython-input-2-da77fe95ffee> in record_audio(file_id, framerate, file_format) 25 26 # Convert web file into in_memory file. ---> 27 mfile = BytesIO(base64.b64decode(audio[audio.index(',')+1:])) 28 29 # Store webm file locally. AttributeError: 'dict' object has no attribute 'index'
以下Google ColaboratoryのノートブックURLです。
https://colab.research.google.com/github/GoogleCloudPlatform/gcp-getting-started-lab-jp/blob/master/machine_learning/cloud_ai_building_blocks/speech-to-speech/speech_to_speech.ipynb#scrollTo=2OWkkepTWSbG
あなたの回答
tips
プレビュー