whisperを使って動画ファイルからテキストデータを取り出すPythonコード
OpenAIの音声認識API、whisperを使って動画ファイルからテキストデータを取り出すPythonコードです。
実行する際は、コード内にOpenAIのAPIKey(自分のもの)と、動画ファイルのパスを書く必要があります。
実行すると、実行した環境にてテキストデータが出力されます。コピペするなどして使ってください。
出力結果をGPT-4などにケバ取りや清書させてもいいでしょう。
import openai
import tempfile
import os
from moviepy.editor import *
from pydub import AudioSegment
# APIキーの設定
openai.api_key = "(ここにOpenAIのAPIKeyを入れる)"
# 動画ファイルのパスを指定
video_file_path = "(ここに動画ファイルのパスを書く)"
# 拡張子を取得
file_extension = os.path.splitext(video_file_path)[1]
# 動画から音声を抽出し、一時ファイルに保存
audio_temp_fd, audio_temp_path = tempfile.mkstemp(suffix=".mp3")
os.close(audio_temp_fd)
video = VideoFileClip(video_file_path)
audio = video.audio
audio_segment = AudioSegment.from_file(audio.filename, file_extension[1:])
audio_segment.export(audio_temp_path, format="mp3")
# Whisper APIを使用して音声をテキストに変換
with open(audio_temp_path, "rb") as audio_file:
response = openai.Audio.transcribe(
file=audio_file,
model="whisper-1",
format="transcription"
)
# 結果を表示
transcription = response["text"]
print("Transcription:", transcription)
# 一時ファイルを削除
os.remove(audio_temp_path)
この記事が気に入ったらサポートをしてみませんか?