「简体中文 | English」
**
⚡ 开源、精准、方便的视频切片工具
** **
🧠 通过FunClip探索基于大语言模型的视频剪辑
**

FunClip是一款完全开源、本地部署的自动化视频剪辑工具,通过调用阿里巴巴通义实验室开源的FunASR Paraformer系列模型进行视频的语音识别,随后用户可以自由选择识别结果中的文本片段或说话人,点击裁剪按钮即可获取对应片段的视频(快速体验 Modelscope⭐ HuggingFace🤗)。
欢迎体验使用,欢迎提出关于字幕生成或语音识别的需求与宝贵建议~
python funclip/launch.py -m fun-asr-nano 或 python funclip/launch.py -m sensevoice 启动体验。python funclip/launch.py -l en来启动英文版本服务。FunClip的运行仅依赖于一个Python环境,若您是一个小白开发者,可以先了解下如何使用Python,pip等~
# 克隆funclip仓库
git clone https://github.com/alibaba-damo-academy/FunClip.git
cd FunClip
# 安装相关Python依赖
pip install -r ./requirements.txt
如果你希望使用自动生成字幕的视频裁剪功能,需要安装imagemagick
Ubuntu
apt-get -y update && apt-get -y install ffmpeg imagemagick
sed -i 's/none/read,write/g' /etc/ImageMagick-6/policy.xml
brew install imagemagick
sed -i '' 's/none/read,write/g' "$(brew --prefix imagemagick)/etc/ImageMagick-7/policy.xml"
首先下载并安装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
python funclip/launch.py
# '-m fun-asr-nano' 使用 Fun-ASR-Nano 模型(更高精度,支持 31 种语言)
# '-m sensevoice' 使用 SenseVoice 模型(多语种 ASR + 情绪识别 + 音频事件检测)
# '-l en' for English audio recognize
# '-p xxx' for setting port number
# '-s True' for establishing service for public accessing
| 场景 | 启动命令 |
|---|---|
| 默认中文视频裁剪,使用 Paraformer | python funclip/launch.py |
| 使用 Fun-ASR-Nano 进行 31 种语言识别 | python funclip/launch.py -m fun-asr-nano |
| 使用 SenseVoice 进行多语种识别、情绪识别和音频事件检测 | python funclip/launch.py -m sensevoice |
| 使用 Paraformer 英文模型裁剪英文视频 | python funclip/launch.py -l en |
随后在浏览器中访问localhost:7860即可看到如下图所示的界面,按如下步骤即可进行视频剪辑
1. 上传你的视频(或使用下方的视频用例)
2. (可选)设置热词,设置文件输出路径(保存识别结果、视频等)
3. 点击识别按钮获取识别结果,或点击识别+区分说话人在语音识别基础上识别说话人ID
4. 将识别结果中的选段复制到对应位置,或者将说话人ID输入到对应为止
5. (可选)配置剪辑参数,偏移量与字幕设置等
6. 点击“裁剪”或“裁剪+字幕”按钮

使用大语言模型裁剪请参考如下教程

# 下载下面命令用到的示例视频
mkdir -p examples
wget "https://huggingface.co/spaces/R1ckShi/FunClip/resolve/main/examples/2022%E4%BA%91%E6%A0%96%E5%A4%A7%E4%BC%9A_%E7%89%87%E6%AE%B5.mp4" -O "examples/2022云栖大会_片段.mp4"
# 步骤一:识别
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'
FunClip开源项目由FunASR社区维护,欢迎加入社区,交流与讨论,以及合作开发等。
| 钉钉群 | 微信群 |
|---|---|
| 
|
FunASR是阿里巴巴通义实验室开源的端到端语音识别工具包,目前已经成为主流ASR工具包之一。其主要包括Python pipeline,SDK部署与海量开源工业ASR模型等。
$ claude mcp add FunClip \
-- python -m otcore.mcp_server <graph>