超简单的视频分割脚本
视频分割脚本
- 写前面
- 环境配置
- 新建项目文件夹
- conda安装和项目虚拟环境创建
- 方式一(经常会接触python项目):
- 方式二(以后不怎么接触不同python环境的项目)
- 验证依赖安装
- 运行
- 修改自定义参数
- 使用示例(在 clip.ipynb 末尾的示例单元)
写前面
场景举例:
- 会议内容太长,需要将会议按照议程或者不同讲话人,将会议视频进行分割
- 课程录制,不同章节、小节进行分割归纳
等等
下载:
脚本很简洁就一个clip.ipynb文件
通过网盘分享的文件:clip.ipynb
链接: https://pan.baidu.com/s/1YCi9-MFYUHXnv-My8Gstow?pwd=1314 提取码: 1314
环境配置
新建项目文件夹
新建一个视频剪辑的项目文件夹,比如video_clip_project,然后将脚本放这个文件夹下。用pycharm或者什么编译器打开这个项目/文件夹
比如:(注:不建议用中文命名)
conda安装和项目虚拟环境创建
脚本是需要python环境的。conda是一个python版本管理工具。很多时候不同的python项目需要的python版本和依赖不一样,为了避免依赖冲突和环境臃肿,使用conda分别为不同的项目安装不同的python版本和依赖,这样就能各个python项目的开发维护互不影响。。
方式一(经常会接触python项目):
- 先装conda(个人建议装anoconda,简单粗暴)
- 为本项目搭建conda虚拟环境
环境创建当中指定python版本为python3.10以上(3.9似乎也可以,建议3.10以上)
安装anconda后在windows终端的base环境下执行下列命令,从而创建需要的项目环境:
conda create -n video_env python=3.10 -y #video_env 是自己指定的环境名
conda info --envs #执行该命令可以检查一下是否正确创建video_env环境,一般会列出base、video_env和其他你创建的环境
conda activate videoenv #激活上条命令创建的video_env环境
conda install -c conda-forge moviepy ffmpeg -y #安装脚本项目所需依赖conda install -n base -c conda-forge jupyter -y #安装jupyter
方式二(以后不怎么接触不同python环境的项目)
安装python3.10以上后,直接在项目终端使用pip执行
python -m pip install --upgrade pip
pip install moviepy imageio-ffmpeg
pip install jupyter
从而安装相关的依赖
验证依赖安装
ffmpeg -version
python -c "import moviepy, imageio, sys; print('moviepy=', moviepy.__version__); print('ok')"
运行
用 Jupyter 运行(最简单)
在 Anaconda Prompt 里启动 Jupyter
jupyter notebook
浏览器会打开 Jupyter 文件列表,、。
修改自定义参数
点击 clip.ipynb 进入,编辑 Notebook 末尾的示例参数
把示例改成你自己的文件名和分割点(单位:秒),例如:
使用示例(在 clip.ipynb 末尾的示例单元)
if __name__ == "__main__":input_videos = ["myvideo.mp4","lesson01.mp4"]split_times = [15*60, 45*60] # 在 15 分钟、45 分钟处分割for input_video in input_videos:if not os.path.exists(input_video):print(f"警告: 文件 {input_video} 不存在,跳过")continuebase_name = os.path.splitext(os.path.basename(input_video))[0]output_directory = os.path.join("output_segments", base_name)print(f"\n正在处理文件: {input_video}")split_video(input_video, output_directory, split_times)
依次运行 Notebook 的所有单元(菜单:Kernel → Restart & Run All)
运行成功后,会在当前目录自动生成:
最后裁剪后的视频文件会输出在:output_segments文件夹下
output_segments/├─ myvideo/│ ├─ part_1-0m0s-15m0s.mp4│ └─ part_2-15m0s-45m0s.mp4└─ lesson01/└─ ...