Python을 사용하여 비디오에서 텍스트 내보내기
SpeechRecognition
: 이것은 Google Speech Recognition API를 사용하여 음성 인식을 수행하거나 수행하는 라이브러리입니다.또한
moviepy
라이브러리를 사용할 것입니다. MoviePy
는 자르기, 연결, 제목 삽입, 비디오 합성(일명 비선형 편집), 비디오 처리 및 사용자 정의 효과 생성과 같은 비디오 편집을 위한 Python 라이브러리입니다. MoviePy는 GIF를 포함하여 가장 일반적인 모든 오디오 및 비디오 형식을 읽고 쓸 수 있으며 Python 2.7+ 및 3(또는 v.1.0의 Python 3.4+만)을 사용하여 Windows/Mac/Linux에서 실행됩니다.시작하자
import speech_recognition as sr
import moviepy.editor as me
video_file
, output_audio_file
, output_text_file
를 지정해야 합니다.VIDEO_FILE = "test.mp4"
OUTPUT_AUDIO_FILE = "converted.wav"
OUTPUT_TEXT_FILE = "recognized.txt"
개념은 다음과 같습니다. 스크립트는
mp4 file
를 wav file
로 변환하고 해당 파일에서 텍스트 파일을 출력합니다.그렇게 하자 - 비디오에서 오디오 추출
video_clip.audio.write_audiofile(r"{}".format(OUTPUT_AUDIO_FILE))
다음으로 해야 할 일은 인식자를 정의하는 것입니다.
recognizer = sr.Recognizer()
인식을 위해 오디오 파일을 가져와야 합니다.
audio_clip = sr.AudioFile("{}".format(OUTPUT_AUDIO_FILE))
이제 마법이 시작됩니다. 텍스트로 변환을 시작하겠습니다.
with audio_clip as source:
audio_file = recognizer.record(source)
print("Please wait ...")
result = recognizer.recognize_google(audio_file)
with open(OUTPUT_TEXT_FILE, 'w') as file:
file.write(result)
print("Speech to text conversion successfull.")
except Exception as e:
print("Attempt failed -- ", e)
이것은 전체 코드입니다:
import speech_recognition as sr
import moviepy.editor as me
VIDEO_FILE = "video.mp4"
OUTPUT_AUDIO_FILE = "converted.wav"
OUTPUT_TEXT_FILE = "recognized.txt"
try:
video_clip = me.VideoFileClip(r"{}".format(VIDEO_FILE))
video_clip.audio.write_audiofile(r"{}".format(OUTPUT_AUDIO_FILE))
recognizer = sr.Recognizer()
audio_clip = sr.AudioFile("{}".format(OUTPUT_AUDIO_FILE))
with audio_clip as source:
audio_file = recognizer.record(source)
print("Please wait ...")
result = recognizer.recognize_google(audio_file)
with open(OUTPUT_TEXT_FILE, 'w') as file:
file.write(result)
print("Speech to text conversion successfull.")
except Exception as e:
print("Attempt failed -- ", e)
메모
더 긴 비디오의 경우 오디오 데이터를 청크로 분할할 수 있습니다.
이것은 테스트 목적으로 사용하는 비디오입니다: video .
동영상은 원래 Youtube에 업로드되었으며 여기에서 찾을 수 있습니다. .
모두 감사합니다.
Reference
이 문제에 관하여(Python을 사용하여 비디오에서 텍스트 내보내기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/stokry/export-text-from-the-video-with-python-34텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)