我们如何从剧本文件中生成视频
嗨,我是来自 OpenResty Inc. 的 Matthew,今天我想和大家分享一下我们是如何通过 OpenResty Demo 工具链生成教程视频的。
uname -a
cd ~/git/ordemo2/
是的,我们的视频都是自动生成的,包括与本文相关的视频。
基本上人类只要为每个视频写一个剧本文件就可以了。让我们建立一个例子文件,bash.sp
。
vim bash.sp
在这个例子中,我们尝试解释一些基本的 bash 用法。
我们进行以下编辑:
- 第一段是一些旁白,会在最后的视频中说出来。而你可能已经猜到了,我,马修,是一个电脑语音。而在说出这句话的同时,我们可以让机器在终端做一些事情。
- 注意,shell 命令都有一个缩进。
- 而且我们还可以暂停终端操作,讲一些东西。注意段落的
[S]
前缀,意思是“同步”。默认情况下,是异步的。
Today I'll demonstrate some bash usage.
ps -p "$$"
[S] As we can see we are currently in a bash session.
Let's do a hello world in bash.
echo 'hello world!'
[S] We can see the hello world string is printed.
我们可以使用我们的 OpenResty Demo 工具链来处理这个剧本文件。这个文件包含了生成最终视频所需的所有必要信息。
./gen bash.sp
它现在完成了对剧本文件的处理。它还完成了所有可以重播的 shell 命令的执行。
我们使用我们的 Ops 语言工具链来实现终端操作的自动化。
opslang -h | less
第二步是将音频生成一堆 MP3 文件。
./gen-audio.sh
最后,我们生成最终的视频文件。
./gen-video.sh bash
我们都准备好了!我们现在可以检查生成的文件,准备上传到 YouTube。
ls -lh bash.mp4 bash.srt
MP4 文件就是视频文件。而 SRT 文件是相应的字幕,有准确的时间信息。
Web 浏览器操作可以通过我们的 Nav 语言工具链自动完成。
../navlang/navlang -h | less
我们将在另一个视频中介绍这个网络话题。
生成的 bash 视频被附加到本帖开头所示的视频中。
如果你喜欢这个教程,请订阅这个博客网站和我们的 YouTube 频道 或 B 站频道。谢谢!关于本文和关联视频
本文和相关联的视频都是完全由我们的 OpenResty Showman 产品从一个简单的剧本文件自动生成的。
关于作者
章亦春是开源 OpenResty® 项目创始人兼 OpenResty Inc. 公司 CEO 和创始人。
章亦春(Github ID: agentzh),生于中国江苏,现定居美国湾区。他是中国早期开源技术和文化的倡导者和领军人物,曾供职于多家国际知名的高科技企业,如 Cloudflare、雅虎、阿里巴巴, 是 “边缘计算“、”动态追踪 “和 “机器编程 “的先驱,拥有超过 22 年的编程及 16 年的开源经验。作为拥有超过 4000 万全球域名用户的开源项目的领导者。他基于其 OpenResty® 开源项目打造的高科技企业 OpenResty Inc. 位于美国硅谷中心。其主打的两个产品 OpenResty XRay(利用动态追踪技术的非侵入式的故障剖析和排除工具)和 OpenResty Edge(最适合微服务和分布式流量的全能型网关软件),广受全球众多上市及大型企业青睐。在 OpenResty 以外,章亦春为多个开源项目贡献了累计超过百万行代码,其中包括,Linux 内核、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl 等,并编写过 60 多个开源软件库。
关注我们
如果您喜欢本文,欢迎关注我们 OpenResty Inc. 公司的博客网站 。也欢迎扫码关注我们的微信公众号:
翻译
我们提供了英文版原文和中译版(本文) 。我们也欢迎读者提供其他语言的翻译版本,只要是全文翻译不带省略,我们都将会考虑采用,非常感谢!