Linux 视频制作:艺术的现状
从为您带来 指环王、蜘蛛侠 以及几乎所有当今制作的电影的操作系统,迎来了 Linux 计算的圣杯:家庭和小型办公室视频制作流程。然而,与 Monty Python 倒霉的探寻目标不同,这个长期寻求的宝藏实际上存在,并且终于触手可及。
对于许多潜在的采用者来说,问题一直令人沮丧:我的家庭录像、我的业余电影、我的演示视频该怎么办?如今,即使是最懵懂的新手也能笨手笨脚地在类似玩具的 Windows Movie Maker 中组装视频,而 Mac 用户的情况甚至更好。他们拥有合适的消费者视频编辑应用程序:iMovie。
多年来,Linux 一直在发展成为好莱坞工作室流程中的主要标准。粗略浏览 CinePaint 网站,就会发现一系列电影,如果没有 Linux 基础设施,这些电影就无法按时或按预算制作出来(如果能够制作出来的话)。如果没有 Linux,星球大战 前传的外观就会有所不同,也不会有 指环王 三部曲。从早期在渲染农场的应用到在 怪物史莱克 中的成熟,Linux 一次又一次地向主要工作室证明了它的效率、强大和稳定性。
这对业余用户来说没有多大用处。通常,Linux 的电影制作软件价格昂贵;Eyeon 的 DFX 合成系统是所有基于 Linux 的专业合成系统中价格最合理的,每个席位也要花费高达 1,295 美元,而且它还是该领域中最弱的参与者。家庭制作者历来处于最糟糕的位置:在一个免费且功能极其强大的操作系统之上,该操作系统为主要的电影制片厂提供动力,但除了编写大量脚本和大量使用命令行之外,没有任何方法可以参与其中。
在过去的三年里,这种情况发生了变化。虽然情况尚未理想,但 Linux 世界的 FLOSS 端现在允许接近完整、面向最终用户的生产流程。我知道,因为在过去的四年里,我建立了一个完全在 Linux 上运行的制作工作室——流程中只有一个缺口——我靠它谋生。
假设你想编辑你兄弟的婚礼录像,制作一部短片,让一个外星人作为客人坐在观众席上。在 Windows 和 Mac 世界中,几家公司提供端到端的商业解决方案,可让您从采集到交付格式制作,涵盖(无特定顺序)编辑、字幕、合成、色彩校正、声音/配乐排序和 DVD 母版制作。3D 图形应用程序可以从其他各种公司轻松获得,价格也各不相同。然而,在他们的高端客户迫使他们生产 Linux 版本的软件之前(就像 20 世纪 90 年代 IRIX 版本的 Photoshop 那样),生产此类软件的公司将继续忽视 Linux 市场。
虽然拥有这些工具会很好,但我们不会得到它们。而且,我终于可以自信地说,当我们不再需要它们的那一天正在临近。
要运行家庭或小型办公室制作工作室,您需要图 1 中显示的大部分流程。
并非每个项目都需要所有内容,实际上大多数项目都不会达到这种复杂程度。然而,我们的外星婚礼嘉宾项目将对其进行彻底的测试,足以显示 Linux 流程中的弱点以及优势。为此,我们概述了基本的后期制作过程。
在选择采集格式时,您的原始介质可以是几乎任何类型的视频或胶片(请参阅“采集方式和格式”边栏)。
由于这里的重点是家庭和小型企业,因此可以安全地假设,未来几年最常见的格式将是 MiniDV。将素材导入计算机非常简单——DV 通过 1394 (FireWire) 端口进入,所有现代内核都很好地支持该端口,并直接转储到硬盘驱动器。请确保您有足够的磁盘空间——DV 的速度约为 12.5GB/小时。无论哪种情况,Kino 和 Cinelerra 都会为您整齐地捕获,并且还存在各种命令行工具。
有一个重要的技术问题需要牢记在心:视频压缩。几乎您导入的任何视频都将经过压缩过程。编辑通常不需要第二次压缩,因此如果您的计划是进行快速而粗略的编辑,也许添加一个标题,然后再次输出您的视频,那么这不是什么大问题。但是,一旦您开始更改视频——效果、转场、色彩校正、CGI——它就必须重新压缩。正如模拟世界中从副本的副本复制磁带时发生的那样,世代损失是一个明显的问题。因此,基本规则是尽量减少对素材的进一步压缩次数。如果您的系统管理得当,通常您只需进行一次额外的压缩;即您在最终制作项目以获得交付格式时所做的压缩。
您还需要关注您的文件系统。简而言之,视频占用大量空间,并且需要高水平的磁盘吞吐量和处理能力。您的文件系统越快,流程中的性能就越好,丢帧也就越少。在撰写本文时,XFS 是此类工作中最快的,尽管下一代 ReiserFS 有望与之匹敌。
导入后,您需要编辑您的素材。请注意:编辑不仅仅是将剪辑按顺序排列。编辑过程涉及时间决策和资产管理(素材选择、记录和评论)。如果您想要建立一个可行的设置并讲述一个连贯的故事,所有这些都是必不可少的。没有什么比在一个项目的中途被卡住,却找不到那个能够成就或破坏场景的特定镜头更糟糕的了。您的素材组织(可以像一个井井有条的目录结构一样简单)应该显而易见、可扩展和灵活。它需要与您一起成长,因此请在开始时花一些心思考虑如何设置它。
编辑器的选择将取决于您正在处理的素材格式以及您构建工作的方式。稳定性、性能、界面和互操作性都需要权衡。
在撰写本文时,Linux 编辑领域正处于剧烈的动荡之中,这在很大程度上是由 Google 的 Summer of Code 引起的。通过资助 FFmpeg/Blender 集成项目和基于 gstreamer 的 Diva,他们在已经准备爆发的大坝上打开了主要的裂缝。到发布时或不久之后,应该有五个可行的 FLOSS 编辑平台选择:Kino、Cuisine、Cinelerra、Diva 和 Blender(表 1)。当然,如果您真的想要低于 2,500 美元/席位的商业解决方案,那么始终可以选择 MainActor,这款程序以其作为视频编辑器的福特 Edsel 的持续成功而令所有使用者惊叹。
在撰写本文时,Diva 看起来很有希望,但尚未发布合适的软件包;Blender 正处于一个主要的开发周期中,以使其编辑器达到标准;Cinelerra 功能非常齐全,但由于严重的界面设计和稳定性问题,几乎无法使用(任何在其 2.0 版本更改日志中自豪地列出“调整视频窗口大小时锁定的次数更少”的程序都不会进入我的工具箱)。
在我们虚构的外星婚礼嘉宾项目中,我们将需要一些相当复杂的 CGI:一艘宇宙飞船悬停在背景中,一个某种类型的外星人坐在观众席上或站在一侧,这似乎是最低限度的。在 3D 空间中构建这些对象(建模)、添加颜色和凹凸(纹理)、动画化它们的运动以及渲染出用于与原始婚礼素材混合的完成视频,涵盖了基本的 3D 流程,正如我们在初始流程图中所见。
Linux 上有各种各样的 FLOSS 3D 程序可用,其中大多数功能强大,并且大多数都需要大量的脚本编写才能在流程中工作。有一个程序在功能、互操作性和可用性方面远远领先于其他程序:Blender。
像 POV-Ray 这样的程序本质上是渲染器,它们依赖于脚本或外部程序来获取素材,而 Blender 是一个端到端的 3D 解决方案,它可以很好地与各种渲染器和文件格式配合使用。在功能方面,Blender 的目标是成为开源的 Maya,并且在过去的 18 个月中,它朝着这个目标取得了惊人的进步,并且没有放缓的迹象。
其最重要的资产之一是其用户群。在 Linux 上可用的视频和图形应用程序中,它在社区的活力和活力方面独树一帜——甚至远远超过了 The GIMP。教程和有用的论坛比比皆是,使其面向专业的界面可以快速访问小型项目中涉及的所有基本任务。
The GIMP 在 3D 过程中也扮演着不可或缺的角色,作为纹理创建系统。从照片创建凹凸、反射、镜面和污垢贴图,或者从整块布料绘制纹理层,在 Linux 上没有任何东西在多功能性和原始功能方面能与之匹敌。更重要的是,在本文发布时,GIMP 修改应该实时更新 Blender 纹理。
运动跟踪是将计算机生成的元素的运动与您的真实世界素材相匹配。它也用于稳定抖动的手持视频。许多运动跟踪器在 Linux 上出现又消失,在开发出开源解决方案之前,这种情况可能会持续下去,因为大学研究项目被商业利益收购,用于开发和销售给电影制片厂。目前,该领域中最好也是唯一的参与者是汉诺威大学 Digilab 推出的 Voodoo。它还具有将跟踪数据输出到 Blender 可读脚本的额外优势。在实践中,导出还有很多不足之处,但幸运的是,Ian Gowen 编写了一个转换实用程序,可以将 Voodoo 笨拙的导出转换为 Blender 的非常干净的脚本 (www.blenderwars.com/downloads/voodoo_convert.py)。
Voodoo 不是一个完美的解决方案;它似乎特别容易混淆慢速变焦和慢速旋转,但尽管它存在一些小缺陷,但它仍然是一个功能强大的小程序,文档相当完善,并且授权所有人免费使用。我毫不怀疑它在未来某个时候会被商业化,但在那之前我们可以随意使用它(唉,我们不能拥有源代码)。
一旦您编辑了素材,确定了您的 CG 并跟踪了您的相机,就到了将它们全部结合在一起的时候了。不幸的是,这就是我们遇到流程中主要漏洞的地方。简而言之,在 Linux 上以任何直接的方式进行合成都没有直接的方法。一个设备齐全的、即使是基本的合成系统也将提供 HSV 调整、色阶调用、直方图、曲线调整和亮度/对比度控制,用于色彩校正素材。真正 有能力的系统还提供用于动画蒙版的 rotospline 以及在不同色彩空间中运行的两个或三个不同的键控器(如果您想使用 MiniDV 进行蓝屏工作,这是必不可少的)。最后,任何合成器都需要进行多层叠加,并且要做好。
我们的外星婚礼嘉宾肯定需要这样做;将一个外星人放在椅子上,他的宇宙飞船悬停在树后的蓝天上,这需要拍摄外星人及其飞船的渲染 3D 动画素材,使用 rotospline 为外星人前面的椅子创建前景蒙版,并使用颜色键控器将蓝天视为蓝屏,将宇宙飞船放在树后。然后,您将色彩调整应用于每一层,以便它们都很好地融合在一起。
正如您所看到的,可以使用各种工具拼凑出一个或多或少完整的套件,但这并不好看。但是,这种情况正在发生变化。
Blender 计划为 Project Orange 实现完整的合成系统,这要求 Blender 成为一个成熟的高位深度编辑和合成系统;但这要到 2006 年 2 月左右才能实现。Jahshaka 正在其 RC2 版本中引入颜色键控和样条曲线,该版本将于 2005 年秋季/2006 年冬季发布。CinePaint Glasgow 的第一个版本计划于 2005 年 12 月发布。MatteLab 可能很快就会扩展并开发成 CinePaint 或 Blender 插件,并获得更好的键控功能。
所有这些项目都显示出巨大的前景,其中一些项目将在今年取得成果,但目前,如果不进行大量的编码、将 GIMP 与 ImageMagick 和 FFmpeg 链接起来,并且主要通过命令行工作,就无法完成这项工作。这种方法非常强大,但对于业余爱好者来说远非理想。
字幕,从简单到复杂——从 Helvetica 中的快速淡入/淡出到复杂的短片标题序列——是我们流程的视频部分的最后一步。在 七宗罪 中看到的复杂标题序列在技术上属于运动图形软件的范畴,而不是简单的字幕程序。
如果您想处理复杂的运动图形,而又不想全力以赴,只是在 Blender 中创建标题序列(这可能很有趣,但这有点像用大锤打苍蝇),那么 Jahshaka 几乎就是您所需要的。
如果简单的带阴影的淡入/淡出标题更符合您的专长,那么您将非常乐意使用 Kino 的 DV Titler 插件。
一旦您的效果全部完成,并且您已将配乐混合和定时到您想要的方式,就该混音到您将与视频流重新结合的音轨了。假设您要返回到 DV,则它需要是立体声混音(实际上,即使您要为最终输出制作环绕声 DVD,也应该有一个音轨),然后可以将其重新配音到您选择的编辑器中。混音完成后,您就可以将音频与视频重新结合(多路复用)。这可以通过在视频编辑器中将音轨与视频对齐并覆盖原始音频来实现。
关于 Linux 可用的声音工具的全面讨论可以在过去几期 Linux Journal 中 Dave Phillips 的优秀文章中找到(数量太多,无法在此处一一列举,但在 Linux Journal 网站上搜索将产生良好的结果)。对于我们这里的目的,请记住需要密切注意保持声音同步。确保您的完成对话音轨的定时方式与您的源音轨相同,您就差不多完成了。
使用您的编辑程序,将视频打印回将导致尽可能少的压缩次数的格式。如果您的原始介质是 DV,并且您到目前为止已正确完成所有操作,那么这应该意味着您的素材总共只有一次重新压缩,并且您可以输出到 DV 录像机,而世代损失几乎不明显。更好的是,备份您的多路复用文件,并将其未重新压缩地备份到磁带或光盘备份系统。
多路复用后,您可以使用 QDVDAuthor(请参阅我在 2005 年 12 月刊中的文章)为您的朋友和/或客户制作一个精心设计的 DVD。或者,您可以使用 mencoder、mjpegtools 或 FFmpeg 的各种前端来压缩您的视频,以便在 Web 上交付或存储在您的家用计算机上。Kino 包含这样一个前端,其他好的前端包括 kencoder、konverter 和 Gmencoder。无论是 DVD、VHS 还是 Web 交付,这都是流程的终点。
因此,简而言之,现在只需稍作努力,就可以在您的家庭或企业中获得一个功能强大且可用的端到端视频制作工作室,并且完全在 Linux 上运行。流程中剩下的少数漏洞,尤其是在合成领域,正在迅速填补,到年中应该会好得多。我们正处于媒体创作领域突破性的一年的风口浪尖。
在接下来的几个月中,我将特别关注此流程中的潜在问题,并让您及时了解硬件和软件方面的新进展。各位制作人同仁们,请振作起来。在开源沙漠中,现在有一片视频制作的绿洲。
采集方式和格式
Linux 的视频流程几乎可以处理您投入的任何内容,尽管某些格式会限制您对编辑软件的选择。可用的格式包括但不限于
标准清晰度:DV25(MiniDV 和 Digital8):最流行的消费级和准专业级格式,既方便又具有高端相机中的图像质量;其压缩使一些合成工作(如颜色键控)变得成问题(但并非不可能)。MiniDV 通过 1394 端口捕获。
Beta/Digibeta:广播中常见,其他地方罕见,这种格式是电视视频的鼻祖。Beta 通过模拟调谐器卡捕获(符合 V4L 标准,具有 720x540 捕获能力),DigiBeta 通过 SDI 进入,需要专门的捕获硬件才能获得最佳信号保存效果。
VHS 及其衍生产品:模拟消费级介质,分辨率低于 MiniDV,必须通过符合 V4L 标准的调谐器卡捕获。
高清 (HDV):这是索尼和 JVC 在其一些准专业级相机上销售的新的消费级高清格式。它们以与标准清晰度 DV25 大致相同的比特率将高度压缩的 MPEG-2 信号记录到 MiniDV 磁带上。它通过 1394 或 USB 2.0 捕获。目前,尚不清楚这种格式是否非常有用,或者是否比逐行扫描 SD miniDV 具有任何有意义的优势。
Hi-Def:CineAlta 和其他高端电影摄影机是 Hi-Def 平台。捕获通过各种 Hi-Def 捕获卡完成,这些捕获卡可通过 Linux Media Arts (lmahd.com) 和 Specsoft 获得。此格式需要特殊的高速磁盘阵列和捕获软件,这两者都可通过 Specsoft 获得。但请注意——相机的价格从最便宜的 5 万美元起。
胶片:8 毫米、16 毫米、35 毫米和 70 毫米及其各种化身。老式的化学乳剂价格昂贵,但在魅力和(在某些情况下)外观方面是无与伦比的。胶片可以通过以下三种方式引入 Linux:1) 电视电影:投影胶片以供摄像机录制,之后根据视频格式的要求进行捕获。2) 自制胶片扫描:使用 DigitalSLR,逐帧记录胶片。一些创造性的电子工作可以使该过程自动化。耗时,但确实为您提供了 10 位或更高的色彩深度。3) 专业胶片扫描:使用非常大型的机器,以非常高的价格,在非常大型的建筑物中完成,这些建筑物通常位于很远的地方。
提炼
以下是讨论的程序,其中在我自己的工作室流程中定期使用的程序以粗体显示。
采集:Kino、Cuisine、Cinelerra、Diva、MainActor
编辑:Kino、Cuisine、Cinelerra、Diva、Blender、MainActor
3D 计算机生成图像 (CGI)、建模/纹理/动画/渲染:Blender、The GIMP、YAFRAY
运动跟踪:Voodoo
色彩校正和合成:Jahshaka、Cinelerra、Blender、ImageMagick、GIMP、CinePaint Glasgow、MatteLab
字幕:Jahshaka、Kino、Blender
循环、清理、润色和 FX 编辑:Audacity、Ardour、ReZound、Sweep
音乐:Rosegarden(配乐)和 Ardour(录音)
制作:QDVDAuthor、kencoder、konverter、Gmencoder、Kino
关于声音的一些想法
视频流程处理的是一种特定的软件,但这并不是媒体制作的全部内容。视频的声音设计过程至少与等式的视频方面一样复杂。
简而言之,您需要一个音效编辑器、一个合成器、一个混音器、一个录音机和一个配乐程序。我发现使用 Audacity、Ardour 和 Rosegarden 协同工作,同时保留一些合成器(如 TerminatorX)以备不时之需,可以获得最高的生产力并使用最少的程序。视频或电影的声音制作过程本身就是一个值得讲述的故事,但不是今天。同时,关于 Linux 可用的声音工具的全面讨论可以在过去几期 Linux Journal 中 Dave Phillips 的优秀文章中找到(2004 年 9 月刊对许多竞争者进行了良好的技术概述,2005 年 9 月刊对 Rosegarden 进行了广泛的文章介绍)。
开源蓝屏
在开源合成领域中,特别值得注意的是新来者 MatteLab (www.nccn.net/~w_rosky/evan/evan/programs/mattelab/index.html),这是一个基于 Java 的单任务实用程序,由 16 岁的高中生 Evan Rosky 设计和编写,设计和编写得非常好。虽然目前它不支持多通道键控,但它是我在 Linux 的开源领域中见过的最好的键控器。由于它输出到启用透明度的 PNG,因此允许在素材上运行多个单通道实例而不会造成质量损失,并且当与 Blender 或 Jahshaka 结合使用进行合成时,它确实是一个非常强大的工具。
Dan Sawyer 是一位自由导演/制片人,他的小型工作室的骨干建立在 Linux 之上。自 20 世纪 90 年代后期他创立 Blenderwars 电影制作社区 (www.blenderwars.com) 以来,他一直是自由和开源软件的热情倡导者。当前的项目包括独立科幻专题片 狩猎红隼 (www.blenderwars.com/kestralmannix) 和 心理项目,一本以神话中坚强女性为中心的艺术摄影集。