爱意满满的作品展示区。
lhc70000

IINA - 一个现代的 macOS 视频播放器

  lhc70000 ·
lhc70000 · Jan 4, 2017 · 78872 views
This topic created in 3590 days ago, the information mentioned may be changed or developed.

作为一个 Mac 用户,或许你和我一样感到过疑惑:为什么这样一个拥有众多高质量软件的平台,竟没有一个强大而优雅的视频播放器。

说起 macOS 上的视频播放器,大多数人会举出 QuickTime 、 VLC 、 MPlayerX 等名字,然而他们的缺点也显而易见: QuickTime 支持的格式太少; VLC 界面不美观,也时常卡顿; MPlayerX 基于稍稍过时的 mplayer ,不再有大幅更新,而且界面......不是那么 Mac 。

在这个知乎问题中,有人推荐过了 mpv 。 mpv 是 mplayer 系唯一活跃开发的分支,也是当前跨平台功能最强大的播放软件之一。两年前的我也是从这个问题才了解到 mpv ,当即装上测试,对它的解码能力和强大配置选项有了很深的印象。但即使作为程序员的我,也用不惯它的命令行界面:一个媒体类软件,怎能没有一个好用好看的 UI 呢?

所以今年暑假,我突然冒出「做一个现代的 macOS 视频播放器」的想法。我经常想出个点子做一两天之后坑掉,但是幸运的是,对于这个项目,虽然中间由于自己懒和课程太忙暂停了好一阵,我还是坚持下来了。

Project IINA,是一个基于 mpv 、契合 macOS 设计风格、力求做到最佳用户体验、轻便且功能强大的视频播放器项目。

解码和播放

IINA 以 mpv 为播放核心,所以享受到了 mpv 解码和图像方面的所有优点。与 MPlayerX 使用的 slave mode 不同, IINA 使用了 libmpv 的 C API ,来提供更加稳定快速的渲染和控制。此外,它使用原始屏幕分辨率渲染,所以比起其他一些播放器画质有显著提高。

( IINA 与 MPlayerX 同分辨率下的字幕渲染对比)

用户界面

不多说,先上截图:

当前 macOS 的毛玻璃效果可以选择材质,所以标题栏和播放控制有四种主题可选: Dark (截图中的主题)、 Ultra Dark 、 Light 和 Medium Light 。

语言方面,开发(和截图中)语言为英文,但目前几乎所有界面都有简体中文支持。

快速设置

或许你试过在其他播放器中,调整音频延迟等选项时,需要不断点击菜单项来一次又一次地加减音频延迟的数值;或者在选择音轨字幕时,展开好几层菜单来找到需要的那一个。当然, IINA 提供了和其他播放器一样,甚至更丰富的菜单项,它也提供了一个快速设置界面,涵盖了所有常用的视频、音频和字幕选项,并使用了各种可交互的控件来大大加快更改各种播放设置的效率。

(视频设置)

(音频设置)

(字幕设置)

这些界面只需一个快捷键即可调出。传统的菜单项设置也全部保留,方便有任何需求的用户。

甚至对于画面剪切(用途有去黑边等),除去快速设置中的按常用长宽比剪切,它甚至提供了一个全交互式的剪切界面(此界面将来可扩展至更多设置):

播放列表和章节

IINA 支持简易的播放列表(更多功能稍后添加)。对于分章节的视频,它更是可以把内容及起始时间一目了然地列出:

(播放列表)

(章节)

点击即可跳转至相应视频或者时间。

丰富的设置项

IINA 希望能迎合尽可能多用户的喜好。在开发过程中,遇到和身边人不同的操作习惯,我会把它们作为可选的设置项加入偏好设置。

比如,播放按钮两边的左右箭头,可以选择调整速度(类似 QuickTime )、上一个 /下一个媒体( MPlayerX )或是前进 /后退;又如鼠标在播放界面单击和双击,都可以有可选的相应动作。

我也尽量满足一些「强迫症」用户的偏好,所以在拖动播放控制时,可以吸附窗口中心;又如在根据视频大小调整窗口大小时,可以选择根据 Retina 屏物理分辨率还是逻辑分辨率。

对于快捷键, IINA 保留了整个 mpv 的 input.conf 系统,以做到与原来 mpv 用户的最大兼容。但是,用户可以有多个快捷键配置文件,并在 GUI 中切换和编辑他们(暂时可以做到快捷键配置的管理和录制新快捷键,但对应命令需要自行输入;此问题会尽快解决)。

欲查看所有设置项的截图,请访问 IINA 的网站(链接在文章底部)。

MPV 的配置文件和脚本系统

当然, IINA 支持 mpv 强大的配置文件和 lua 脚本系统。对于现有的 mpv 用户,只需要打上一个勾, IINA 就会自动使用原有的全部配置(并覆盖偏好设置中的相关项),从而几乎无缝切换到一个同样内核但有强大界面的新播放器。

目前 IINA 也支持 mpv 的日志功能( Debug 用),以及使用 mpv 自己的 osd 。

当然,对于不熟悉 mpv 的用户,这些选项平时会被禁用,不会有任何影响。

面向现代 macOS

现有的播放器有很多都含有不少冗余部分,如 MPlayerX ,含有很多用于兼容 10.6 的代码,而如今几乎没有人在使用此版本。 IINA 仅面向现代 macOS ,支持 macOS 10.10+,推荐使用 macOS 10.12 。

免费,开源,期待你的参与

IINA 由纯 Swift 写成,并在 github 上使用 GPLv3 开源。 IINA 不管现在还是将来,都将免费。

如果你对这个项目感兴趣,可以用各种方式给我反馈:

  • 下载并测试
  • 提出 bug report
  • 提出 feature request
  • 在 github 上加星星
  • 检查我的代码并提出建议(我知道写得很渣)
  • 甚至提出 pull request
  • 对用户界面提出建议
  • 提供其他语言的本地化
  • 在 bilibili 围观我的不定期写代码直播(?)http://live.bilibili.com/2639149
  • 任何其他反馈

Alpha 1

目前 IINA 已经推出了第一个版本 v0.0.1 。不过由于我的经验不足,我相信此版本仍有很多待解决的问题。如果你发现了问题,甚至软件根本不能打开,请在 github 上提出 issue 或者通过邮件 /私信等方式联系我。

下载地址等请参见网站,或 github 上的 release 。

Github : https://github.com/lhc70000/iina

网站:https://lhc70000.github.io/iina/zh-cn/

(第一次发帖就是类似广告的东西,还请大家见谅^ ^||)

Supplement 1  ·  Jan 4, 2017

由于反馈人数有点多,有回复限制而不能及时回复,如果你希望继续跟进交流,请加入QQ群

142730636

谢谢各位( ´ ▽ ` )ノ

228 replies  •  2019-05-20 20:31:00 +08:00
1  2  3  
❮ ❯
xjbeta
xjbeta
Jan 4, 2017
1
放心 这不算广告 支持下
wjh3936
wjh3936
Jan 4, 2017
2
k 看上去好像还不错。。
smilexyk
smilexyk
Jan 4, 2017 via iPhone
3
支持下。本人对播放器这块也不是很懂,只能默默围观帮忙测试了 QAQ
ioioioioioioi
ioioioioioioi
Jan 4, 2017
4
看起来不错, mpv 确实丑。
young
young
Jan 4, 2017 via Android
5
漂亮,赞
Vogan
Vogan
Jan 4, 2017 via iPhone
6
滋瓷
sky1909
sky1909
Jan 4, 2017
7
加油,喜欢简单的界面,用过射手也现在是主力播放器,希望可以将来替换

不知道是否可以支持字幕在线匹配?
和蓝光原盘支持?
![]( https://cdn.qingjie.me/2017-01-04-%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202017-01-04%20%E4%B8%8B%E5%8D%887.26.01.png)

![]( https://cdn.qingjie.me/2017-01-04-%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202017-01-04%20%E4%B8%8B%E5%8D%887.26.05.png)
fo2w
fo2w
Jan 4, 2017
8
有自动下载字幕功能么, 我感觉我现在最需要播放器的功能是这个...
Sivan
Sivan
Jan 4, 2017 via iPhone
9
你问我兹瓷不兹瓷,我说兹瓷。
kalsir
kalsir
Jan 4, 2017 via iPhone
10
看着不错啊,不知道外挂字幕的编码问题如何……
sky1909
sky1909
Jan 4, 2017
11
补充下刚才的图片,左侧为射手,右侧为 IINA ,喜欢圆角处理,还有打开很快
希望可以支持上面两点要求就好了
bugcode
bugcode
Jan 4, 2017 via iPhone
12
看着不错
xuan_lengyue
xuan_lengyue
Jan 4, 2017
13
漂亮,已经设置为默认播放器
kitawa
kitawa
Jan 4, 2017
14
不管怎么样都要支持一下, mac 上的播放器可选择的实在太少。
mildnes
mildnes
Jan 4, 2017
15
比较关心的是不是能播放蓝光盘。在线字幕都还好。。现在蓝光盘都用 kodi 看的。。但是 kodi 不是很方便。。 so 。。这个如果能支持蓝光盘是极好的。
Lonely
Lonely
Jan 4, 2017
16
跟 movist 比呢
leaves615
leaves615
Jan 4, 2017
17
非常支持。
lhc70000
lhc70000
OP
Jan 4, 2017 via iPhone❤️1
18
@886106 @fo2w 在线字幕匹配只要有可用的 API ,我就会在下一个版本中添加~ 感谢反馈
v2xeuser
v2xeuser
Jan 4, 2017
19
国产播放器?滋瓷!!!
lhc70000
lhc70000
OP
Jan 4, 2017 via iPhone
20
@Gothack 字幕编码问题,现在的版本应该可以自动选择,菜单中也可以手动选择,不过不排除有 bug 的可能性,还请帮忙测试。如果有不支持的字幕,请给我链接,我争取尽快修复。
minamike
minamike
Jan 4, 2017❤️1
21
@fo2w 这个 alfredworkflow 可能可以减轻找字幕的烦恼 = = http://lucifr.com/2014/05/01/subtitle-workflow-for-alfred-2/
lhc70000
lhc70000
OP
Jan 4, 2017 via iPhone
22
@mildnes @886106 蓝光播放此版本不支持(好像 libmpv 编译时就没加入此选项),不过只要有需求,会尽快加入。
helloSwift
helloSwift
Jan 4, 2017 via iPhone
23
很赞

但是这个图标_(:3 」∠)_
atone
atone
Jan 4, 2017
24
这个播放器好赞!强烈支持!
lhc70000
lhc70000
OP
Jan 4, 2017 via iPhone
25
@helloSwift hhh 图标虽然不是我做的但是可以改进,只要提出意见即可~
MrX
MrX
Jan 4, 2017
26
这个要滋瓷,完成度已经很高了,赞
Lagrange
Lagrange
Jan 4, 2017
27
不错肯定是不错啦,要是换个精致的图标就超神了
yipeng
yipeng
Jan 4, 2017
28
怒赞
lydasia
lydasia
Jan 4, 2017
29
vlc 路过,表示 3.0 貌似解决了一直以来中文字幕乱码的问题。
ShinCurry
ShinCurry
Jan 4, 2017
30
手动滋瓷
golmic
golmic
Jan 4, 2017 via Android
31
支持
burning
burning
Jan 4, 2017
32
两个问题:
1.播放时仍然会启动屏保
2.鼠标滚轮不能调节音量
weicaizhi
weicaizhi
Jan 4, 2017
33
macOS 太需要这样一款功能强大且 fancy 的视频播放器了!

另外,建议能在字幕这个功能多下点功夫,毕竟在国内挂字幕是个硬需求。

哦,对了, IINA 这个名字有什么特殊意义吗?

最后,感谢作者,加油!强烈支持!!!
ebeb
ebeb
Jan 4, 2017
34
滋瓷
burning
burning
Jan 4, 2017
35
3.如果启用了单击暂停 /播放功能,双击全屏时,也会触发暂停 /播放
cyio
cyio
Jan 4, 2017
36
从 win linux 过来半年, mac 下每次用播放器,都像回到原始社会。当然可能是习惯问题
fo2w
fo2w
Jan 4, 2017
37
@lhc70000
@minamike
感谢两位大大~
shinwood
shinwood
Jan 4, 2017 via iPhone
38
赞楼主!
yuPD97Yeed4QM245
yuPD97Yeed4QM245
Jan 4, 2017 via iPad
39
赞一个先
owlsec
owlsec
Jan 4, 2017
40
赞楼主!这叫发明创造,不叫广告~
exoticknight
exoticknight
Jan 4, 2017
41
好~顺便能通过项目来学 swift ~请问是 swift3 吗?
fancymax
fancymax
Jan 4, 2017 via iPhone
42
目前用爱奇艺,感觉完全满足要求。
smallaccount
smallaccount
Jan 4, 2017
43
音量可以调到 300%吗?
squid157
squid157
Jan 4, 2017
44
资瓷
ztmark
ztmark
Jan 4, 2017
45
赞
nanoxx
nanoxx
Jan 4, 2017 via iPhone
46
支持~
fancymax
fancymax
Jan 4, 2017
47
不过还是要大大的赞~~
TangMonk
TangMonk
Jan 4, 2017
48
支持
TangMonk
TangMonk
Jan 4, 2017
49
支持!
TangMonk
TangMonk
Jan 4, 2017
50
因为某些原因还没有升级 macOS, 请问支持 OS X 吗?
Phant0m
Phant0m
Jan 4, 2017 via iPhone
51
支持 非常 nice
hptcyhj
hptcyhj
Jan 4, 2017
52
希望能支持 movist 的软肋——特效外挂字幕。
wc0517
wc0517
Jan 4, 2017
53
强烈支持,不知道省电方面做得如何
clavichord93
clavichord93
Jan 4, 2017 via iPhone
54
我觉得可以先不急加新功能,先把基础功能优化好,后面功能可以慢慢加~支持一个~
ashfinal
ashfinal
Jan 4, 2017
55
@ioioioioioioi


mpv 丑嘛?我觉得还可以,简单配置下就行。

不过楼主这个确实是好东西,省时省心。还包含了我当时找了一圈的播放列表管理、手动加载字幕等功能。

已 star 。

有个问题我想确认下:我看截图上有第二字幕,这意思是说可以像 kmplayer 一样同时加载两份字幕嘛?
NordicShaw
NordicShaw
Jan 4, 2017
56
好东西,支持一下。
qq30545
qq30545
Jan 4, 2017
57
Elmedia Video Player, 还没人提这个, 最新版支持中文了, http://xclient.info/s/elmedia-video-player-pro.html
yivanus
yivanus
Jan 4, 2017
58
赞
unneeded
unneeded
Jan 4, 2017
59
支持 等新 mac 到手了下一个试试 以前用的那些都不怎么方便
znoodl
znoodl
Jan 4, 2017
60
非常好的东西,一直用 MPV ,可惜没有播放列表可以看
sephinh
sephinh
Jan 4, 2017 via Android
61
就喜欢楼主这股折腾劲
HuangLibo
HuangLibo
Jan 4, 2017
62
mac 版的射手影音不是挺好用的吗
avatar70t
avatar70t
Jan 4, 2017
63
按 q 退出会显示出错,不知道是我这边个人原因还是 bug?
cyio
cyio
Jan 4, 2017
64
期待加入 homebrew 方便下载安装
appppap
appppap
Jan 4, 2017 via iPhone
65
CPU 内存使用率怎么样。支持
kazarin
kazarin
Jan 4, 2017
66
哇这个太棒了
freefcw
freefcw
Jan 4, 2017
67
支持,怒赞一个,看着不错
fancymax
fancymax
Jan 4, 2017
68
刚才试用对比了一下。

播放了一个较大的 mp4 视频。分别用 爱奇艺、 QuickTime 、以及 IINA 。

IINA 播放不到十分钟 风扇就呼呼响啊。

用爱奇艺、 QuickTime 就很安静。
hoythan
hoythan
PRO
Jan 4, 2017
69
你要做一个适合广大撸友的播放器, VLC 就很强大,有小跳中跳大跳...
fancymax
fancymax
Jan 4, 2017
70
@HuangLibo 射手 播放视频也是风扇呼呼的响。
znoodl
znoodl
Jan 4, 2017
71
简单使用了下,反馈几个 BUG :
1 、鼠标设置了单击暂停 /播放, RMBP 触摸板点击有效,按下去有时候无效
2 、设置了 Quit when no window opened 无效,并且打开 IINA 本身就没有窗口
3 、鼠标默认双击全屏 /退出全屏 每次都会暂停一下
4 、设置里快捷键绑定 新建配置项无效
5 、设置里快捷键绑定不能粘贴,只能手动敲入
6 、高级设置里 Use config dir 开启之后无效

好想自己学 swift 去修 bug😂
xucheng
xucheng
Jan 4, 2017
72
我发现的几个 bug :
1. 高级配置 config dir 必须是展开的路径。需要 /Users/name/.config/mpv 才能工作,而 ~/.config/mpv 就不行。
2. save-position-on-quit 设置无效。
3. on-top 设置无效。
4. mp.observe_property("window-minimized",...) 这样的脚本无法工作。问题根源是没有把 UI 的事件和 mpv 的事件连接起立。
lhc70000
lhc70000
OP
Jan 4, 2017
73
@burning 感谢反馈。屏保的我还真没考虑,会在后续版本更新;鼠标不应该出现这样的问题(纵向滚动调节音量,水平滚动前进 /后退),请问你使用的是外置鼠标么?
Wanyne
Wanyne
Jan 4, 2017
74
支持楼主,首先给一个[射手播放器自动下载字幕的 API]( https://docs.google.com/document/d/1ufdzy6jbornkXxsD-OGl3kgWa4P9WO5NZb6_QYZiGI0/preview),
然后提供一个 Alfred 一件下载字幕的 Workflow : https://github.com/Vaayne/workflow
lhc70000
lhc70000
OP
Jan 4, 2017
75
@burning @znoodl 双击全屏问题已记录,待我看看,感谢反馈
lhc70000
lhc70000
OP
Jan 4, 2017
76
@exoticknight 是 Swift 3~
lhc70000
lhc70000
OP
Jan 4, 2017
77
@smallaccount 音量超过 100%可以做到,我也有计划。估计下个版本或者下下个版本就有了。感谢反馈
wangpao
wangpao
Jan 4, 2017 via iPad
78
@lhc70000 感觉很不错,但是这名字,从营销推广角度来讲,还有改进空间,至少要简单上口,这名字多数人第一眼看上去都不知道怎么读,识别度感觉也不高
--广告行业
kazarin
kazarin
Jan 4, 2017
79
有办法修改触摸板横向 /纵向滚动的动作吗?
mpv 里水平滚动是前进 /后退、纵向滚动是快速前进 /后退,现在纵向滚动是音量调节了好不习惯
lhc70000
lhc70000
OP
Jan 4, 2017
80
@avatar70t 请问是 Command+Q 退出时崩溃么?如果是的话,是偶尔还是总是发生?

如果是偶尔发生,这应该是个还没有解决的 bug ,你可以在崩溃时查看错误报告并发给我以便确认。

(顺便,这个 bug 是 OpenGL delete texture 时 crash... 我会争取尽快解决,有相关经验的也请提出建议 T T )
shingoxray
shingoxray
Jan 4, 2017
81
裂墙支持! Mac 上现有的播放器都太陈旧了。
lhc70000
lhc70000
OP
Jan 4, 2017
82
@TangMonk 现在改名之后,我默认前面的所有版本也叫做 macOS 了。 IINA 支持 OSX 10.10 以上。
lhc70000
lhc70000
OP
Jan 4, 2017
83
@ashfinal 支持第二字幕~
lhc70000
lhc70000
OP
Jan 4, 2017
84
@fancymax
@appppap
@wc0517
关于播放效率和省电,由于解码方面全部交给 mpv ,它应该和 mpv 有同样的表现。
有一个好的 mpv 默认设置应该会有效率提升,不过暂时(几星期内)可能没有时间研究这块。
已记录,将在之后加入更新。
byicer
byicer
Jan 4, 2017
85
楼主,不打算买个证书吗?打开提示来自身份不明的开发者
IamJ
IamJ
Jan 4, 2017❤️1
86
楼主做了我一直想做却没做的事情, star
run2
run2
Jan 4, 2017
87
呃,有多少人的 mac 支持 Blu-ray ?伪需求吧
lz 可以出个自己 compile 的教程给他们
helloSwift
helloSwift
Jan 4, 2017
88
@shingoxray
@cyio

mpv 还是不错的,就是配置确实很杂很乱,想配一个完美的比较难

![]( )
ashfinal
ashfinal
Jan 4, 2017
89
@lhc70000 赞! 👍
建议可以先把目前的功能稳定下来,剩下那些功能慢慢加。
看了下楼上回复的,一些在线播放、字幕下载、乱码检测、蓝光播放、小跳大跳、音量 300% …… 等等, mpv 其实都已经实现。
把现有功能做到非常稳定,对我来说就是很好的播放器了。

@cyio 有空可以看看我的截图。
Yien
Yien
Jan 4, 2017
90
非常感谢!!!!!!!!!!!!
shanliang
shanliang
Jan 4, 2017
91
兹瓷一下
gamesbain
gamesbain
Jan 4, 2017 via iPhone
92
支持已 star
kitawa
kitawa
Jan 4, 2017
93
好像发现一个 bug ,窗口置顶后红绿灯按钮是灰色的,没法点。还有几点建议,视频和字幕文件好像没法拖到窗口加载,窗口好像没法默认置顶。
iAugus
iAugus
Jan 4, 2017 via iPhone
94
👍
piaoliu
piaoliu
Jan 4, 2017
95
用了下,非常赞~~
vizards
vizards
Jan 4, 2017 via iPhone
96
好顶赞,支持支持
xcatliu
xcatliu
Jan 4, 2017
97
这个必须支持!
ZRS
ZRS
Jan 4, 2017
98
滋瓷!已 star ,不考虑拉个 telegram 讨论群吗
goodryb
goodryb
Jan 4, 2017
99
支持,使用了一下感觉挺好的,好像没有找到检查更新的功能,初期版本更新比较频繁,建议加上自动更新功能
另外,可以参考下 98 楼的意见,来个 telegram 群
daimao
daimao
Jan 4, 2017
100
滋瓷!
1  2  3  
❮ ❯
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1378 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 141ms · UTC 22:15 · PVG 06:15 · LAX 14:15 · JFK 17:15
♥ Do have faith in what you're doing.