求推荐 Mac 上好用的视频转码软件

2021-06-23 18:08:18 +08:00
 LoneFireBlossom
背景:
1. 有些视频用 iina 播放时,调节进度条会很卡顿(从网易云课堂下载的视频),所以需要转码。
2. 有些视频我需要转码成 iOS 的相册能直接播放的那种,批量、很多、视频的分辨率不尽相同。
3. intel mac

需求:
0. 批量转码后视频音频正常。
1. 批量转码后,分辨率保持不变,比如原来 1080p 的还是 1080p,原来 720p 的还是 720p 。
2. 批量转码后的视频,分别各自保存到各自的原目录。
3. 如果能利用独显当然更好,没有也行。

现状:
1. 之前在 Windows 上都是用小丸工具箱,挺好用的。
2. 几个星期来,我搜索发现主要是推荐 handbrake 和 permute 。于是都尝试过发现不满足上述两点要求,也可能是我不会用不知道咋设置。
3. 目前是装了个 windows 虚拟机继续用小丸工具箱,但是虚拟机效率太低了,还是想用 Mac 自己的。
4. ffpmeg,额,这个我不太懂,搜了一下好像不能满足我的需求……

PS:感觉换了 Mac 之后还有好多问题,搜索也找不到好的解决方案……不敢一口气发好多贴,过一段时间再发下一个,多谢各位站友帮助😭
9033 次点击
所在节点    macOS
78 条回复
acoldfox
2021-06-23 18:16:43 +08:00
Permute
lancelock
2021-06-23 18:20:59 +08:00
小丸工具箱这些工具也都是对 ffmpeg 的封装而已,怎么会不满足需求呢
wangkun025
2021-06-23 18:27:21 +08:00
花 200 块钱悬赏个 ffmpeg 的脚本,哈哈。
利益无关。我不会写 ffmpeg 脚本。
LoneFireBlossom
2021-06-23 18:33:57 +08:00
@acoldfox
这个我为了满足「视频分辨率保持不变」,所以预设的视频清晰度选择的是「复制」。有的时候两秒就完成任务了(我不懂视频编码不知道是什么情况),然后视频播放也顺畅了也能在相册里直接播放了;但有的时候不行,处理完之后还是不能在相册里播放。所以就没法用……
LoneFireBlossom
2021-06-23 18:37:52 +08:00
@lancelock 我不懂代码,只是看了一下 ffpmeg 好像不能实现「分别各自保存到各自的原目录」,或者说很麻烦吧?
比如一套教程分 10 章,每章一个文件夹,每个文件夹下几个视频,那光是往脚本里粘贴目录感觉就挺麻烦的= =

实现想来应该是能实现的,但我这种人肯定搞不定……
LoneFireBlossom
2021-06-23 18:41:37 +08:00
PS:保持原分辨率不变是因为,如果统一分辨率,那么,
设置统一 720p,那么 1080p 视频变成 720p 清晰度确实变差了;
设置统一 1080p,那么 720p 视频变成 1080p,实际上观感没怎么提升,但体积却会大不少。
neteroster
2021-06-23 18:42:31 +08:00
@LoneFireBlossom 分别保存到原目录不是 ffpmeg 的工作啊。写个脚本这个需求很简单就实现了。
neteroster
2021-06-23 18:42:55 +08:00
@neteroster *ffmpeg
LoneFireBlossom
2021-06-23 18:44:41 +08:00
@neteroster 😂我也希望我会写脚本
顺带 写脚本怎么入门……(感觉和主题无关了 等我学完几个月过去了
shpkng
2021-06-23 18:48:58 +08:00
还是用 ffmpeg 好,用那个 python 的 binding 就很简单了
supermoonie
2021-06-23 18:49:18 +08:00
可以提具体的需求给我,免费帮你做一个
lancelock
2021-06-23 18:57:48 +08:00
ffmpeg 简单的用就是命令行工具,设置下参数就行,不用跑啥脚本。复杂点需求说实话自己写一个得了,mac 上我确实没见过什么好用的工具
lancelock
2021-06-23 18:59:00 +08:00
@LoneFireBlossom 复制就是换封装,没有重新编码,简单来说就是换个壳,当然快了
ck65
2021-06-23 18:59:36 +08:00
shyling
2021-06-23 19:08:27 +08:00
compress
thx2u
2021-06-23 19:26:03 +08:00
handbreak
weak
2021-06-23 19:30:03 +08:00
专业做视频的告诉你 Adobe media encode 好用
LoneFireBlossom
2021-06-23 20:33:54 +08:00
@supermoonie 谢谢,我的需求如主楼所说,再详细一下的话就是,

第一,每当我发现好的视频教程就会把它下载下来看。所以,不知视频转码用的脚本能不能实现「改一下输入输出目录的地址就能用」?能的话就太好了,不能的话脚本只能用一次感觉就没多大意义。

第二,将各种可能的视频编码转码成 iOS 相册能直接播放的那种:
1. 源文件基本上是从网上下载的教程类视频,所以想必编码不会很奇怪。至少应该没有 10bit 之类的吧,别的我都不懂了。
2. 生成文件的编码,相册能直接播放的我只知道 x264 和 x265 正常的都能播放,更详细的设置不懂,大概设置的很正常就能播放吧。

第三,批量转码后各自的分辨率保持不变,比如队列里输入两个视频,一个是 1280*800 那么输出就是 1280*800,另一个是 1920*1200 那么输出就是 1920*1200 。

第四,生成的文件后缀名是 mp4,文件名都是各自源文件的名字后面加“_batch”。

第四,批量转码后的视频,分别各自保存到各自源文件所在的目录。

第五,如果能利用独显当然更好,我用的是 AMD Radeon Pro 5600M 。(我下午搜的时候看到说 Catalina 上一个独显的语句有效,但是 Big Sur 上就无效了……也是醉 我还想升级 Monterey 呢)



提了一大堆要求(应该说全了),我不知道这能不能用脚本实现 😂
zqhong
2021-06-23 20:38:29 +08:00
最近用过 ffmpeg,说下我的想法。

考虑到兼容性,建议视频编码用 H.264 ,音频编码用 AAC 。
(参考网上的资料,非专业,欢迎指正)

ffmpeg macOS 二进制版下载:
https://evermeet.cx/ffmpeg/

相关脚本:
https://gist.github.com/zqhong/fe8f55bf85e18263306cd1379980c0a8
(本地测试过,但不熟悉 Linux,欢迎指正)

脚本使用:
bash -x find-exec-ffmpeg.sh

ffmpeg 的资料可以看这里:
参考视频: https://www.bilibili.com/video/av40146374
官方文档: http://ffmpeg.org/ffmpeg-all.html
LoneFireBlossom
2021-06-23 20:41:30 +08:00
@lancelock 感觉我这其实也不算什么复杂的需求= =
保持原分辨率不变应该很正常,但是 handbrake 我就没找到这个选项,真是服,源文件是 1920*1200 的它就改成 1920*1080,别的再比如 4096*2304,我总不能每个视频都调一遍分辨率设置……

permute 是「视频清晰度」的选项中有低 /中 /高 /极高 /复制等几个选项。从选项的名称来看应该是说分辨率的,所以照我的理解,「复制」的意思就是“源文件分辨率是多少,生成的就是多少”。
但其实不是,实际的情况肯定如你所说。我以前只知道不同后缀名的视频换封装,比如 mkv 换到 mp4,但这视频是我从网易云课堂下载的,本来后缀名就是 mp4 (也就是说并非是我手动修改了后缀名),然后这都能换封装成另一个 mp4,也是神奇,不懂。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/785373

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX