首页 > 解决方案 > Python语音识别模块仅识别部分音频

问题描述

我正在关注本教程 https://towardsdatascience.com/transcribing-interview-data-from-video-to-text-with-python-5cdb6689eea1

我的总体目标是将视频从 Tiktok 转录成文本。在这里,我只是在 youtube 视频上测试此代码。这是我用来测试的视频:https ://www.youtube.com/watch?v=kwPWpVverkw

这是我正在使用的文章中的代码:

import wave, math, contextlib
import speech_recognition as sr
from moviepy.editor import AudioFileClip


transcribed_audio_file_name = "transcribed_speech.wav"
zoom_video_file_name = "long_video.mp4"
audioclip = AudioFileClip(zoom_video_file_name)
audioclip.write_audiofile(transcribed_audio_file_name)
with contextlib.closing(wave.open(transcribed_audio_file_name,'r')) as f:
    frames = f.getnframes()
    rate = f.getframerate()
    duration = frames / float(rate)

PACKET_DURATION = 60 
total_duration = math.ceil(duration / PACKET_DURATION)
r = sr.Recognizer()
for i in range(0, total_duration):
    with sr.AudioFile(transcribed_audio_file_name) as source:
        audio = r.record(source, offset=i*PACKET_DURATION, duration=PACKET_DURATION)
    f = open("transcription_long.txt", "a")
    f.write(r.recognize_google(audio))
    f.write(" ")
f.close()

这是结果:

所以转换你的网络我想今天我看到了你知道的基金会我在 Twitter 上发布了一些不错的东西跟我来我只是在开玩笑让你了解正在发生的事情哪些是理解的关键字很快就会弄清楚如果你喜欢不同类型的你知道不同类型的不同类型和同样的事情年轻时提到你开始说另一种语言然后你将无法解析休假信息,因为你'重新使用他在振动之间的语音转换和像你一样没有信号你的大脑爆炸语言时间是唯一可行的,就像永远移动一样好,所以那些是附近的 1D 歌手,所以在那里偷看而不是达到峰值的可能性有多大并且如果你之前有票或者如果我继续前进,如果你知道几秒钟后你有多大可能会高兴,因为你可以窥视内部所以应该有某种阿米莉亚不知道我是否相信相关性很好,所以's will be homeworkforyou in the part of the disguise thing for main 好吧,所以在我们去车站之前,他们现在我们已经特别描述了干溶胶信息被编码在那些点对点示例的特殊位置,或者是高光谱成像可以是多个平面,也可以通过使用二维张量表示 Raymond has RGB Plains 但厚度始终没有t 变化,信息仍然散布在海洋中,因此您可以更改我们想要更改附近的彩色图像的大小 d-ii 上帝保佑的属性 玩 稍微你会没有信息,这意味着你喜欢你的一天本地化,因此您在这里有一些特定信息,这里有一些信息,信息 Kiera 远离这一点,这个其他值将独立于这里的这一点的值,所以事情是相关的,除非您一遍又一遍地知道,否则这些属性与这些属性无关当我让我的模拟器有另一个壁球时,我会再次为会议写下任何内容,然后我'将是存储您的承诺的矩阵,我们有那些不同的多米诺骨牌,然后为了获得这些值中的每一个,这意味着 HealthEast lokitis 是一个属性,如果我在这里有东西,当关心这里发生的事情时,这意味着什么,所以你们中的一些人只是在颤抖剩下的手为什么我们必须配对模式那些家伙他们'重新在右下角,例如我可以使用这三种方式,我只是忘记它们,所以他们上一层的最后 3 欧元将是什么我们假设我们的斗鱼显示本地尝试问题我可以使用稀疏度吗?我有在这里 9 Ryan 在我们前往 16 之前从 15 到 3 种友好的方式从熊使用稀疏性然后使用参数共享家具共享意味着你在整个架构中重复使用相同的参数你能在这种情况下停下来吗我可以简单地添加更多的神经元,我继续在一些主要点上使用我的体重年轻突出网络时间这是多少维信号,这里的其他人正朝着天花板的厚度前进,所以他们从屏幕外面出来,他们是你知道的七岁的孩子,所以在这种情况下,我的上校要尺寸为 2 * 7 * 3,从 7 开始,让我想念你不得不感染冠状病毒,因此这里有两件物品,比如每种颜色都有一件,谢谢,所以如果你要在我身边如果您真的关心特殊信息,那么在您的笔记本中似乎是您可以达到的最低值 数字为什么上校还有我们提到的上校大小的数字 - 1 / 2 额外的任何数量的神经元在这里而不是 200 因为通常你的零意味着你的输入或 u08 Slayer 输出通过使用一些归一化层我不知道使用这种操作做什么是对合我什至没有定义它我现在不在乎也许下一班婴儿床垫操作员用微信在像复制相同体重但如果你不这样做'不使用它,所以我们不得不清理。通用或旁路连接,基本上是这些额外的连接,允许我决定是否通过这条线路发送信息,或者我应该互相说信号在一段时间后丢失,我称之为疾病具有特征信息,这意味着它提供了添加的信息具体点那么我在这张图像中的特征信息是什么 RGB图像形成是传播密度的英文意思是没有奇怪的东西信息我的目录信息空间信息从一个非常厚但没有更多信息空间的东西变成这个特征信息信息,所以你可以留在这里我的忍者 PowerPoint 技能如何让你不减少人们很快习惯的 Aveda 英菲尼迪到目前为止有任何问题要恢复它,这是错误的因为你只是扔掉你读过的信息,你烘焙最大的东西吗,你只是扔掉他一直在研究的东西,比如胶囊网络,绝对没有昂贵的东西,后来比这项工作更晚推出,所以你会有一个特定的渐变点下来,并且你已经从分支上下来了,如果你有大脑,梯度发生了什么,正确的价格它们具有相同的维度,如果你保存它们将等待相同,所以我m 在这里的训练刚刚到达这里,使用完全连接的网络需要一点时间 87% 因为在第一种情况下,我们使用过滤器完全试图让事物之间的一些依赖关系离得更远,而事物就在附近,所以它们完全浪费 赚 0 Oneida 我的输入将是这个图像 这里原来的 441 哦哦好的所以当然如果这三个属性不成立那么你应该得到你的信性能然后使用卷积网络是 BS

问题是转录对音频的某些部分效果很好,但对所有部分都没有?例如,前 20 秒效果很好(“所以转换你的网络,我猜今天我看到了你知道的基金会,我在 Twitter 上发布了好东西,跟我来,我只是在开玩笑”)然后它在转录前的几十秒内不起作用再次。

使用 Speech_recognition 模块时我是否遗漏了什么?有人可以帮我解决这个问题吗?:/

非常感谢您的帮助,最好的,

标签: pythonspeech-recognition

解决方案


推荐阅读