FunClip

2个月前发布 26 0 0

FunClip是一款完全开源、本地部署的自动化视频剪辑工具,通过调用阿里巴巴通义实验室开源的FunASR Paraformer系列模型进行视频的语音识别,随后用户可以自由选择识别结果中的文本片段或说话人,点击裁剪按钮即可获取对应片段的视频。

收录时间:
2025-02-23

注意:新版python,请修改moviepy的版本号。

moviepy== 1.0.3

安装🔨

Python环境安装

FunClip的运行仅依赖于一个Python环境,若您是一个小白开发者,可以先了解下如何使用Python,pip等~

# 克隆funclip仓库
git clone https://github.com/alibaba-damo-academy/FunClip.git
cd FunClip
# 安装相关Python依赖
pip install -r ./requirements.txt

安装imagemagick(可选)

 

  • 如果你希望使用自动生成字幕的视频裁剪功能,需要安装imagemagick
  • Ubuntu

 

apt-get -y update && apt-get -y install ffmpeg imagemagick
sed -i 's/none/read,write/g' /etc/ImageMagick-6/policy.xml

 

  • MacOS

 

brew install imagemagick
sed -i 's/none/read,write/g' /usr/local/Cellar/imagemagick/7.1.1-8_1/etc/ImageMagick-7/policy.xml

 

  • Windows

首先下载并安装imagemagick https://imagemagick.org/script/download.php#windows然后确定您的Python安装位置,在其中的site-packages\moviepy\config_defaults.py文件中修改IMAGEMAGICK_BINARY为imagemagick的exe路径

  • 下载你需要的字体文件,这里我们提供一个默认的黑体字体文件

 

wget https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ClipVideo/STHeitiMedium.ttc -O font/STHeitiMedium.ttc

使用FunClip

A.在本地启动Gradio服务

python funclip/launch.py
# '-l en' for English audio recognize
# '-p xxx' for setting port number
# '-s True' for establishing service for public accessing

随后在浏览器中访问localhost:7860即可看到如下图所示的界面,按如下步骤即可进行视频剪辑

  • 上传你的视频(或使用下方的视频用例)
  • (可选)设置热词,设置文件输出路径(保存识别结果、视频等)
  • 点击识别按钮获取识别结果,或点击识别+区分说话人在语音识别基础上识别说话人ID
  • 将识别结果中的选段复制到对应位置,或者将说话人ID输入到对应为止
  • (可选)配置剪辑参数,偏移量与字幕设置等
  • 点击“裁剪”或“裁剪+字幕”按钮
FunClip使用大语言模型裁剪请参考如下教程FunClip

 

B.通过命令行调用使用FunClip的相关功能

# 步骤一:识别
python funclip/videoclipper.py --stage 1 \
                       --file examples/2022云栖大会_片段.mp4 \
                       --output_dir ./output
# ./output中生成了识别结果与srt字幕等
# 步骤二:裁剪
python funclip/videoclipper.py --stage 2 \
                       --file examples/2022云栖大会_片段.mp4 \
                       --output_dir ./output \
                       --dest_text '我们把它跟乡村振兴去结合起来,利用我们的设计的能力' \
                       --start_ost 0 \
                       --end_ost 100 \
                       --output_file './output/res.mp4'
钉钉群 微信群

数据统计

相关导航