惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
D
DataBreaches.Net
F
Fortinet All Blogs
阮一峰的网络日志
阮一峰的网络日志
博客园_首页
Apple Machine Learning Research
Apple Machine Learning Research
H
Help Net Security
M
MIT News - Artificial intelligence
美团技术团队
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
The Cloudflare Blog
有赞技术团队
有赞技术团队
L
LangChain Blog
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 【当耐特】
S
SegmentFault 最新的问题
V
Visual Studio Blog
Blog — PlanetScale
Blog — PlanetScale
Hugging Face - Blog
Hugging Face - Blog
B
Blog
I
InfoQ

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
如何在 Mac 上给你的 iPhone 录屏「套壳」 - 少数派
2018-05-10 · via 少数派

无论是在文档中还是在网页上,当有手机截屏作为插图出现时,对其套壳往往可以使文章排版更加美观,不至于显得突兀。其实,视频也可以套壳。

视频套壳这个需求,非常适合让自动化工具来完成,比如这样:

我制作了一对 Automator 工作流以及一对 LaunchBar 动作,可以一键生成套壳视频,只需把视频提交给相应的工作流或者 LaunchBar,等待几秒钟,就可以得到完美的套壳视频。安装和使用也不复杂:

  1. 通过 Homebrew 安装视频编辑工具 FFmpeg,即在终端中运行以下命令:
    brew install ffmpeg
  2. 下载安装适合你的版本:
    1. Automator 工作流:
    2. LaunchBar 动作:
  3. 如果安装了 Automator 版本,直接把视频拖到 Automator App 上即可;如果安装的是LaunchBar 版本,则选中视频后通过快捷键发送到 LaunchBar、选中所需动作即能实现套壳。

动作思路

这个动作制作思路非常简单。

举个例子,我们偶尔会在一些视频网站上看到这样一些无良视频节目:

放置在背景图上的无良视频节目

也许是出于害怕在机器审核时被发现涉嫌侵权,这些视频会把原本的视频节目放置在一张背景图片上。而这正是本文介绍的视频套壳方法的灵感来源。

实现方法

我曾在 Power+ 中分享了一篇有关 FFmpeg 的使用技巧《利用 FFmpeg 裁剪视频到合适尺寸》,是介绍的是使用 FFmpeg 对视频进行裁剪以及把视频转制成 GIF 动图。同样,利用它也可以轻松完成给视频加壳图的动作。

首先介绍为 iPhone 8 套壳的动作。

我选择了 Facebook Design 提供的 iPhone 8 壳图作为这个动作的底图。

Facebook Design 提供的 iPhone 壳图

下载完成之后,我选用了其中 Device with Shadow 文件夹中的 Apple iPhone 8 Silver.png,并将其背景填充为白色,原因在于,这张图片背景本身为透明,图片背景中透明的部分会在通过 FFmpeg 往上粘贴视频时作为黑色处理。而我们需要的往往是套壳四周背景为白色的视频。

再把这张壳图和录屏视频放在同一个路径中。如上文所述安装完成 FFmpeg 之后,就可以在终端中直接通过以下这一条命令将 iPhone 录屏视频粘贴在选中的壳图上了:

ffmpeg -loop 1 -i Apple\ iPhone\ 8\ Silver.png -i input.mp4 -filter_complex "overlay=100:280:shortest=1" -c:a copy output.mp4

其中 100:280 为视频左上角在图片中的坐标位置:

座标位置

而为 iPhone X 的录屏视频套壳,则要比这个方法稍微复杂一点。因为 iPhone X 的屏幕并不是规则的矩形,四角为圆角,且上方有刘海,把录屏视频直接贴在壳图上则会产生如下图中左边的效果:

左边效果较差

想要修正得到右边的效果,我想到的一个方法是,把视频粘贴在壳图上,与为 iPhone 8 套壳方法相同。得到如上图所示的视频后,再把壳图贴在这个新生成的视频上。由于壳图中屏幕部分为透明,则会相当于一层蒙板,把视频中展示在屏幕中的内容露出来,而把四边的圆角遮住。具体命令如下:

ffmpeg -loop 1 -i iphonex_mockup.png -i input.mp4 -filter_complex "overlay=110:142:shortest=1" -c:a copy -y output.mp4
ffmpeg -i output.mp4 -framerate 1 -i iphonex_mockup.png -filter_complex overlay -c:a copy -y output1.mp4

制作 Automator 工作流

把以上的动作制作成 Automator 的工作流,即可如前面视频中所示,将文件直接拖放至此工作流应用的图标上,实现视频的快速套壳。

打开 Automator,按 ⌘Command-N 建立新工作流,在弹出的界面选择 应用程序

建立工作流

选取后从在左侧的资源库中通过搜索找到运行 Shell 脚本,双击它加入到右边的流程中。在 Shell 下拉菜单中选择 /bin/bash,并在下面的文本框中写入如下代码:

OLDIFS="$IFS"
IFS=$'\n'
while read f; do
    PATH=$PATH:/usr/local/bin/;
    ffmpeg -loop 1 -i ~/Desktop/iPhone8.png -i $f -filter_complex "overlay=100:280:shortest=1" -c:a copy -y "${f%.*}_mockup.mp4"
done

如图所示:

Automator 步骤中的代码

其中 ~/Desktop/iPhone8.png 是 iPhone 8 的壳图的存放路径。如果你的这张图并不是放在桌面上,需要改成相应的路径。

完成后保存,这个动作就完成了。

同理,对于 iPhone X 的视频套壳动作,其代码只需改为:

OLDIFS="$IFS"
IFS=$'\n'
while read f; do
    PATH=$PATH:/usr/local/bin/;
    ffmpeg -loop 1 -i ~/Desktop/iPhoneX.png -i $f -filter_complex "overlay=110:142:shortest=1" -c:a copy -y temp.mp4;
    ffmpeg -i temp.mp4 -framerate 1 -i ~/Desktop/iPhoneX.png -filter_complex overlay -c:a copy -y "${f%.*}_mockup.mp4";
    rm temp.mp4
done

相应地,其中两处 ~/Desktop/iPhoneX.png 也要改成 iPhone X 壳图的对应路径。

制作 LaunchBar 动作

再把以上的命令制作成 Python 脚本分别打包为 LaunchBar 动作,就可以直接通过 LaunchBar 来实现这个功能了。

至于这个 LaunchBar 动作具体的制作方法,与 Power+ 之前的很多文章中介绍的类似,详细请参阅:

当然也可以在下载下来的动作中查看 Python 脚本的内容。

得到套壳的视频后,如果想要把它转换成 GIF 动图,则可以利用上面所提到的 FFmpeg 的技巧文章中分享的把视频转换为动图的动作,完成这个功能。

转成 GIF

想更系统地了解 LaunchBar 的使用方法,欢迎订阅少数派教程《LaunchBar,全方位优化你的 macOS 使用习惯》。

> 下载 少数派 iOS 客户端、关注 少数派公众号,让智能设备更好用 ⚡️