Google 语音转文本 API:从 mp4 中提取音频
Google Speech To Text API: Extracting audio from mp4
我正在尝试使用 Python 从保存在 AWS S3 中的视频 (mp4) 文件中提取文本。我可以使用音频文件使其工作,但不能使用 MP4。是否可以直接使用 MP4 或我应该使用 ffmpeg 或类似的东西提取音频。
我指的是以下link:Google Video Transcribing
def transcribe_model_selection(speech_file, model):
"""Transcribe the given audio file synchronously with
the selected model."""
from google.cloud import speech
client = speech.SpeechClient()
with open(speech_file, 'rb') as audio_file:
content = audio_file.read()
audio = speech.types.RecognitionAudio(content=content)
config = speech.types.RecognitionConfig(
encoding=speech.enums.RecognitionConfig.AudioEncoding.LINEAR16,
sample_rate_hertz=16000,
language_code='en-US',
model=model)
response = client.recognize(config, audio)
for i, result in enumerate(response.results):
alternative = result.alternatives[0]
print('-' * 20)
print('First alternative of result {}'.format(i))
print(u'Transcript: {}'.format(alternative.transcript))
您在问题中分享的 link (Google Video Transcribing) 说
Extract the audio data
You can use any file conversion tool that handles audio and video files, such as FFmpeg.
Use the code snippet below to convert a video file to an audio file using ffmpeg.
ffmpeg -i video-input-file audio-output-file
所以肯定不能直接把mp4文件放到atleast一个Googleapi
此外,由于 link 本身表明您必须与视频同步处理音频(如果您想将音频显示为 subtitles/captions)。
如果你想了解更多关于如何同步处理这些东西。那将是一个完全不同的问题,其中可能包含许多子问题。
我正在尝试使用 Python 从保存在 AWS S3 中的视频 (mp4) 文件中提取文本。我可以使用音频文件使其工作,但不能使用 MP4。是否可以直接使用 MP4 或我应该使用 ffmpeg 或类似的东西提取音频。
我指的是以下link:Google Video Transcribing
def transcribe_model_selection(speech_file, model):
"""Transcribe the given audio file synchronously with
the selected model."""
from google.cloud import speech
client = speech.SpeechClient()
with open(speech_file, 'rb') as audio_file:
content = audio_file.read()
audio = speech.types.RecognitionAudio(content=content)
config = speech.types.RecognitionConfig(
encoding=speech.enums.RecognitionConfig.AudioEncoding.LINEAR16,
sample_rate_hertz=16000,
language_code='en-US',
model=model)
response = client.recognize(config, audio)
for i, result in enumerate(response.results):
alternative = result.alternatives[0]
print('-' * 20)
print('First alternative of result {}'.format(i))
print(u'Transcript: {}'.format(alternative.transcript))
您在问题中分享的 link (Google Video Transcribing) 说
Extract the audio data
You can use any file conversion tool that handles audio and video files, such as FFmpeg.
Use the code snippet below to convert a video file to an audio file using ffmpeg.
ffmpeg -i video-input-file audio-output-file
所以肯定不能直接把mp4文件放到atleast一个Googleapi
此外,由于 link 本身表明您必须与视频同步处理音频(如果您想将音频显示为 subtitles/captions)。
如果你想了解更多关于如何同步处理这些东西。那将是一个完全不同的问题,其中可能包含许多子问题。