FFmpeg开发笔记(八十五)基于PyQt和FFmpeg的开源视频剪辑器OpenShot

《FFmpeg开发实战:从零基础到短视频上线》一书的"第 12 章 FFmpeg的移动开发"介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在桌面系统上还有一款开源视频剪辑框架OpenShot,通过该框架可以更快地加工编辑视频文件,下面就来介绍如何在桌面系统中使用OpenShot。
OpenShot的全称是OpenShot Video Editor,它是一款跨平台的开源视频编辑器,适用于Linux、Mac和Windows等系统,且提供了高质量编辑视频和动画的解决方案。编译之后的OpenShot工具环境叫做OpenShot Studios,采用类似剪映的操作界面,方便用户通过它剪辑视频。
OpenShot的官网地址为https://www.openshot.org/,源码托管地址为https://github.com/OpenShot/openshot-qt(星星数5k),国内镜像地址是https://gitee.com/mirrors/openshot,最新版本为2024年12月发布的OpenShot v3.3.0,可见该框架的源码更新十分及时。

一、OpenShot的运行条件

OpenShot基于Python 3.*编写,它的编译环境需要满足下列条件:

1、安装了Python 3.0或更高版本(Python的官网为http://www.python.org

2、安装了PyQt5(PyQt5的下载页面为http://www.riverbankcomputing.co.uk/software/pyqt/download5)

3、安装了libopenshot库(该库的源码托管地址为https://github.com/OpenShot/libopenshot)

4、安装了libopenshot-audio库(该库的源码托管地址为https://github.com/OpenShot/libopenshot-audio)

5、安装了FFmpeg库或者Libav库(FFmpeg的官网为http://www.ffmpeg.org/,Libav的官网为http://libav.org/)

6、Linux或MAC系统需要安装GCC构建工具,Windows系统需要安装MinGW工具

可见OpenShot主要采用PyQt5结合FFmpeg编码开发,有关Qt+FFmpeg的桌面开发可参考《FFmpeg开发实战:从零基础到短视频上线》一书的"第 11 章 FFmpeg的桌面开发"。

二、OpenShot的运行方式

OpenShot有两种运行方式:运行已编译的可执行程序和从源代码编译运行,分别说明如下:

1、运行已编译的可执行程序

如果系统已经安装libopenshot,则可执行以下命令运行OpenShot:

复制代码
cd openshot-qt所在目录
python3 src/launch.py

2、从源代码编译运行

若要从源码编译构建libopenshot,则需将环境变量PYTHONPATH设置为内部Python的绑定位置。详细的编译命令如下:

复制代码
cd libopenshot所在目录
cmake -B build -S .
cmake --build build
cd openshot-qt所在目录
export PYTHONPATH=libopenshot所在目录/build/bindings/python
python3 src/launch.py

OpenShot成功运行后的启动界面如下所示,可见该工具的操作界面类似剪映,十分方便用户快速上手视频剪辑。

更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

相关推荐
淡淡的香烟5 小时前
Android Camera开发详解
android·音视频
笨笨饿6 小时前
#109_BK7258 蓝牙 A2DP 音频数据通路深度解析
python·stm32·单片机·mcu·物联网·编辑器·音视频
≮傷£≯√10 小时前
图片合并成视频 img2video ffmpeg
ffmpeg·音视频
A133455512 小时前
视频特效字幕怎么翻译?保姆级AI字幕与外挂字幕教程
人工智能·音视频
ViiTor_AI1 天前
从去字幕到 AI 配音:完整视频本地化流程
人工智能·音视频
明德扬1 天前
多路MIPI摄像头如何同步聚合?一文看懂FPGA视频汇聚方案
fpga开发·音视频
HY小宝F1 天前
树莓派 FFmpeg 实战笔记(二):命令行、源码编译与硬件编码的真相
学习·职场和发展·ffmpeg
折枝吖1 天前
音视频开发-PCM 原理与 AI 模块实战
音视频·pcm
HySpark1 天前
熙瑾·会悟 ASR 实战:Qwen-ASR 漏字导致转写不完整,如何从音频分段到二次校验解决?
音视频·熙瑾会悟
qq_316837751 天前
uniapp + Vite + ffmpeg-wasm 0.12.x 集成示例
ffmpeg·uni-app·wasm