用 Python 轻松将懂车帝视频转换为文本

这篇具有很好参考价值的文章主要介绍了用 Python 轻松将懂车帝视频转换为文本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用 Python 轻松将懂车帝视频转换为文本

文 | 派森酱

来源:Python 技术「ID: pythonall」

用 Python 轻松将懂车帝视频转换为文本

最近在懂车帝收藏了一些感兴趣的视频,希望能整理出文字稿

用 Python 轻松将懂车帝视频转换为文本

观看视频,做笔记时遇到一个问题,需要反复一段一段的去看视频,再手敲整理笔记。想着有没有可以免费的转换工具或者软件,结果很多在线网站都需要登录注册,甚至收费。

这些网站或免费工具都没听过,如果是病毒或不靠谱,就显得浪费时间。

借助api的方式可以尝试,我们画图,先讲一讲该方法的实现思路吧!

用 Python 轻松将懂车帝视频转换为文本

流程图

从视频中提取音频可以使用moviepy模块。

由于百度API最多只支持60秒长度的音频,所以还需要使用pydub对音频文件进行切割,然后分段进行文字转换。

所以从视频到文字的大概流程应该是这样的:

在音频提取过程中还要对音频的采样率、声道数、码率进行设置,同时指定输出音频格式。语法格式:ffmpeg -y  -i voice.mp3  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 voice.pcm

用 Python 轻松将懂车帝视频转换为文本

关于语音转文字

在一段视频中真正包含文字信息的其实不是视频文件而是音频文件,这样就需要先把视频转换成音频,再从音频提取文字也就是语音识别。

关于语音转换文字,腾讯/百度/讯飞都提供有自己的API。前几天分享过一篇用python做一个漂亮女生词云舞蹈视频 用到百度的“人体分析”,这次继续沿用百度。

百度API的普通话语音识别,有15万次免费赠送,够用了

接下来就要去查百度的语音识别API文档,看看它对待提取的音频文件有什么要求,下图就是百度的python SDK文档页面

用 Python 轻松将懂车帝视频转换为文本

在这些文档中,对百度语音识别API所支持的音频格式进行了明确,概括起来主要有三点要求:

  • 参数:16k 采样率、16bit 位深、单声道;

  • 格式:pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式);

  • 其他:完整语音文件,时长不超过60s。

下载视频

收藏的视频数据都在这里面

用 Python 轻松将懂车帝视频转换为文本

you-get下载它,或者用爬虫批量下载

视频转音频

视频剪辑软件可以做这些事情,例如剪映、必剪、Pr等等。

但是当任务量增加的时候,操作就显得非常浪费时间,而用Python的话3行代码就可以提取出来,就算任务量增加使用循环即可

代码如下

from moviepy.editor import AudioFileClip

my=AudioFileClip("艾瑞泽8.mp4") # 你的视频文件
my.write_audiofile("my.mp3") # 设置生成的音频

音频比较长的话,百度短语音识别接口支持1分钟以内的音频,这时候需要对音频进行分割处理,安装pydub模块

pip install pydub

pydub支持音频的各种格式之间进行相互转换,缺点是依赖ffmpeg等文件比较严重,我在这里被坑到了,所以接下来认真安装一遍ffmpeg

Window系统安装FFmpeg

官网下载

https://ffmpeg.org/download.html

找到windows版本

用 Python 轻松将懂车帝视频转换为文本

下载这个

用 Python 轻松将懂车帝视频转换为文本

无需安装,只需解压后将ffmpeg下的bin目录路径添加到path的环境变量中即可。如下图所示:

用 Python 轻松将懂车帝视频转换为文本

注意:修改环境变量后需要重启Python IDE ,如未配置ffmpeg,即便是正确的MP3路径,也会在读取Mp3文件时,错误显示无法找到MP3文件。如下所示:FileNotFoundError: [Errno 2] No such file or directory: 'C:\Lobby.mp3'

使用python分割音频

from pydub import AudioSegment
from pydub.utils import make_chunks

#blues文件30s
audio = AudioSegment.from_mp3('my.mp3')

size = 30000  #切割的毫秒数

chunks = make_chunks(audio, size)  ##将文件切割为59s一块

for i, chunk in enumerate(chunks):
    ##枚举,i是索引,chunk是切割好的文件
    chunk_name = "voice{0}.mp3".format(i)
    print(chunk_name)
    ##保存文件
    chunk.export(chunk_name, format="mp3")

4分钟的音频,被分割成8个30秒的文件:

用 Python 轻松将懂车帝视频转换为文本

百度接口使用

1.领取免费资源

登录进去后,进入“语音技术”页面,领取免费资源

用 Python 轻松将懂车帝视频转换为文本

总量15万次赠送,够用了

用 Python 轻松将懂车帝视频转换为文本
2.安装百度AI
pip install baidu-aip
3.创建应用

创建一个语音分析的应用,记住你的AppID、API Key、Secret Key,后面会用到。

用 Python 轻松将懂车帝视频转换为文本
4.脚本
用 Python 轻松将懂车帝视频转换为文本

我们试一下,对前面分割好的其中一个音频文件,调用百度API接口就可以完成语音转文字了~

from aip import AipSpeech
import os

""" 你的 APPID AK SK """
APP_ID = 'xx'
API_KEY = 'xx'
SECRET_KEY = 'xx'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

# 读取文件
def get_file_content(file_path):
    # ffmpeg 用于将语音文件转换为pcm格式
    os.system(f"ffmpeg -y  -i %s  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 %s.pcm" % (file_path,file_path))
    with open(f"%s.pcm" % file_path, 'rb') as fp:
        return fp.read()

# 识别本地文件
result = client.asr(get_file_content('voice1.mp3'), 'pcm', 16000, {
    'dev_pid': 1537  # 默认1537(普通话 输入法模型),dev_pid参数见本节开头的表格
})

print(result['result'][0])

输出如下

哈哈,我是合肥小熊说的小熊啊,这个视频开始之前呢,简单的两句……

从输出结果来看,提取的内容不只有文字还有标点符号,应该是语音识别API根据说话的语气和停顿时间自己判断的。总体来说效果还不错。

本文是由 Python技术 公众号粉丝 ssw 投稿,欢迎大家继续踊跃投稿!

PS:Python技术交流群(技术交流、摸鱼、白嫖课程为主)又不定时开放了,感兴趣的朋友,可以在下方公号内回复:666,即可进入,一起 100 天计划!

用 Python 轻松将懂车帝视频转换为文本

老规矩,酱友们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!

用 Python 轻松将懂车帝视频转换为文本

获取神秘礼包

识别二维码,回复:1024文章来源地址https://www.toymoban.com/news/detail-425104.html


到了这里,关于用 Python 轻松将懂车帝视频转换为文本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 视频批量高效剪辑,支持将视频文件转换为音频文件,轻松掌握视频格式

    在数字化时代,视频内容日益丰富,管理和编辑这些视频变得愈发重要。然而,传统的视频剪辑软件往往操作复杂,难以满足高效批量处理的需求。现在,一款全新的视频批量剪辑神器应运而生,它支持将视频文件一键转换为音频文件,同时轻松掌握各种视频格式,让你的视

    2024年04月14日
    浏览(49)
  • 轻松转换TS视频为MP4,实现优质视频剪辑体验

    如果你是一个视频剪辑爱好者,你一定会遇到各种视频格式之间的转换问题,特别是将TS视频转换为MP4格式。别担心,我们的视频剪辑软件将为你提供最简单、高效的解决方案! 首先第一步,我们要进入媒体梦工厂主页面,在板块栏里选择“智能转码”板块 第二步,在进入板

    2024年02月13日
    浏览(46)
  • OpenAI-ChatGPT最新官方接口《嵌入向量式文本转换》全网最详细中英文实用指南和教程,助你零基础快速轻松掌握全新技术(五)(附源码)

    ChatGPT 嵌入能够将文本转换为固定长度的连续向量,允许对文本数据执行分类、主题聚类、搜索和推荐等功能。这样,以前很难被处理的文本数据可以轻松地被处理了。 使用 ChatGPT 嵌入可以极大地改善用户体验。它能够帮助聊天机器人更准确地处理文本信息,并实现更有效的

    2024年02月01日
    浏览(40)
  • 【AI】Python调用讯飞星火大模型接口,轻松实现文本生成

    随着chatGPT的出现,通用大模型已经成为了研究的热点,由于众所周知的原因,亚太地区调用经常会被禁,在国内,讯飞星火大模型是一个非常优秀的中文预训练模型。本文将介绍如何使用Python调用讯飞星火大模型接口,实现文本生成等功能。 1. 安装API库 需要安装库,在命令

    2024年02月09日
    浏览(49)
  • 利用Python轻松实现视频合成!

    你是否曾经尝试过在一个视频中添加另一个小视频的场景呢?如果是,你一定会知道这是一项令人头疼的任务。但是,有了Python的 moviepy 库,这个任务将变得非常简单!在本文中,我将向您展示如何使用 moviepy 库合成视频。 首先,我们需要载入需要合成的视频文件。假设我们

    2024年02月02日
    浏览(25)
  • Python:实现文本转换为Excel文件(附代码)

    Python:实现文本转换为Excel文件(附代码) 在日常办公和生活中,我们经常需要将文本文件转换为Excel文件,以便更好地进行管理和处理。利用Python编程语言,可以非常方便地实现这一操作。 以下是Python实现文本转换为Excel文件的完整源代码:

    2024年02月14日
    浏览(36)
  • 软件测试|使用Python轻松裁剪视频

    简介 裁剪视频是在视频编辑和处理中常见的任务之一,Python提供了多种库和工具,可以用来裁剪视频。在本文中,我们将详细讨论如何使用Python来裁剪视频,并提供示例代码。 步骤1:环境准备 首先,我们要安装必要的Python库。我们将使用 moviepy 库来处理视频,所以首先需要

    2024年01月18日
    浏览(31)
  • 【Python】只需2行代码,轻松将PDF转换成Word(含示范案例)

    可将 PDF 转换成 docx 文件的 Python 库。该项目通过 PyMuPDF 库提取 PDF 文件中的数据,然后采用 python-docx 库解析内容的布局、段落、图片、表格等,最后自动生成 docx 文件。 第一步,下载 PyMuPDF 包: 第二步,下载 python-docx 包: 第三步,下载 pdf2docx 包: 解析和创建页面布局 (

    2024年02月03日
    浏览(32)
  • 当影像遇上Python:用MoviePy库轻松搞定视频编辑

    🎬 MoviePy 是什么? MoviePy 是一个使用 Python 编写的开源库,用于在视频编辑中创建、编辑和操作视频文件。它是一款强大且易于使用的视频处理工具,可以方便地剪辑、裁剪、组合和调整视频的大小和位置。 🎥 MoviePy 的特点 MoviePy 具有以下特点: 支持多种视频格式,包括

    2024年01月18日
    浏览(28)
  • 用python实现文本/图片生成视频

    使用Python来生成视频通常涉及到使用一些专门的库,比如 OpenCV 或者 moviepy。下面是一个简单的例子,使用OpenCV和PIL(Python Imaging Library)来创建一个视频。 python复制代码 import cv2 import numpy as np from PIL import Image import os # 图片路径列表 image_list = [\\\'img1.jpg\\\', \\\'img2.jpg\\\', \\\'img3.jpg\\\'] # 视频

    2024年01月17日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包