搅拌机

搅拌机

我有一个包含两个音轨的视频文件。第一个是背景音乐,另一个是解说词。我想将这些曲目合并在一起。

这是我从ffmpeg得到的媒体信息:

Input #0, avi, from '24.avi':
  Metadata:
    encoder         : BandiAviMuxer 1.0
  Duration: 00:17:49.13, start: 0.000000, bitrate: 10514 kb/s
    Stream #0:0: Video: mpeg1video (MPEG / 0x4745504D), yuv420p, 1280x1024 [SAR 1:1 DAR 5:4], 104857 kb/s, 30 tbr, 30 tbn, 30 tbc
    Stream #0:1: Audio: mp2 (P[0][0][0] / 0x0050), 48000 Hz, stereo, s16p, 192 kb/s
    Stream #0:2: Audio: mp2 (P[0][0][0] / 0x0050), 48000 Hz, stereo, s16p, 192 kb/s

我正在寻找一个 GUI 工具,因为我需要能够交互式地微调音轨的相对音量。我可能需要在整个视频中应用不同的音量比。因此,我需要一些将体积编辑为曲线的能力,以及关键点和它们之间的一些简单插值。

我最近没有做过任何视频编辑,所以我没有最喜欢的应用程序。有很多视频编辑器。我不想依次尝试每个应用程序并查看它是否支持我的工作流程。

使用仅限 Linux 的软件对我来说没问题。

答案1

我尝试在 Blender 和 PiTiVi 中完成该任务。

搅拌机

得分:3/5

我正在用这个关于 Blender 中的视频序列编辑器的写得很好的教程作为参考。我以前确实在 Blender 中玩过 3D 建模。我从未意识到它可以用作视频编辑器。我大概知道一些 Blender 键盘快捷键,这很有帮助。

安装

从项目网页获取 Linux 二进制发行版,将存档解压到例如 ~/bin 并运行名为blender.

视频编辑

Blender 无法导入具有多个音轨的视频文件。它仅导入第一首曲目。因此,ffmpeg中的一个快速解决方案是复制音轨并单独导入

ffmpeg -i 24.avi -map 0:1 -c:a copy ~/fst.mp2
ffmpeg -i 24.avi -map 0:2 -c:a copy ~/snd.mp2

现在我可以按照第一篇链接文章中描述的过程添加这些音频文件。

文章中还介绍了设置音量以及添加关键帧。没有描述如何编辑曲线。所以答案是使用与剪辑相同的选择方法。用RMB选择,按G键移动等等。有一个关于所谓的图形编辑器的 Blender 手册页

渲染

在渲染选项中,在视频大小下,我必须将大小滑块更改为 100%,并且我还关闭了抗锯齿功能,因为我认为它在这里没有用。

有一个奇怪的错误:在渲染之前,我必须将光标移动到第一帧(帧号 1)上并点击“刷新序列器”。否则渲染的视频文件就是全黑的。

我在渲染时疯狂地点击时间轴,导致 Blender 崩溃了一次。

速度

默认 H264 + MP3 设置下约为 5 fps。考虑到我的视频是 30 fps,它真的很慢。编码没有使用所有可用的 CPU 核心(我将此设置保留为自动)生成的视频在视觉上令人愉悦;-)

皮蒂维

得分 0/5

大约两年前,我在 PiTiVi 上有过一次不愉快的经历。所以我很高兴看看发生了什么变化。

安装

我使用 Fedora 19,因此yum install pitivi在 root 用户下执行即可完成这项工作。

接下来,我查看了 gstreamer 插件列表,并考虑安装我能得到的所有东西

yum install gstreamer-plugins-ugly \
gstreamer-plugins-good-extras \
gstreamer-plugins-good \
gstreamer-plugins-bad-nonfree \
gstreamer-plugins-bad-free-extras \
gstreamer-plugins-bad-free \
gstreamer-ffmpeg

其中一些软件包位于 RPM Fusion 存储库中。安装大小相当大,有 142 MB,所以我决定尝试不安装它们。这不起作用(PiTiVi 在我的文件中吐出了音频和视频缺少插件错误),所以我毕竟安装了所有插件,只是为了确定。我必须重新启动 PiTiVi,这样它才会注意到新的插件。

视频编辑

PiTiVi 与 Blender 在视频剪辑中的多个音轨方面存在同样的问题。它仅导入第一个。解决方案与 Blender 的情况相同。

ffmpeg -i 42.avi -map 0:2 -c:a copy ~/42snd.mp2

用户界面非常简单,因此添加剪辑并将其放置在时间轴上不需要解释。音量曲线从时间轴上可见。关键帧通过双击RMB 添加,并且可以使用LMB 移动。简单的。我还没有弄清楚如何在贝塞尔曲线上对它们进行插值,但线性插值听起来不错,所以我没有进一步研究这一点。

渲染

首先,渲染对话框总是冻结在“剩余 1 秒”,有时“剩余 2 秒”。它从未真正完成。尽管如此,输出文件还是被创建了。

将输出格式设置为 mp4,视频编解码器设置为 x264enc,音频设置为 aac,保留默认设置,结果是视频文件损坏,无法在 VLC 中播放,在 mplayer 中播放时没有声音,图像是彩色马赛克随机的颜色鲜艳的方块。

选择 WebM、VP8 和 Vorbis,再次保留默认设置,结果还不错,但大约有五次整个图像出现像素化,就像观看低质量的 DVB-T 广播一样。 30 分钟的视频文件大小超过千兆位,因此我认为这不是由于低质量预设造成的。

速度

使用用于视频的 VP8 和用于音频的 Vorbis 将我的 30 分钟长的视频渲染为 WP8 文件大约需要 2 个半小时。同样,默认情况下它并没有使用我的多核 CPU。此设置隐藏在各个编解码器的详细选项中。

结论

从可用性和 GUI 来看,PiTiVi 获胜。这是显著地更容易使用,并且它在时间轴上的音轨具有更好的波形可视化;-) 音量曲线默认可见,并且非常容易编辑。另外,在 PiTiVi 中开箱即用地播放最终视频的预览对我来说效果更好。在 Blender 中,视频往往落后于声音。链接的教程建议更改缓存大小。我没有尝试过,因为听到声音对我来说就足够了。

PiTiVi 无法实现渲染功能。虽然能够轻松编辑很不错,但如果事后无法渲染,那就毫无用处了。

所以两者之间不存在明显的胜利者。

相关内容