最好用国外网页视频抓取工具软件(Windows系统用pip安装的视频处理软件,你知道吗?)

优采云 发布时间: 2021-12-28 13:11

  最好用国外网页视频抓取工具软件(Windows系统用pip安装的视频处理软件,你知道吗?)

  关于翻译

  英文手册

  开发者:我的母语是中文,所以原来的UI是中文的,如果你想帮助翻译这个软件,你可以打开./QuickCut/languages/README.md 看看你如何帮助。

  

  快速剪切

  Quick Cut 是一款轻量级、功能强大且易于使用的视频处理软件。它是一个轻量级的工具,而不是像 Davinci Resolve 和 Adob​​e Premiere 那样专业且复杂的庞然大物。Quick Cut 可以满足普通人一般的视频处理需求:压缩视频、转码视频、反转视频、合并剪辑、根据字幕裁剪剪辑、自动字幕、自动编辑……

  Quick Cut是开源的,可以免费使用,但是因为是开源的,很容易插入恶意代码,所以请找仓库发布页面的下载地址:

  Quick Cut 是用 Python 编写的,所以我在 pypi 库中发布了 Quick Cut。只要你安装了python,就可以使用pip install Quick-Cut来安装Quick Cut,但是pypi库中的版本并没有FFmpeg自带的。您需要手动安装它。(我会用pip来安装东西,我相信你不用教安装FFmpeg)

  我没有Win32、MacOS、Linux系统的电脑,所以无法打包这些系统。但是你可以通过pip方法安装它。

  在Windows系统上用pip安装时,可能会遇到pyaudio的安装问题,可以参考这篇文章解决。

  此外,我在每一页上都制作了视频教程。基本上所有的问题都可以通过观看视频来解决。主页上的预设列表下有一个检查预设帮助按钮。有关于抑制的帮助,可以解决您的转移问题。如果代码清晰不清晰,你也应该看看,所以不要在不看官方答案的情况下提问。

  界面预览:

  

  背景

  多年前,我曾经想从一段视频中剪出一个片段,却发现市面上并没有适合普通用户的视频处理软件。

  我去了百度和知乎上搜【视频编辑软件】,陆续得到如下结果:

  我只想剪一个小夹子!专业软件学不会,买不起,电脑太卡带不动!但是其他小软件和国内很多编辑软件都存在这些问题:

  最好使用的是 Format Factory 和 Small Pill Toolbox。但是它们的功能都很少,而且还有一个小小的药丸工具箱。官网的下载地址是百度网盘的链接掉了。不知道第三方下载的版本有没有木马或者广告...

  后来从视频压制的话题中了解到了神级开源工具FFmpeg。其强大的功能和广泛的应用让我震惊!但它是一个命令行工具。在百度上搜索的时候,只有几篇文章说可以做什么和什么命令,以及常用的命令是什么。相关的图形界面工具,没有一个好用!(当然,Lossless Cut 应该是名副其实的,还是很有用的,只是功能太少了)。可惜目前还没有一款软件可以让FFmpeg在普通用户手中发挥出它的潜力!

  所以在一次操作中,我逐句翻译了官方的FFmpeg文档,做笔记,然后用它来处理视频。那个真的很好玩!它是免费的,没有广告,而且剪辑的视频也可以是无损质量的。100兆的视频压缩到10兆,肉眼看画质无损。这是好事!

  但有个问题!每次要处理一个视频,都要手动输入命令行,非常麻烦。有时你会忘记使用哪个参数来执行某个操作,而你必须仔细阅读注释。不舒服!所以我想做一个图形界面工具。我要做的就是在里面点两下,命令参数和一切都会自动生成,最后点运行就可以了。于是先后制作了基于Tasker的FFmpeg GUI Tool for Android和基于Quicker的FFmpeg GUI Tool。

  但是以上两个平台的局限性太多了。如果你想用好它们,你仍然需要制作自己的GUI。我只是python入门级,只能硬着头皮在学习平台B站花几天时间阅读入门PyQt。然后边查边做,因为PyQt的注释很少,有时候一个简单的小细节可能需要半天到一天的时间来处理。终于,成品出来了!

  当然,除了FFmpeg的功能,我还有自动将语音转字幕的功能。在这里,我想diss一些没有名字的商家:

  在Quick Cut中,我有自动转换语音到字幕的功能,可以使用Api或者腾讯的Api。以阿里的API为例。普通元套餐商业价2.5元/小时,四十五几乎没钱!在下面的帮助中,我写了一个应用阿里API的教程。只需填写API,即可使用语音转字幕。

  另外我还在Quick Cut里放了另一个自动剪辑神器,一键自动剪辑你的Vlog和视频教程。下面会有详细的介绍。

  同时推荐一个对学习外语的同学非常有用的Quick Cut功能:将字幕中每个句子对应的视频剪成片段并提取。制作外语学习视频素材,太酷了!应该算是Anki用户的福利功能吧!

  ✨ 特性界面和功能介绍 FFmpeg 界面

  在这个界面中,可以使用很多ffmpeg预设来处理音视频,例如:

  我想对手机上录制的视频进行抑制并缩小其大小,所以我只需要:首先在输入1框中输入要抑制的视频文件(此时会自动生成输出文件名),然后右侧的预设列表选择H264抑制预设(此时会自动生成total命令),最后点击底部的运行按钮开始抑制。

  还有,格式转换是基本操作!填写输出框的后缀名,就会输出对应的格式!

  点击查看Quick Cut抑制视频教程

  点击查看Quick Cut预设讲解视频教程

  分割视频接口

  该界*敏*感*词*有三个功能:基于字幕的视频分割、基于大小的视频分割、基于时长的视频分割。

  按字幕分割视频是神级功能,特别适合制作外语学习视频素材。比如把美剧的视频放进去,然后把对应的字幕文件放进去,就可以剪出每个字幕对应的视频片段了!如果您的字幕时间线与视频时间线有偏差,您也可以进行手动校准。

  按时间分割视频和按大小分割视频主要用于分享到短视频平台和微信平台。

  点击查看Quick Cut分割视频视频教程

  

  合并片段接口

  这很简单。将需要合并的视频拖入,调整好顺序,点击运行将这些视频合并为一个文件。从ig下载的15秒故事视频剪辑可以轻松合并!

  点击查看Quick Cut合并剪辑视频教程

  

  下载视频界面

  该界面提供了两个用于下载视频的命令行工具的图形界面。最简单的使用方法是将链接复制进去,然后点击下载。支持的网站很多,比如优酷、B站、YouTube、P站(越狱)...

  此外,您还可以在其中设置cookies,然后您就可以使用您以会员身份登录的cookies信息下载会员的视频质量。

  点击查看Quick Cut下载视频的视频教程

  

  自动编辑界面

  自动剪辑的原理是对视频中的有声片段和无声片段应用不同的播放速度,达到只保留关键信息的效果。它非常适合视频博客和视频教程。

  同时,您也可以选择使用阿里云或腾讯云的语音服务。视频转出字幕后,根据字幕中的关键词保留和删除视频片段。

  除了下面的演示视频,本教程中的所有视频在上传之前都经过自动编辑。

  点击查看Quick Cut自动剪辑效果演示视频

  点击查看Quick Cut自动编辑的视频教程

  

  自动字幕界面

  只需将您的视频或音频文件拖入,然后单击运行,即可生成 srt 格式的字幕。

  语音识别使用阿里云或腾讯云引擎,准确率超过95%。如果你想给自己的视频配上字幕,可以先用这个功能自动传输字幕,然后再手动修改偶尔出现的错别字,效率很高。

  语音识别引擎需要用户到阿里云官网申请API才可以使用(申请过程我做了视频教程)。阿里云语音服务上线后,每位新用户有3个月的免费试用期。在这3个月内,每天会有两个小时的录音文件转换配额。试用期过后,商业版的音频转换价格为每小时5元。随着使用量的增加,价格会越来越低。如果购买1000小时套餐,价格可低至1.每小时5元。

  如果你对比一下目前互联网上的视频转字幕服务,你就会知道Quick Cut的字幕转字幕功能有多便宜:

  对比一下:阿里云2.每小时5元,前三个月每天免费使用2小时,使用越多,价格越低。

  腾讯云的价格会低一些,但是转换速度没有阿里云快。所以推荐使用阿里云。就算是商用版,每小时2.5元的价格也不心疼。

  如果你急着下载最新的美剧视频,字幕组还没有出字幕,但是生肉又太难吃了,可以用这个字幕传输功能来传输英文字幕,一起看。

  如果你是视频工作者、UP主或者视频公司的负责人,通常会有大量的视频需要转换字幕。有了这个,你可以舍弃使用其他在线平台造成的每小时几十元的成本。一个月的费用可能会更低。节省数千美元。.

  哎,说实在的,这个软件要是推广了,真的会为一些视频字幕服务商省钱,害死父母。

  点击查看Quick Cut的自动字幕转换演示

  

  语音识别输入界面

  如果您添加了阿里云的语音引擎,则可以使用阿里云的一句话识别服务进行语音识别输入。在任何界面下,只要按住键盘上的大写锁定键3秒以上,就可以开始说话和进行语音识别。松开按键后,识别结果会自动输入到输入框中。

  有人推荐使用讯飞语音识别,但讯飞语音识别快捷键在F6位置,离主键盘很远。用手指很难够到;并且有很多相同大小的按钮,这并不好。寻找; 他还会和很多软件快捷键冲突。

  长按语音识别的大写锁定键非常方便,离打字手很近,需要的时候可以轻松按下,不会出现快捷键冲突。

  阿里云的语音识别准确率非常高。这篇文章大部分都是用这个语音识别功能写的,然后纠正了几个错别字。

  点击查看Quick Cut语音识别输入演示

  

  设置界面

  在设置界面,您可以在这里配置语音识别引擎。

  勾选关闭按钮时隐藏到托盘,可以让软件保持在后台,方便快捷地调出和编辑视频和语音输入。Quick Cut 的资源占用非常小,可以安全地放在后台,不影响性能。

  点击查看阿里云语音识别引擎配置Quick Cut视频教程

  

  帮助界面

  在帮助界面中,有如下按钮,顾名思义:

  

  发展

  普通用户无需阅读本节。您只需到发布界面下载并使用打包软件即可。如果要修改源代码,可以阅读本节。

  设置环境

  你需要 pip 来安装这些包:

  srt

keyboard

numpy

setuptools

aliyun-python-sdk-core

PyQt5

audiotsm

scipy

cos-python-sdk-v5

tencentcloud-sdk-python

oss2

pyaudio

auditok @ git+https://github.com/amsehili/auditok@v0.1.8

requests

  其中pyaudio很难安装!成功编译有很多要求。所以Windows用户可以直接在这里下载志愿者编译好的whl包,用pip安装。注意下载你的python版本对应的包。

  Linux 用户,经过@shniubobo 测试,Ubuntu 用户只需要在安装 pyaudio 之前安装这个:

  sudo apt install portaudio19-dev

  其他包可以通过 requirements.txt 安装:

  pip install -r requirements.txt

  阿里云语音识别SDK

  然后需要安装阿里云语音识别引擎的sdk。这个阿里云官方文档只说安装方式如下:

  pip install setuptools

  下载 Python SDK。

   # 打包 python setup.py bdist_egg # 安装 python setup.py install

  不过也有用户反馈说可以直接使用下面的命令安装,不过我还没试过:

  pip install aliyun-python-sdk-nls-cloud-meta

  操作问题:

  安装好依赖,开始运行脚本后,可能会遇到这些问题:

  出现这些问题的原因是一些模块使用了其他的依赖,而这些其他的依赖已经很久没有更新了。只搜索一个问题并解决它。遇到上述问题后,上网查了一下方法,并根据自己的情况进行了修改,这样问题就解决了。

  Mac 和 Linux 用户注意事项:

  为了在windows上运行时不弹出黑窗,我在使用subprocess的时候使用了一个subprocess.STARTUPINFO()类,但是在Linux或Mac上好像不能用,所以得先删几段代码使用它:

  首先是最后的这三行:

  subprocessStartUpInfo = subprocess.STARTUPINFO()

subprocessStartUpInfo.dwFlags = subprocess.STARTF_USESHOWWINDOW

subprocessStartUpInfo.wShowWindow = subprocess.SW_HIDE

  然后全局搜索删除startupinfo=subprocessStartUpInfo。从理论上讲,这很好。

  环境搭建好后运行,如果修改源码再发布,应该打包成可以独立运行的exe文件。提供了以下两种方法进行编译和打包:

  用 nuitka 编译:

  与它打包在一起的程序运行速度更快,但步骤更多。

  首先下载安装MinGW64 8.1

  然后安装 nuitka:

  pip install nuitka

  实际编译的时候,先用这个命令编译:

  nuitka --mingw64 --standalone --show-progress --show-memory --plugin-enable=qt-plugins --plugin-enable=pylint-warnings --recurse-all --recurse-not-to=numpy,jinja2 --windows-icon=icon.ico --nofollow-imports --assume-yes-for-downloads --output-dir=out QuickCut.py

  这时候你可能会遇到以下错误:

  

  因为代码中有中文字符,所以默认使用的英文编码在转码时会出错。需要找到并打开最后提示的MainControl.py文件,将错误行的latin1改为utf-8。然后就可以编译成功了。

  其实以后也不会运行了,因为nuitka不会自动导入一些包,需要手动导入。

  所以实际编译的时候,还是用这个命令先编译:

  nuitka --mingw64 --standalone --show-progress --show-memory --plugin-enable=qt-plugins --plugin-enable=pylint-warnings --recurse-all --recurse-not-to=numpy,jinja2 --windows-icon=icon.ico --nofollow-imports --assume-yes-for-downloads --output-dir=out QuickCut.py

  然后在编译好的导出目录的命令行窗口打开QuickCut.exe,会看到类似这样的错误:

  

  这时候就需要自己在Python安装目录中找到这个包:

  

  手动复制到导出目录的根目录下:

  

  反复运行,包又丢了:

  

  都需要找到这个包:

  

  将其粘贴到编译导出目录的根目录中。这个过程必须重复多次,直到所有丢失的包都被复制到导出目录。

  您可以将所有需要手动导入的包复制到另一个文件夹进行备份。重新编译后,直接copy就可以了。

  编译完成,启动后可能是这个样子:

  

  是不是很丑?这是因为样式文件夹丢失。需要到PyQt5安装目录,找到styles文件夹:

  

  复制到编译导出目录的根目录后,再次启动就正常了。

  另外,记得将 icon.ico、sponsor.jpg 和 README.html 复制到编译和导出的文件夹中。如果没有图标文件,则托盘无法启动。

  再次编译。测试成功后,可以使用如下命令进行编译:

  nuitka --mingw64 --windows-disable-console --standalone --show-progress --show-memory --plugin-enable=qt-plugins --plugin-enable=pylint-warnings --plugin-enable=numpy --recurse-all --recurse-not-to=numpy,jinja2 --windows-icon=icon.ico --nofollow-imports --assume-yes-for-downloads --output-dir=out QuickCut.py

  这样就可以隐藏命令行窗口。

  如果您在 Mac 上编译,为了图标格式兼容性,请使用:

  nuitka --mingw64 --windows-disable-console --standalone --show-progress --show-memory --plugin-enable=qt-plugins --plugin-enable=pylint-warnings --plugin-enable=numpy --recurse-all --recurse-not-to=numpy,jinja2 --windows-icon=icon.icns --nofollow-imports --assume-yes-for-downloads --output-dir=out QuickCut.py

  pyinstaller 编译:

  首先安装pyinstaller:

  pip install pyinstaller

  直接用这个命令编译:

  pyinstaller --hidden-import pkg_resources.py2_warn --noconfirm -w -i icon.ico QuickCut.py

  如果您在 Mac 上编译,为了图标格式兼容性,请使用:

  pyinstaller --hidden-import pkg_resources.py2_warn --noconfirm -w -i icon.icns QuickCut.py

  其中, --hide-import pkg_resources.py2_warn 这句话更为重要。其实整个软件都用到了这个模块,只是pyinstaller不会自动编译。当您计算机上的setuptools 版本在45.0.0 到49.1.1 之间时,会出现此问题。升级setuptools到最新,应该没有这个问题:

  pip install pyinstaller

pip install setuptools --upgrade

pyinstaller -wy -i icon.ico QuickCut.py # Windows 用户用这个

pyinstaller -wy -i icon.icns QuickCut.py # 为了图标格式兼容,Mac 用户请用这个

  编译打包后要做的事情

  编译完成后,还有一些事情要做。首先将对应系统的ffmpeg和ffprobe下载到编译根目录下,然后将README.md导出为README.html,连同icon.ico、sponsor.jpg、languages放入编译根目录(icon.md)。 icns for Mac 用户),然后下载系统对应的 annie 放入编译根目录。

  如果是Mac或Linux打包的,必须使用chmod +x 给编译目录下的可执行文件赋予可执行权限!

  然后就可以打包了。在Windows下可以打包成7z格式。Mac 和 Linux 用户不应打包 zip 或 7z 格式!因为这样会使可执行文件的权限消失!Mac 和 Linux 用户可以打包成 tar.gz 或 dmg 格式。

  建议将打包名称命名为 QuickCut_Mac_v1.2.0_pyinstaller.dmg。如果你是志愿者并且打包了这个项目,你也可以在名字后面加上你的id等信息。

  发送包的时候,建议上传到兰邹云、天翼云,新建一个文件夹,把包放在这个文件夹里,然后把这个文件夹的分享链接发出去。这样以后如果要更新,只要把新的版本放在那个文件夹里就行了,不需要更改共享链接。

  可以将打包好的云盘文件夹链接发送给作者,作者会将链接放在发布页面。

  ☕ 奖励

  千山万水总感伤,几片伤感。本软件完全开源,用爱发电。如果你愿意,你可以给我一个奖励:

  

  沟通

  如有软件反馈,可提交issues或加群:1146626791

  谢谢

  感谢知乎上的@Python 和 Mold 的帮助,让我可以用 nuitka 打包软件。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线