반응형

Google Cloud Speech-to-Text API 서비스 계정 키를 발급받아서 샘플 코드를 실행하는 방법을 설명합니다.

결제 신용카드를 등록해야 할 수 있습니다.



2018.  9.  21  최초작성

2020. 11. 3  최종작성




1. Cloud Speech API 키 발급 받기

2. Cloud SDK 설치

3. 파이썬 예제 테스트 해보기

4. 참고





1. Cloud Speech API 키 발급 받기

 

1. 다음 사이트에 접속하여 프로젝트를 생성 후, Cloud Speech API를 위한 API 키를 발급받아야 합니다. 

 

https://console.cloud.google.com/apis/dashboard 




2. 오른쪽 상단에 보이는 프로젝트 만들기를 선택합니다. 

 




3. 프로젝트 이름을 적어주고 만들기를 선택합니다. 프로젝트 생성될 때까지 잠시 기다려야 합니다. 

 




4. API 및 서비스 사용 설정을 선택합니다. 

 




5. Cloud Speech-to-Text API를 검색하여 선택합니다.

 




6. 사용을 선택합니다.

 




7. 이제 Cloud Speech API가 활성화 되었습니다.  왼쪽 항목에서 사용자 인증 정보 만들기를 선택합니다.

 




8. 서비스 계정을 선택합니다. 

 




9. 서비스 계정 만들기를 클릭합니다. 

 




10. 적당한 서비스 계정 이름을 적고 만들기를 클릭합니다. 

 




10. 적당한 서비스 계정 이름을 입력하고 역할 선택에서 Project > 소유자를 선택합니다.

 




11. 역할을 클릭하고 소유자를 선택한 후, 계속을 클릭합니다. 

전체 리소스에 접근이 가능하기 때문에 이후 배포를 고려할 때에는 바꿔야할지도 모르겠습니다.



 




12. 완료를 클릭합니다. 여기에서 서비스에 사용할 계정을 추가하는 듯합니다. 

 




13. 작업에 있는 점점점을 클릭한 후, 키 만들기를 선택합니다. 

 




14. JSON을 선택하고 만들기를 클릭합니다. 

 



비공개 키가 컴퓨터에 저장됩니다.

 




15. 윈도우의 경우 파일은 다음 위치에 다운로드 됩니다. 서비스계정키이름은 바로 위에 보이는 스크린샷에 있는 파일이름입니다. 

 

C:\Users\사용자이름\Downloads\서비스계정키이름.json



명령 프롬프트에서 다음처럼 입력하여 서비스 계정 키를 위한 환경 변수를 등록합니다.

 

set GOOGLE_APPLICATION_CREDENTIALS=C:\Users\사용자이름\Downloads\서비스계정키이름.json




매번 입력하는게 번거로우면 시스템 속성의 환경 변수에 등록하면 됩니다.

이후 API 테스트시 필요하므로 반드시 등록해줘야 합니다.

 

윈도우키 + R을 누른 후,  sysdm.cpl를 실행합니다.

 




고급 탭을 선택한 후, 환경 변수 버튼을 클릭합니다.

 




시스템 변수에 있는 새로 만들기 버튼을 클릭합니다.

 




다음 처럼 값을 입력하고 확인을 클릭합니다. 

 

변수 이름

GOOGLE_APPLICATION_CREDENTIALS

 

변수 값 ( 앞에서 다운로드 받은 json 파일의 위치와 이름으로 대체하세요 )

C:\Users\webnautes\Downloads\steady-grid-294413-59675a552d7e.json

 



확인을 클릭합니다.

 



2. Cloud SDK 설치

1. 아래 링크에 접속합니다.

 https://cloud.google.com/sdk/docs/downloads-versioned-archives




2. WINDOWS 64비트용을 다운로드합니다.  Python이 설치 안되어 있는 경우에는 바로 아래에 있는 Python 포함버전을 다운로드 받습니다. 

 




3. 시작버튼을 누른 후, 사용하는 압축 프로그램을 검색하여 관리자 권한으로 실행을 선택합니다. 

압축을 푸는 과정에서 심볼릭 링크의 경우 관리자 권한이 필요하다는 메시지가 보여서 이렇게 진행했습니다. 

 




4. 반디집을 기준으로 설명합니다. 압축 파일 열기를 선택한 후, 다운로드 받은 파일을 선택합니다. 

 




5. 풀기를 선택합니다.

 




6. 로컬 디스크 (C:)를 선택하면 대상 폴더가 C:\가 됩니다. 확인을 클릭하면 압축이 풀립니다. 

 



파일 하나가 다음처럼 에러가 났는데 텍스트 파일이라 무시하고 계속 진행했습니다.

 




7. 다음 위치에 압축이 풀립니다. 

 




8. 윈도우 키 + R을 누른후, cmd를 실행하여 클라우드 도구를 경로를 추가하기 위해 다음 명령을 실행합니다.( 실제로 해보면 경로가 추가안됩니다 )

 

c:\google-cloud-sdk\install.bat



엔터키를 누릅니다. 



Y를 입력 후, 엔터키를 누릅니다. 

 

 

 

잠시 후, 다음 화면이 보입니다.

 




9. 명령 프롬프트에서 다음 명령을 실행합니다.

c:\google-cloud-sdk\bin\gcloud init

 

기존 설정을 지우려면 C:\Users\webnautes\AppData\Roaming에 있는 gcloud 폴더를 삭제하세요. 



Y를 입력하고 엔터키를 누릅니다. 




웹브라우저를 선택하고 확인을 클릭합니다. 




10.  구글 계정을 선택합니다. 

 




11.  허용을 선택합니다. 

 




6. 다시 명령 프롬프트를 확인해보면 다음처럼 사용할 프로젝트를 선택하라고 물어봅니다.

Cloud Speech API를 위해 만든 프로젝트 번호를 입력하고 엔터키를 입력합니다. 

 




7.  설정이 완료되었습니다. 

 




3. 파이썬 예제 테스트 해보기

1. 파이썬 3를 설치합니다. 본 글에서는 Python 3.7.7로 진행했습니다. 

https://www.python.org/downloads/windows/

 




2. 명령 프롬프트에서 다음처럼 virtualenv를 설치합니다.

(참고. http://timmyreilly.azurewebsites.net/python-pip-virtualenv-installation-on-windows/ )

 

pip install virtualenv

pip install virtualenvwrapper-win




3. 가상환경을 위한 디렉토리를 생성하고 이동합니다.

 




4. 다음 명령으로 가상환경을 만듭니다.

 

virtualenv env

 




5. 다음 명령으로 가상환경을 활성화 합니다.

현재 디렉토리 경로명 앞에 앞에서 지정한 이름  (env)가 붙습니다. 

 




6. 가상환경에서 빠져나오려면 다음 명령을 사용합니다.

 




7. 다시 가상환경을 활성화하고 Google Cloud Client Library for Python를 설치합니다.

 




8. Visual Studio가 설치안되어 있다면 진행하기 전에 Visual C++ 2015 Build Tools를 아래 링크에서 다운로드 받아 설치해줘야 합니다.

http://landinghub.visualstudio.com/visual-cpp-build-tools

 




9. Cloud Speech API Client Library를 설치합니다.

 




10. 서비스 계정을 활성화합니다. 한번 해주면 이후 해줄 필요가 없습니다.

 

c:\google-cloud-sdk\bin\gcloud auth activate-service-account --key-file="C:\Users\webnautes\Downloads\steady-grid-294413-59675a552d7e.json"

 



11. 마이크 사용을 위해 필요한 패키지를 설치합니다.

 

https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio 에서 파이썬 버전에 맞는 파일을 다운로드합니다. 

Python 3.7.7의 경우 PyAudio‑0.2.11‑cp37‑cp37m‑win_amd64.whl를 다운로드합니다. 

 

다음처럼 다운로드 받은 파일 위치를 지정하여 설치합니다. 

 

pip install ..\Downloads\PyAudio-0.2.11-cp37-cp37m-win_amd64.whl

 

 




12. 먼저 실시간으로 음성인식을 테스트합니다.

 

다음 주소에 있는 마이크를 이용한 스트림 코드를 가져와 transcribe_streaming_mic.py 이름으로 저장합니다.

https://github.com/googleapis/python-speech/blob/master/samples/microphone/transcribe_streaming_mic.py 

 

크롬에서 위 링크로 이동한 후, Raw를 클릭한 후, Ctrl + S를 눌러 저장하면 됩니다. 

현재 사용중인 c:\Users\사용자이름\speech 경로에 저장하세요. 



코드에서 167번째 줄의 다음 부분을 인식 시킬 언어로 변경합니다.

변경시 들여쓰기가 변하지 않도록 조심하세요.

 

    language_code = 'en-US'  # a BCP-47 language tag

 

여기에서는 ko-KR로 변경하겠습니다.

    language_code = 'ko-KR'  # a BCP-47 language tag



실행하고 마이크에 말을 하면 다음 줄에 실시간으로 스크립트를 출력해줍니다.

 



13. 이번엔 녹음을 하여 음성파일을 생성해서 음성인식을 테스트합니다.

 

다음 코드를 실행하여 녹음을 하면 현재 디렉토리에  file.wav 파일이 생성됩니다. 

 

# https://gist.github.com/mabdrabo/8678538

import pyaudio
import wave

FORMAT = pyaudio.paInt16
CHANNELS = 1  #only mono
RATE = 16000 
CHUNK = 1024  #확인 필요
RECORD_SECONDS = 10 #10초 녹음
WAVE_OUTPUT_FILENAME = "file.wav"

audio = pyaudio.PyAudio()

# start Recording
stream = audio.open(format=FORMAT, channels=CHANNELS,
                rate=RATE, input=True,
                frames_per_buffer=CHUNK)
print ("recording...")
frames = []

for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
    data = stream.read(CHUNK)
    frames.append(data)
print ("finished recording")


# stop Recording
stream.stop_stream()
stream.close()
audio.terminate()

waveFile = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
waveFile.setnchannels(CHANNELS)
waveFile.setsampwidth(audio.get_sample_size(FORMAT))
waveFile.setframerate(RATE)
waveFile.writeframes(b''.join(frames))
waveFile.close()



다음 파이썬 코드를 실행하면 현재 디렉토리에 있는 file.wav에 대한 스크립트를 출력해줍니다. 

 

(env) C:\Users\webnautes\speech>python quickstart.py

 

#!/usr/bin/env python

# Copyright 2016 Google Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.


def run_quickstart():
    # [START speech_quickstart]
    import io
    import os

    # Imports the Google Cloud client library
    # [START speech_python_migration_imports]
    from google.cloud import speech

    # [END speech_python_migration_imports]

    # Instantiates a client
    # [START speech_python_migration_client]
   client = speech.SpeechClient()
    # [END speech_python_migration_client]

    # The name of the audio file to transcribe
    file_name = os.path.join(os.path.dirname(__file__), ".", "file.wav")

    # Loads the audio into memory
    with io.open(file_name, "rb") as audio_file:
        content = audio_file.read()
        audio = speech.RecognitionAudio(content=content)

   config = speech.RecognitionConfig(
        encoding=speech.RecognitionConfig.AudioEncoding.LINEAR16,
        sample_rate_hertz=16000,
        language_code="ko-KR",
    )

    # Detects speech in the audio file
    response = client.recognize(config=config, audio=audio)

    for result in response.results:
        print("Transcript: {}".format(result.alternatives[0].transcript))
    # [END speech_quickstart]


if __name__ == "__main__":
    run_quickstart()




14. 추가 예제들은 아래 깃허브에 있습니다. 테스트를 해보면 좋을듯합니다.

https://github.com/googleapis/python-speech/tree/master/samples



4. 참고 

https://cloud.google.com/speech/docs/quickstart?hl=ko

 

https://cloud.google.com/docs/authentication/getting-started?hl=ko

 

https://cloud.google.com/sdk/docs/quickstart-windows

 

https://cloud.google.com/speech/docs/reference/libraries







반응형

해보고 확인한 것을 문서화하여 기록합니다.


공부한 내용을 공유하는 공간입니다.
부족함이 있지만 도움이 되었으면 합니다.
잘못된 부분이나 개선점을 알려주시면 감사하겠습니다.



포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
문제가 생기면 포스트와 바뀐 환경이 있나 먼저 확인해보세요.

질문을 남겨주면 가능한 빨리 답변드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">
  1. 이전 댓글 더보기
  2. thumbnail
    Park
    2020.07.29 20:01

    안녕하세요
    글 보고 따라서 cmd창에서 출력까지는 실행이 되었는데 혹시 스트리밍 마이크 코드를 이용해서 간단한 웹페이지를 구현해보고 싶은데 웹페이지에서 버튼을 사용해 음성인식을 시작하게 할수있을까요?
    감사합니다!

  3. thumbnail
    미스터선
    2020.08.14 07:22

    계정 키인 json 파일을 환경변수에 등록해서 사용하는데
    개발컴퓨터에서는 문제없이 잘 되는데 프로그램을 다른 사용자에게 배포할때에는 json 파일을 어떤식으로 등록해야 하는지 알 수 있는지요?
    코드 내에서 뭔가 구현해 주어야 하는지요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.08.14 09:23 신고

      릴리즈용 키를 발급받으면 되는 걸로 알고 있습니다. 구글맵을 사용한 앱에서 하는 방식을 찾아 따라하면 될듯합니다

  4. thumbnail
    익명
    2020.11.02 11:13

    비밀댓글입니다

  5. thumbnail
    Favicon of https://okcokc.tistory.com BlogIcon okcokc

    서비스계정 활성화 단계에서 아래 같은 인코딩 신택스 에러가 뜨는데 어떻게 해결해야할까요?

    (speech) C:\Users\BSC>c:\google-cloud-sdk\bin\gcloud auth activate-service-account --key-file="C:\Users\BSC\Downloads\splendid-alpha-294803-edaaa2bda13b.json"
    SyntaxError: Non-UTF-8 code starting with '\x90' in file C:\Users\BSC\speech\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
    SyntaxError: Non-UTF-8 code starting with '\x90' in file C:\Users\BSC\speech\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
    Activated service account credentials for: [splendid-alpha-294803@appspot.gserviceaccount.com]

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.09 16:19 신고

      혹시 경로상에 한글이 포함되거나 웹에서 프로젝트 생성시 한글이 포함되면 문제 될듯합니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:22 신고

      Activated service account credentials for: 된거 봐서는 활성화 된거 같은데 다음 단계로 넘어가면 문제 생기나요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:34 신고

      다음 명령 실행후 다시해보세요..
      chcp 65001

  6. thumbnail
    Favicon of https://itop.tistory.com BlogIcon Until if you can

    강좌 감사합니다^^
    답변 주시면 감사^^ ;;
    grpcio가 설치가 안되고 있습니다.
    pip install --upgrade goolgle-cloud-storage까지 설치하고,
    pip install google-cloud-speech 설치 중 error입니다.

    Building wheels for collected packages: grpcio
    Building wheel for grpcio (setup.py) ... error
    ERROR: Command errored out with exit status 1:
    command: 'C:\Users\KJS\speech\env\Scripts\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\KJS\\AppData\\Local\\Temp\\pip-install-fxkwmukt\\grpcio\\setup.py'"'"'; __file__='"'"'C:\\Users\\KJS\\AppData\\Local\\Temp\\pip-install-fxkwmukt\\grpcio\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\KJS\AppData\Local\Temp\pip-wheel-wn3961gf'
    cwd: C:\Users\KJS\AppData\Local\Temp\pip-install-fxkwmukt\grpcio\
    Complete output (79 lines):
    ASM Builds for BoringSSL currently not supported on: win-amd64
    .....

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.11 07:43 신고

      어떤 파이썬을 설치 했나요. 전 파이썬 홈페이지에서 파이썬 3.7.7을 사용했습니다

    • thumbnail
      Favicon of https://itop.tistory.com BlogIcon Until if you can
      2020.11.11 17:39 신고

      파이썬 3.9를 사용하여서 에러였던 것 같아요. 그래서 오늘 3.9 삭제후 3.7.9로 설치하니 어제 에러는 나지 않았습니다.
      오늘은 새로운 에러가 났어요^^
      (env) C:\Users\KJS\speech>python streaming_mic.py
      Could not import the PyAudio C module '_portaudio'.
      Traceback (most recent call last):
      File "streaming_mic.py", line 33, in <module>
      import pyaudio
      File "C:\Users\KJS\speech\env\lib\site-packages\pyaudio.py", line 116, in <module>
      import _portaudio as pa
      ModuleNotFoundError: No module named '_portaudio'

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.11 19:19 신고

      아래 링크처럼 해보세요.

      https://stackoverflow.com/a/61683216

  7. thumbnail
    Favicon of https://yangyang1717.tistory.com BlogIcon 김양양2020

    안녕하세요 정말 좋은 강좌 감사합니다!! 그런데 cmd에서 virtualenv env를 치면 FileNotFoundError: [Errno 2] No such file or directory: 'c:\\users\\(사용자 이름)\\anaconda3\\Lib\\venv\\scripts\\nt\\python.exe' 라는 에러가 발생하는데 혹시 해결 방법을 알 수 있을까요? 답변 주시면 정말 감사드리겠습니다ㅠ.ㅠ

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.11 19:21 신고

      기존에 설치된 파이썬과 아나콘다를 모두 지운후 파이썬 3.7.7을 설치하고 진행해보세요

    • thumbnail
      Favicon of https://yangyang1717.tistory.com BlogIcon 김양양2020
      2020.11.13 17:00 신고

      감사합니다! 위에 적힌 오류가 해결 되었습니다!
      그런데 위의 강좌를 따라하다가 오류가 발생했는데... 3-10에서 서비스 계정을 활성화 할 때

      File "C:\Users\(사용자 이름)\speech\env\Scripts\python.exe", line 1
      SyntaxError: Non-UTF-8 code starting with '\x90' in file C:\Users\(사용자 이름)\speech\env\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
      File "C:\Users\(사용자 이름)\speech\env\Scripts\python.exe", line 1
      SyntaxError: Non-UTF-8 code starting with '\x90' in file C:\Users\(사용자 이름)\speech\env\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
      Activated service account credentials for: [speech-to-text-api-test@nth-bucksaw-295005.iam.gserviceaccount.com]


      Updates are available for some Cloud SDK components. To install them,
      please run:
      $ gcloud components update

      이런 오류가 발생하는데 혹시 해결 방법을 알 수 있을까요ㅠㅠ 구글 사용자 이름이 한글로 되어 있어서 그런 건가요...? 좋은 답변 다시 한번 감사드립니다...

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.13 17:05 신고

      사용자 이름이 한글이라 그럴 수 있을듯합니다. 파이썬을 다른 경로에 설치하고 계정활성 작업도 한글 경로 없는 곳에서 해보세요

    • thumbnail
      Favicon of https://yangyang1717.tistory.com BlogIcon 김양양2020
      2020.11.14 16:31 신고

      사용자 이름은 영어고, 파이썬이 있는 경로도 영어로만 이루어진 곳에 있습니다ㅠㅠ... 대체 이유가 뭘까요...?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.14 16:39 신고

      아나콘다가.아닌 일반 파이썬으로 해보세요

    • thumbnail
      Favicon of https://yangyang1717.tistory.com BlogIcon 김양양2020
      2020.11.15 13:52 신고

      아나콘다를 설치하지 않고 파이썬 3.7.7만 설치한 채 cmd로 서비스 계정을 활성화하고 있는데 여전히... 이렇게 뜹니다ㅠㅠ 대체 해결 방법이 뭘까요...

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 13:57 신고

      env 폴더를 지우고 다시해보세요. 설정이 남아있난듯합니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:22 신고

      Activated service account credentials for: 된거 봐서는 활성화 된거 같은데 다음 단계로 넘어가면 문제 생기나요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:35 신고

      다음 명령 실행후 다시해보세요..
      chcp 65001

  8. thumbnail
    Favicon of https://eightthree.tistory.com BlogIcon 곽팔삼

    안녕하세요. 좋은 글 감사드립니다. 그런데 Visual C++ 2015 Build Tools를 설치할 때 http://landinghub.visualstudio.com/visual-cpp-build-tools
    본 링크에 들어가면 404 not found가 뜨는데 해결 방법을 알 수 있는지 궁금합니다.

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 14:28 신고

      아래 링크에서 다운로드 받아세요
      https://www.microsoft.com/ko-kr/download/details.aspx?id=48159

    • thumbnail
      Favicon of https://eightthree.tistory.com BlogIcon 곽팔삼
      2020.11.15 14:52 신고

      흠...;; 저도 위에분과 같은 곳에서 같은 오류가 발생하네요ㅡㅡ;;
      Non-UTF-8 code starting with '\x90' in file C:\Users\USER\speech\env\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
      File "C:\Users\USER\speech\env\Scripts\python.exe", line 1
      SyntaxError: Non-UTF-8 code starting with '\x90' in file C:\Users\USER\speech\env\Scripts\python.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
      Activated service account credentials for: [speech-to-text-api-test@splendid-bucksaw-295005.iam.gserviceaccount.com]

      대체 뭐 어떻게 해야 할지...

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:22 신고

      Activated service account credentials for: 된거 봐서는 활성화 된거 같은데 다음 단계로 넘어가면 문제 생기나요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 16:35 신고

      다음 명령 실행후 다시해보세요..
      chcp 65001

    • thumbnail
      Favicon of https://eightthree.tistory.com BlogIcon 곽팔삼
      2020.11.15 20:53 신고

      아이고 에러라고 적혀있길래.당연히 다음 단계가 실행이 안됄줄 알았는데 되네요^^;;;... 쩝...부끄럽습니다...ㅡㅡ;; 그래도 덕분에 해결했습니다. 감사합니다*^^* 늦었지만 좋은 하루 보내세요.

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2020.11.15 20:55 신고

      다행입니다. 저도 에러인줄 알았는데 다시 해보니 정상일때와 마지막줄 출력이 같더라고요ㅡ

  9. thumbnail
    익명
    2020.11.21 01:38

    비밀댓글입니다

  10. thumbnail
    Favicon of https://yesjiyoung.tistory.com BlogIcon yesjiyoung

    안녕하세요
    혹시 음성 input을 한 번만 출력할 수 있을까요? 계속 반복문이 도는데, 한 줄만 출력하고 종료하고싶을땐 어떤 코드를 수정하면 좋을까요?

  11. thumbnail
    익명
    2021.02.06 20:22

    비밀댓글입니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.02.06 20:32 신고

      Pycham에서 사용중인 환경에서 GOOGLE_APPLICATION_CREDENTIALS 설정을 못찾고 있습니다. 이 환경변수가 인식되어야 동작합니다. 윈도우가 아니신듯해서 이 변수 설정에 대해선 도움은 못드리겠네요.

  12. thumbnail
    Favicon of https://yesjiyoung.tistory.com BlogIcon yesjiyoung

    안녕하세요^^ 지난 번에 댓글남겼던 학생입니다!
    혹시 몇 초 후에 음성을 받을 수 있도록 하고싶은데 무엇을 추가하면 좋을까요?

  13. thumbnail
    Favicon of https://hwajodo.tistory.com BlogIcon 화조도

    안녕하세요, 좋은 가이드 감사합니다. 매번 많은 도움 받고 있습니다
    한가지 질문이 있습니다.
    colab에서 프로젝트를 진행하였는데요,

    from google.cloud import speech
    줄에서
    ContextualVersionConflict: (PyYAML 3.13 (/usr/local/lib/python3.7/dist-packages), Requirement.parse('pyyaml>=5.2'), {'libcst'})
    다음같은 오류가 발생합니다. 며칠째 해결이 안되네요..

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 08:34 신고

      pip install --upgrade pyyaml==5.2 해보세요

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.05 16:25 신고

      조언해주신대로 실행해보았는데,
      ContextualVersionConflict: (PyYAML 3.13 (/usr/local/lib/python3.7/dist-packages), Requirement.parse('pyyaml>=5.2'), {'libcst'})

      다음과 같이 동일한 오류가 발생합니다.. 버전이 충돌하는걸까요,,,

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 16:34 신고

      pip uninstall pyymal로 삭제후 다시 알려드린대로 설치해보세요

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.05 16:47 신고

      여전히 같은 오류가 발생하네요...
      컴퓨터의 문제인가 해서 mac에서도 시도해보고 컴파일러도 계속 바꿔도 이러니...ㅠㅠ 어렵네요 정말

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 16:50 신고

      이상하군요. 지정한 버전으로 설치되어야하는데

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 16:52 신고

      다시 삭제하고 pip install pyymal==5.4.1 해보세요

    • thumbnail
      익명
      2021.06.05 16:57

      비밀댓글입니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 16:58 신고

      삭제가.안되고 3.13 버전이 유지되는듯 합니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 16:59 신고

      해당 버전 파일을 지워볼 필요가 있아보이네요

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.05 17:11 신고

      파일은 어디에서 삭제해야 할까요? 찾아보니 따로 디렉토리가 형성되어있는 것 같지는 않아서요

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 17:12 신고

      pip show pyymal해보면 설치 경로를 알려즌다고 합니다

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.05 17:32 신고

      정말 지독하네요...여전합니다...ㅋㅋ
      삭제 명령어 입력 후 show 해보면 찾아지지 않는걸보니 삭제도 잘 된 것 같고,
      삭제후에 Successfully uninstalled PyYAML-5.4.1
      이렇게 나오는 걸 보니 5.4.1 버전이 깔린 것도 맞는 것 같은데 실행만 하면 왜 그럴까요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 17:45 신고

      혹시 설치할때 pip3를 사용하고 파이썬 실행할때에도 python3를 사용해보세요

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.05 17:50 신고

      앗..이미 여태껏 과정에서 pip3를 사용했고, 파이썬 버전도 3.7을 새롭게 설치해서 실행했습니다.

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 17:52 신고

      python3라고 명령내려서 실행했나요.. 예전에 이 차이로 헤맨적이 있어서요

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.05 17:53 신고

      사용하는 파이썬에 해당 버전의 패키지가 설치안된 상황인듯합니다

    • thumbnail
      Favicon of https://hwajodo.tistory.com BlogIcon 화조도
      2021.06.06 10:24 신고

      드디어 해결했습니다! 정말 감사합니다ㅠㅠ제 은인이십니다ㅠㅠ python을 완전히 삭제하고 다시 설치했더니 실행이 되네요...빠르게 답변주신 덕에 해결할 수 있었습니다!

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.06.06 12:47 신고

      다행입니다

  14. thumbnail
    익명
    2021.08.08 13:56

    비밀댓글입니다

  15. thumbnail
    익명
    2021.10.01 21:04

    비밀댓글입니다

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2021.10.01 21:12 신고

      포스트에서 사용한건 PC용입니다.

      찾아보니 안드로이드용은 프로젝트가 있네요

      https://github.com/GoogleCloudPlatform/android-docs-samples/tree/master/speech/Speech

  16. thumbnail
    Favicon of https://wdjy.tistory.com BlogIcon wdjy

    안녕하세요! 포스팅 잘 봤습니다. 그런데 따라 했을 때 아래와 같은 오류가 뜨는데 스트림 코드와 비교해서 봤을 때 완전 똑같은데 원인이 무엇일까요...?
    알려주시면 감사하겠습니다ㅠ

    Traceback (most recent call last):
    File "transcribe_streaming_mic.py", line 197, in <module>
    main()
    File "transcribe_streaming_mic.py", line 172, in main
    client = speech.SpeechClient()
    File "C:\Users\USER\speech\env\lib\site-packages\google\cloud\speech_v1\services\speech\client.py", line 367, in __init__
    self._transport = Transport(
    File "C:\Users\USER\speech\env\lib\site-packages\google\cloud\speech_v1\services\speech\transports\grpc.py", line 151, in __init__
    super().__init__(
    File "C:\Users\USER\speech\env\lib\site-packages\google\cloud\speech_v1\services\speech\transports\base.py", line 105, in __init__
    credentials, _ = google.auth.default(
    File "C:\Users\USER\speech\env\lib\site-packages\google\auth\_default.py", line 575, in default
    raise exceptions.DefaultCredentialsError(_HELP_MESSAGE)
    google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application. For more information, please see https://cloud.google.com/docs/authentication/getting-started

  17. thumbnail
    Favicon of https://smlee36.tistory.com BlogIcon smlee36

    file = open('stt_test.txt','w')
    file.write(transcript + overwrite_chars)
    file.close()

    이와같이 if not result.is_final:
    sys.stdout.write(transcript + overwrite_chars + "\r")
    sys.stdout.flush()

    해당 코드 뒤에 넣고 돌려서 파일이 생성이 되는데 텍스트가 짤려서 입력되는것 같습니다. 혹시 안짤리게 하는 방법이 있을까요?
    실시간 텍스트 정보를 추출해내고 싶습니다. 텍스트를 이용하려고합니다.

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2022.06.05 22:29 신고

      아래 코드에서 if만 고려하셨는데 else쪽에 있는 코드도 고려해야 하지 않을까 싶습니다.

      if not result.is_final:
      sys.stdout.write(transcript + overwrite_chars + "\r")
      sys.stdout.flush()

      num_chars_printed = len(transcript)

      else:
      print(transcript + overwrite_chars)

      # Exit recognition if any of the transcribed phrases could be
      # one of our keywords.
      if re.search(r"\b(exit|quit)\b", transcript, re.I):
      print("Exiting..")
      break

  18. thumbnail
    Favicon of https://smlee36.tistory.com BlogIcon smlee36

    추가적으로 output 텍스트 값을 바로 다른 코드에 값으로 전달하고 싶은데요~
    어떻게 해야할까요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2022.06.24 22:35 신고

      방법이 여러가지 가능할텐데 어느 것이 좋다하기 힘드네요. 다른상황이긴한데 전 예전에 C++의 STL에 구현된 큐로 함수간에 데이터를 전달했습니다.

  19. thumbnail
    Favicon of https://smlee36.tistory.com BlogIcon smlee36

    Google api 사용했을 때, output 데이터를 text로만 받을 수 있는건가요? 벡터 값이나 음절 값으로 추출이 안될까요? 예를들어 안녕 --> an neong --> 안되면 이와 같은 데이터가 구글에서 안내려올까요?

  20. thumbnail
    Favicon of https://smlee36.tistory.com BlogIcon smlee36

    답변 감사합니다.
    음 그러면 저 코드에서 실제로 텍스트는 어떤거로 내려오는걸까요?
    print(transcript) 인가요? 서버에서 내려오는 stt 결과를 뒷단에 다른코드에 실시간 값을 넘기고 싶거든요.

  21. thumbnail
    Favicon of https://smlee36.tistory.com BlogIcon smlee36

    잘사용하다가 다른코딩을 좀 하다가 다시 하려고 했는데

    env activate한후 install pyaudio도 안되고 python으로 mic.py 실행하면 진행되어야하는데 아무런 동작을 안하네요 ㅜ왜그럴까요?

    • thumbnail
      Favicon of https://webnautes.tistory.com BlogIcon webnautes
      2022.07.04 16:27 신고

      가상환경을 새로 만들어서 해보세요. 참고로 안될때 나오는 메시지가 문제를 해결하는 힌트입니다.