导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

侧边栏
热门文章
1页面
程序员老黄历&求签
热度
247
2博文
乘坐贡多拉回到20年前的那座水城——交响音乐会ARIA The SINFONIA ~Viaggio 2~
热度
156
3推文
终于看到《结与书》的主角和《文学少女》的角色互动的剧情啦!顿时情怀被拉满!回想起了那个高中晚自习偷偷看《文学少女》的时光。
热度
130
4推文
怎么回事?刚公布了《孤独摇滚》的第二季的消息,第二天就又又又公布了《某科学的超电磁炮》第四季的消息!
热度
91
5博文
探访《蜡笔小新》老家——春日部游记
热度
91
6页面
活动
热度
78
7博文
手把手从零开始搭建《泰拉瑞亚》(Terraria)服务器
热度
78
8页面
追番
热度
78
9推文
今天去看了首部初音未来的电影《剧场版 世界计划 破碎的世界与无法歌唱的未来》。 说是初音未来的电影,但其实是手游《世界计划》的剧场版。好像有挺多人看到是初音未来的电影就去看了,结果发现并不全是😅。其实在宣传海报中,初音未来后面的那些人才是主角。 不过,我也是那些没玩过手游的观众之一。其实整场看下来问题也不是很大,就是对于人物关系和世界观的设定可能会有些问题。电影其实也很贴心地在剧情开头,大致以剧情的形式展示了手游中的五个团体的人物及其性格,但感觉还是有些杯水车薪,约等于看个眼熟。 此次的电影是第一次购买应援场。所谓的应援场,就是能在电影院里像是听演唱会一样挥舞荧光棒和尽情呐喊。看着前排那些粉丝看到自己喜欢角色时的呐喊,以及演唱会环节的打CALL,应援场确实是很有意思的一种电影观看方式呢! 剧情方面,属于看了开头大概能猜到整部动画的剧情走向。不过,通过演唱会的气氛渲染,甚至还感受到了一丝丝的感动。 总体来说,对于手游的粉丝来说可能是嘉年华般的狂喜,对于没接触过手游的路人来说也能一定程度融入其中,属于一部不错的粉丝向电影(不管是手游粉丝还是初音未来粉丝)。 首周电影特典是CD和游戏内的兑换码。送CD这种形式还第一次遇到,官方大气!
热度
65
10博文
如何使用Docker一键部署猛男自用的维基萌博客lite版
热度
65
最新评论
广树管理员
2025-02-19 22:04
@老张博客:大佬呀,这第几次问这个问题了呀
老张博客
2025-02-19 21:18
我在想博主是不是一位女生呀
广树管理员
2025-02-19 20:46
@菲兹克斯喵:是呀,学生时代最喜欢的小说
菲兹克斯喵
2025-02-19 20:04
前段时间刚看完文学少女第九卷,后面没什么时间了 确实好看,快 20 年的小说了
广树管理员
2025-02-19 08:23
@某科学的贝壳:哈哈哈,确实属于有生之年了
正在攻略

logo_kai.jpg


PSN奖杯卡

PSN奖杯卡

赞助商广告

记录iOS 17.4.1 Safari 本地视频无法正常显示的2个问题

作者:广树时间:2024-04-05 20:16:50分类:前端代码

最近发现2个Safari比较棘手的本地视频播放的问题,目前没有特别有效的规避方法,等待苹果官方的修正可能是最优解,所以打算通过这篇博文实时记录一下进展。


以下问题都仅在iPhone和iPad中出现,mac暂时没有发现。

所有问题均写了一个demo发布在了github上: https://github.com/eeg1412/safari-video-bug

同时为了方便演示,开启了github pages : https://eeg1412.github.io/safari-video-bug/

问题一:路由切换时本地视频会中断

问题描述

总所周知现在的前端代码都是通过 window.history.pushState(null, '', url) 来实现不刷新页面来切换页面的,这就使视频在切换路由时仍然能保持播放。

但是发现17.4.1之后,在切换路由后就会导致摄像头捕捉中断。

在演示代码中可以看见点击change history按钮后,路由发生变化,视频变成了黑屏,摄像头捕捉中断。

幸运的是目前这个问题并没有殃及一般视频的播放,仅仅影响摄像头的捕捉播放。

这个问题在今年年初就有人向官方反馈,beta版有这个BUG,正式版依然没有修😅。

解决方案

这个问题我目前的解决方案是把history模式改成hash模式。


问题二:视频元素中的内容不会跟随video标签的宽高变化而变化

问题描述

这个问题是比较神奇的一个现象,因为要触发条件比较苛刻,我大致归类了以下条件会触发:

  1. 视频播放本地摄像头
  2. 父级display从blog->flex
  3. video标签附近要有个img标签
  4. 似乎和img的尺寸也有关系?有些尺寸偶发,有些尺寸很难复现,有些尺寸很容易复现

我觉得最神奇的一点是附近必须要有一张大小合适的图片😅。最近可能比较倒霉,这么苛刻的条件都能给我遇上😅。

在演示网站中的效果如下:

可以看到红色区域是video元素,虽然video的宽高变了,但是内容始终保持原来的大小。

这个问题我看了下官方的反馈列表,目前并没有人反馈这个问题,于是就向苹果官方反馈了这个问题。

截至目前,官方给我的反馈是无法复现😅。

我看了眼官方的测试案例,苹果将我的代码放到了jsfiddle上进行测试,确实就复现不出来了。

后来我发现,如果内容是在<iframe>中运行的话确实就复现不出来了,很神奇。这才又建立了github pages,让苹果的技术人员通过github pages进行测试。

因为苹果官方和我有时差,通过邮件来回基本上也只能一天沟通一次,所以后续进展如何会更新在这里,敬请期待!

如果大家有兴趣的话,也可以用苹果手机试一试。

以下是复现步骤:

  1. 在iPhone(iOS 17.4.1)上打开链接:https://eeg1412.github.io/safari-video-bug/
  2. 允许摄像头访问。
  3. 等待相机画面出现在屏幕上。
  4. 单击摄像机源以更改视频的大小。

解决方案

这个问题我目前的解决是将原先的block->flex改成block->none->flex,进行强行重新渲染。


2024年5月4日更新:

官方已经修复【视频元素中的内容不会跟随video标签的宽高变化而变化】的问题

https://github.com/WebKit/WebKit/pull/28125

#safari

donate.png

1210 x 50(蓝底).png

cloudcone