问题描述
有什么方法可以通过图形程序或命令行实用程序在 Ubuntu 中播放 “stabilise” 视频吗?
我所说的稳定主要是指 iMovie 的一项功能,即分析晃动的视频,然后逐帧进行更改,使其看起来更流畅。这种方法通过缩放和旋转来产生效果,从而降低视频质量。请观看此视频,了解我的意思的示例。
最佳答案
transcode
软件包捆绑了图像稳定器插件 vid.stab 。他们的视频演示看起来确实很有说服力(虽然有点令人呕吐)。
Transcode package 不再维护并已从 Ubuntu 版本 18.04 及更高版本中删除。您可以 still be able to run it,但功能可能有限或有错误。
次佳答案
你可以试试Cinelerra,
安装电影
-
添加以下 PPA
ppa:cinelerra-ppa/ppa
( How to add a PPA ),然后从软件中心安装 cinelerra。
Tutorials
-
看看 this 。
第三种答案
FFmpeg deshake filter 。
ffmpeg -i "$INPUT" -vf deshake=rx=64:ry=64:blocksize=32 -strict -2 "$NEW_NAME" ## :opencl=1
视频分辨率越高, rx
、 ry
和 blocksize
中需要的值就越多。检查文档链接。
这是我使用的一个小脚本:
INPUT=$1
BASE_NAME=`basename "$INPUT"`
BASE_NAME="${BASE_NAME%.*}"
SUFFIX=${INPUT##*.}
NEW_NAME="$BASE_NAME"-deshake.$SUFFIX
set -x
ffmpeg -i "$INPUT" -vf deshake=rx=64:ry=64:blocksize=32 -strict -2 "$NEW_NAME" ## :opencl=1
set +x
## Copy the modification date too.
touch "$NEW_NAME" -r "$INPUT"
不过,我必须补充一点,结果并不是太好。我觉得最好上传到 Youtube,让它去抖并下载结果。
第四种答案
显然,ffmpeg 现在可以与 vid.stab 一起使用来生成高质量的稳定视频。\n有一些来源( 1 、 2 、 3 )报告了这一点。
如果您的视频名为 input.mp4
则执行
$ ffmpeg -i input.mp4 -vf vidstabdetect=shakiness=10:accuracy=15:result="mytransforms.trf" -f null -
$ ffmpeg -i input.mp4 -vf vidstabtransform=smoothing=30:input="mytransforms.trf" -c:a copy out_stabilized.mp4
第一步创建稳定配置文件。\n第二步创建稳定视频。\n第二步的其他选项包括
$ ffmpeg -i input.mp4 -vf vidstabtransform=input="mytransforms.trf",unsharp=5:5:0.8:3:3:0.4 -c:v libx264 -crf 16 -c:a copy -preset fast out_stabilized.mp4
$ ffmpeg -i input.mp4 -vf vidstabtransform=smoothing=30:input="mytransforms.trf" -codec:v libx264 -crf 18 -preset veryslow -pix_fmt yuv420p -c:a copy out_stabilized.mp4
(最后一个是为了高质量输出)。
有关参数的更多信息可以在 vid.stab GitHub 页面中找到。
有关的:
-
https://unix.stackexchange.com/questions/5638/video-editor-w-stabilization
-
https://dashcamtalk.com/forum/threads/how-to-stabilizing-your-video.19189/
-
How to stabilize video with Kdenlive?(有关如何使用 Kdenlive 的更多详细信息)。
额外的
第五种答案
您可以使用 Kdenlive 轻松稳定视频:
右键单击项目库中的剪辑,然后选择“剪辑作业”->“剪辑作业”。稳定
在 Ubuntu 20.10 上使用 Kdenlive 20.08.2
第六种答案
您可以尝试Shotcut(http://shotcut.org/)。这是一个 NLE(非线性编辑器),带有很多过滤器,包括视频稳定功能。\n查看本教程:https://www.youtube.com/watch?v=C3v-jYJJfuM
第七种答案
Blender 是一款免费的开源 3D 创作套件。您可以使用 2D 视频稳定功能定义跟踪点,以消除视频片段中的抖动、颠簸和抖动。
要安装 Blender 运行:
sudo apt update
sudo apt install blender
或者,最新版本 (3.0.1) 可以是 Downloaded from the Blender Website.
视频稳定指令记录在 the Blender 3.0 Manual 中
以下是使用稳定功能的基本概述:
-
点击 “open” 加载视频剪辑。\n
-
单击左侧的“设置场景帧”以生成视频时间轴。\n
-
单击 “Tracking settings” 并选择 locRot。添加任意数量的标记以进行位置和旋转。\n
-
现在单击 “Stabilization” 选项卡以启用 2D 稳定性。\n\n
-
选择您之前标记的位置和旋转轨迹。\n
-
点击顶部的 “clip display”,然后选择 “show stable”。\n\n
-
现在单击 “Autoscale”。或者,如果您希望根据自己的喜好进行调整,则可以移动滑块以获得所需的结果。\n
-
播放视频并欣赏稳定版本的素材。\n
-
点击 “save” 保存视频剪辑。\n