开源视频编辑软件kdenlive 源码学习(一)

1. kdenlive简介

Git上面有一款非常牛逼的视频编辑类软件kdenlive,很好用,关键是开源的,你可以深入研究它的实现,它是用C++编写的,Qt绘制UI。目前只有linux和window版本,貌似还没有mac版本,如果有机会,我可以改装改装编个mac版本出来,😄。

先来看看源码下载地址吧:

点击这里下载kdenlive源码:

Kdenlive源码

貌似现在它的知名度不是很高,估计真正研究这块的人也比较少吧,这么好的开源工具,评分只有可怜的不到1K的✨
kdenlive源码介绍

这里还顺便介绍一下很多好用的开源视频编辑制作软件:

1.1 Kdenlive 能做什么

Kdenlive是一个免费的开源视频编辑应用程序,基于MLT框架和KDE框架5。它是在GNU通用公共许可第2版下发布的。目前提供了linux版本和Window版本:

  • AppImage (Linux) : Appimage可以在大多数GNU/Linux发行版上运行。下载文件后,你必须使它可执行(右键和在权限设置“允许执行文件作为程序”或类似):然后你可以启动它,双击它。
    如果你正在使用Ubuntu或衍生版本,并且更喜欢使用本地包,你可以将PPA添加到你的存储库中。

  • Windows : Windows独立版:双击自解压exe(不是安装程序,不需要管理员权限解压)。双击“bin”文件夹中的Kdenlive.exe启动Kdenlive。

  • Mac OSX : Kdenlive 是可以编译出mac版本的,Kdenlive和MLT可以在MacPorts项目中编译和运行。大多数发行版都提供Kdenlive软件包。然而,Kdenlive和它的核心库(如MLT)正在快速发展,并且发布包并不总是适用于最新版本。所以如果真想学习,还得自己编译源码。

Kdenlive是KDE非线性视频编辑器的缩写。它主要针对GNU/Linux平台,但也适用于BSD和MacOS。它目前正作为一个GSOC项目移植到Windows上。

非线性视频编辑比初学者的(线性)编辑器强大得多,因此在开始之前需要更多的组织。然而,它不是专为专家保留的,可以用于小型个人项目。

它主要采用了下面这些技术:

采用了技术

通过MLT框架,Kdenlive集成了许多用于视频和声音处理或创建的插件效果。此外,Kdenlive还提供了一个强大的标题工具,这是一个DVD创作(菜单)解决方案,可以作为一个完整的工作室用于视频创建。

1.1.1 Kdenlive 的特点

先来看看Kdenlive 在window上UI页面:

Window下Kdenlive UI页面1

Window下Kdenlive UI页面2

  • 涉及到的相关技术:
    Kdenlive是一个开源的视频编辑器。该项目开始于2003年左右。Kdenlive构建在Qt和KDE框架库之上。大部分视频处理是由MLT框架完成的,它依赖于许多其他开源项目,如FFmpeg、frei0r、movit、ladspa、sox等。
    FFmpeg技术

1.1.2 Kdenlive 功能特性

1.1.2.1 可配置的界面和快捷方式

可配置的界面和快捷方式:您可以安排和保存自定义界面布局,以适合您的工作流。
键盘快捷键也可以配置为符合您的偏好。

键盘快捷键

1.1.2.2 创建视频2D标题:

创建视频2D标题

支持如下操作:

  • 对齐和分发;
  • 字母间距和行距调整;
  • 系统字体选择器,包括字体家族支持;
  • 设计特点:颜色、阴影、轮廓和渐变;
  • 用于文本动画的嵌入式爬行和滚动工具;
  • Unicode译码器;
  • 旋转和缩放;
  • 添加图片;
  • 模板的支持;
1.1.2.3 滤镜和转场特效:

几十个效果是可用的,从颜色校正到音频调整,以及所有的标准转换选项。

滤镜和转场特效

1.1.2.4 音视频显示器

如下图,可以用来监控你的音频水平或检查颜色范围,以确保你的镜头是正确的平衡。
音视频显示器
主要有这些模块:

  • 音频计
  • 柱状图
  • 波形
  • 矢量显示器
  • RGB游行
1.1.2.5 代理编辑

Kdenlive可以自动创建源代码剪辑的低分辨率副本,允许您在任何计算机上进行编辑,然后使用全分辨率进行渲染。

代理编辑

1.1.2.6 自动备份

您的项目文件每隔几分钟就会自动备份一次,并且还会保留项目文件的旧版本,以防您需要回滚到以前的版本。

自动备份

1.1.2.7 在线资源

直接从界面下载渲染配置文件,擦除和标题模板。

在线资源

1.1.2.8 时间轴预览

有时当使用高分辨率的镜头或复杂的效果,实时回放是不可能的。时间线预览允许你预渲染你的时间线的部分,以获得一个完美的平滑回放。

时间轴预览

1.1.2.9 关键帧编辑

大多数效果可以关键框,允许您更改参数随时间推移,使用线性或光滑曲线,以实现您想要的结果。

关键帧编辑

1.1.2.10 换肤功能

灵活的主题引擎,能够多种明暗主题。

换肤功能

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐