Chrome 102 带来的杀手级功能:双击文件打开 PWA 应用

2022-05-27 07:25:08 +08:00
 hanguokai



Chrome 102 已经正式发布了,其中对 Web 开发者而言新增了一个杀手级的功能:File Handling API 。这个功能可以让用户在操作系统的文件管理器中通过双击或右键(打开方式...)直接用已安装的 PWA 应用打开(一个或多个选中的)文件,就像使用原生桌面应用一样。例如:
• 双击一个文本文件就用文本编辑器打开这个文件。
• 双击视频就用视频播放器播放视频。
• 双击你自定义的文件格式(后缀)就用你的 Web app 打开。

https://webvideoplayer.org/ 是我去年做的一个简单的 PWA 版的视频播放器。点击浏览器地址栏右侧的“安装”图标,或点击页面上的 “PWA Install” 按钮即可安装。之后就可以在文件管理器(比如 macOS 的 Finder 中)选择用这个新安装的 Video Player 播放视频了。

更多介绍见我昨天写的这篇: https://mp.weixin.qq.com/s/3ANzWtSTk1gzRo-ooL6dYg
7330 次点击
所在节点    程序员
34 条回复
mscsky
2022-05-27 08:40:29 +08:00
PWA 会泄露隐私
opentrade
2022-05-27 08:43:04 +08:00
以观后效
codehz
2022-05-27 09:29:30 +08:00
你这个播放器点开 4K HEVC 内容直接黑屏但有声音。。。(不支持能不能提示下不支持啊)
cjpjxjx
2022-05-27 09:33:30 +08:00
快进到双击 apk 文件通过 Chrome 打开运行
siweipancc
2022-05-27 09:51:51 +08:00
通过 google doc 打开, 香爆
orzz
2022-05-27 10:13:01 +08:00
TG,Ins,推特基本上都换成 PWA 了,够用了
hronro
2022-05-27 10:23:01 +08:00
我实在想不明白怎么会有人用 PWA 做视频播放器。相当于给本身的视频播放功能套了个皮?但问题是随便一款正常的播放器都吊打浏览器的视频播放功能啊。用 WASM 跑 ffmpeg ?没法用硬件加速不说,效能还比原生的 ffmpeg 差远了
PqgpNgA0wk
2022-05-27 11:39:12 +08:00
挺好的,利用浏览器特性基于 pwa 写点自己的小玩意,况且楼主写的这个也没说跟原声播放器做性能对比,有意思就得了,上纲上线什么。。
hanguokai
2022-05-27 11:49:41 +08:00
浏览器原生支持的音视频编码是支持硬件加速的(见 chrome://gpu/ )。只是浏览器支持的编码不全,比如不支持 HEVC(H.265) ,详见 https://caniuse.com/?search=video%20format
RickyC
2022-05-27 12:39:52 +08:00
这年头,用到电脑的场景比较少。基本就是 vs code 写代码。
MAGA2022
2022-05-27 12:50:16 +08:00
firefox 用户实名羡慕
Satelli
2022-05-27 13:15:01 +08:00
@codehz
非此环境的 Chrome 不支持 HEVC 。
https://www.chromium.org/audio-video/#:~:text=H.265%20%5BGoogle%20Chrome%20OS%20on%20Intel%20Gen%2011%2Dbased%20Chromebooks%20for%20protected%20content%20playback%20only%5D

@hanguokai
Chrome 、Edge 等浏览器在无硬件支持(如老款设备)或硬件支持但受平台限制(如 macOS VideoToolbox 、Windows MediaFoundation )也会软解播放 vp9 和 av1 。
codehz
2022-05-27 13:21:44 +08:00
@Satelli 我的意思是编辑器里提示下不支持,而不是直接黑屏,我还以为是片子的问题(
Zzzz77
2022-05-27 13:27:30 +08:00
感觉很不错诶,跃跃欲试了
hanguokai
2022-05-27 13:35:17 +08:00
@codehz 明白,我也遇到过这种情况。有些不支持的格式播放的时候会报错,这时我会提示说不支持。但目前这种有声音但无画面的情况,Chrome 并不报错,所以我这边就没法给提示。看看以后 Web 这方面会不会有更细化的改进。
ViriF
2022-05-27 13:49:51 +08:00
Chrome 的`媒体缓存到硬盘`开关 flag 没了,再加上这个,感觉硬盘写入会高不少啊;
倒是一些文档啥的用 PWA 打开挺舒服的
Satelli
2022-05-27 14:28:30 +08:00
idealhs
2022-05-27 14:28:49 +08:00
高级一点的编码浏览器都搞不定,写点别的 demo 挺好,拿这个当 player 真的是做宝搞。
hanguokai
2022-05-27 14:56:37 +08:00
@Satelli 谢谢。但是这种 API 比较适合流媒体,不太适合本地文件播放。
流媒体播放:服务端准备了多种编码格式(已知编码格式),然后用这个 API 来查看浏览器支持哪种。
本地文件播放:就是一个文件,不知道是什么编码,除非自己读取文件内容分析。
Satelli
2022-05-27 15:02:16 +08:00
@hanguokai 直接扔给平台提供的播放 API 不去做 UX ,那这个 PWA 和系统自带的有什么区别。系统自带的还会提示部分轨道不能播放呢。

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

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

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

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

© 2021 V2EX