前提・実現したいこと
Speech-to-TextとStreamlitを利用した文字起こしアプリを作成しています。
文字起こしを開始すると以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
エラーメッセージ
AttributeError: module 'google.cloud.speech' has no attribute 'SpeechClient'
File "***script_runner.py", line 333, in _run_script
exec(code, module.dict)
File "**.py", line 52, in <module>
transcribe_file(content, lang=option)
File "**", line 16, in transcribe_file
client = speech.SpeechClient()
該当のソースコード
Python
1import os 2from google.cloud import speech 3import streamlit as st 4 5os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'secret.json' 6 7def transcribe_file(speech_file, lang='日本語'): 8 lang_code = { 9 '英語': 'en-US', 10 '日本語': 'ja-JP', 11 'スペイン語': 'es-ES' 12 } 13 ** client = speech.SpeechClient()** ←エラー箇所 14 15 audio = speech.RecognitionAudio(content=content) 16 config = speech.RecognitionConfig( 17 encoding=speech.RecognitionConfig.AudioEncoding.ENCODING_UNSPECIFIED, 18 language_code=lang_code[lang] 19 ) 20 response = client.recognize(config=config, audio=audio) 21 for result in response.results: 22 st.write(result.alternatives[0].transcript) 23 24st.title('~') 25st.header('概要') 26st.write('~') 27st.markdown('~', unsafe_allow_html=True) 28 29upload_file=st.file_uploader('ファイルのアップロード', type=['mp3', 'wav']) 30if upload_file is not None: 31 content = upload_file.read() 32 st.subheader('ファイル詳細') 33 file_details = {'FileName': upload_file.name, 'FileType': upload_file.type, 'FileSize': upload_file.size} 34 st.write(file_details) 35 st.subheader('音声の再生') 36 st.audio(content) 37 38 st.subheader('言語選択') 39 option = st.selectbox('翻訳言語を選択してください', 40 ('英語', '日本語', 'スペイン語')) 41 st.write('選択中の言語:' ,option) 42 43 st.write('文字起こし') 44 if st.button('開始'): 45 comment = st.empty() 46 comment.write('文字起こしを開始します') 47 **transcribe_file(content, lang=option)** ←エラー箇所 48 comment.write('完了しました')
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/03 13:08
2021/10/03 02:39