查看详情

HLS.JS 自定义 分片 TS 请求 URL

很早之前写过 hls.js 源码解读【1】 ,基本分析了 hls.js 这个库的设计和实现。阅读源码一方面是为了吸收对方设计或者编码上的优点,当然也有可能是另外一个原因,就是一些需求从表面的文档里找不到具体的实现思路。 默认情况下,我们并不需要对解析出来的 ts 分片地址做改造,但是如果真的需要的话,其实有两个思路。 思路 1 复写 Loader 。 自己实现一个关于请求的 Loader ,通过配置传入类似; class XhrLoader extends Hls.DefaultConfig.loader { constructor(config) { super(config); var load = this.load.bind(this); this.load = function(context, config, callbacks) { // your code to handle context.url load(context,config, 详情 »

查看详情

三月初

不知不觉,已是三月了。 北京最近开始变暖了,明显感觉的就是,穿短袖的人多了,虽然还是室内,周末打球,也明显没有冻手的感觉。 二月,似乎过得超级快,可能是28天的缘故,也可能是假期的缘故,1号回家,今年春节假期算是长的,经济的不景气,自然生意也慢慢开始淡了。觉得更重要的是,似乎大家都面临转型的挑战。 元宵过后,家里的房子也便要拆了。看了动工的视频,觉得住了那么久的房子,可是从我出身,就一直呆的地儿,转眼就没了,还是多少回有伤感。但是作为一个经历者,从小时候几毛钱的柴米油盐,到现在的网络支付,不得不感叹时代的步伐。相对而言,面对的逐渐老去的父母,也需要换一种生活方式。开心的是今年春节,母亲居然有时间给我做了两顿蛋炒饭,会边做边说北方肯定没有什么菜什么菜,从12岁去县城求学,难道可以吃上母亲做的饭,当然她不做饭是主要原因。自然而言,春节于任何人的温暖超过别的节日,是来源于整个亲情的维系,反而以前一直给我做饭的幺嬢,到了春节成为了各种絮叨的对象,去县城求学后,一直寄宿在幺嬢家里,于她心里而言,自然而言各种关于社会处事,做事风格边成为与她对话的日常。这个地方,才是家。 春节回来,觉得感觉最突出的词汇,就是希望。希望,很久没有写这个词汇。 详情 »

查看详情

水军回忆录

大概今年春节档,是自己作为义务水军而言,经历过战斗最为激烈的一次。而且实力之强,以至于春节第一天下午就被赶到了。其实一部商业电影的营销在如今的中国电影环境下,显得格外重要。 自己从13年成为水军,才开始自己认为水军的主要责任就在于“吹”。就是要强调这部电影优于别人的地方。大概其实中国商业电影分为几个时代,从张指导的《英雄》,到今天火热的《流浪地球》。中国商业电影从英雄票房将中国电影记录挂上亿的单位,到战狼创造的50多亿的票房纪录,这是整个中国近17年来,人们物质水平提高后,文娱文化带来了巨大的市场。而随着市场的壮大,一部电影成败也变得更为复杂,在这个大市场下,一部商业电影的成功,各方面的特点也就会尽可能拿出来宣传。比如光线传媒,特别乐于线下的路演活动,以及对微博豆瓣的的评论风控。而华谊兄弟则善于抓对手软内。 然而这次,其实最大的意外,是我觉得作为水军而言,已经开始站在更关注个人的角度去攻击竞品。 自己总结的: 前些天看《高晓松 采访成龙》,大概成龙说自己热爱拍电影,以及愿意给年轻人机会。再过两三年,星爷就六十岁了,这个把自己一生都投在电影中行业里人,我觉得他现在只是在做自己喜欢的事情?有错么?网上有很多篇回应炒冷饭的事情,希望水军能够多一点理解,真正拿到电影里说事,而不是老早预谋的拿着这些毫不相干的事情做文章,作为一个水军看到同行这样,心太痛,好在作为周星驰的粉丝很开心,今年拍了部大爱的一部电影,虽然第一天就遭遇了大规模攻击,但是相信 大师兄会回来的! 详情 »

查看详情

The Plan of 2019

These are some things I should do in the new year. P7 Level. 40+ pictures.(iPad Procreate 《笑傲江湖系列》). Journey to Singapore. WebVR Guide. Daily Reading (30 mins). Keep fit; Review some Books. 500 + Github Stars 60+ Web Articles. Renovation new Rooms. Make money to buy a car (2 Year). Owned TSLA, WB, MDB, IQ, JD. Write 详情 »

查看详情

《新喜剧之王》二十年如梦

​​今年年过的很开心,看了星爷的新电影《新喜剧之王》。电影看完,一扫之前预告的担忧,第一个预告的镜头大都在前几分钟,所以几乎不会影响整部电影。大概这是新千年这几部电影,自己认为作为粉丝而言比较喜欢的一部,好过《西游降魔篇》《美人鱼》。整个电影节奏和镜头转换,完全是认为看的最舒服的一次,看完意犹未尽。 同期上映的电影还有龙叔《神探蒲松龄》,虽然现在也加上了星爷,他俩都被说成了,卖情怀,圈钱等等。其实这里再多的辩驳也依然说不过批量的水军。但是我一直很欣赏他们,他们电影会一直给年轻人机会,星爷后面的电影,都给了新人很重要的角色,这次甚至只带了一个王宝强,其余演员都很难搜索到,《新喜剧之王》说的是演员努力奋斗,但现实是很多龙套真的机会都没有,所以星爷这次的片尾字幕给了每一位参演角色的姓名列表。我觉得就像电影里一样,每一个人都希望有一天,大家可以记住他的名字。 大概这部电影看完之后,我的直觉想起了两部电影《长江七号》《回魂夜》。这两部电影至今也被自己放在周星驰前五的电影里。说句实话,这两部电影,夹杂着一些不一样的元素。长江七号里面的亲情线,回魂夜里面的恐怖元素,都给人留下深刻的印象。长江七号拍的是一部喜剧儿童电影,对于儿童而言,他们的眼里只有七仔,以及七仔所能带给他们的超能力和希望。对于成人而言,眼里看到的周铁的辛酸,以及心里的要强和善良。孩子们并不知道七仔其实并不存在,但是大人们知道七仔是幻想出来,如果移走七仔, 详情 »

修复 CALL_AND_RETRY_LAST Node 运行问题

最近使用 react-native 的时候遇到了下面的异常: CALL_AND_RETRY_LAST Allocation failed - process out of memory 大概是因为你在 JS 执行比较大的 JSON.parse() 的时候,这个时候比较直接的办法是设置 --max_old_space_size。 在你的 .bash_profile 增加这一话就 Ok了。 export NODE_OPTIONS=--max_old_space_size=4096 这只是临时的一个解决方法,有时间还是需要 debug 到源码查看具体哪一个环节出了问题。 详情 »

查看详情

2018

中钢的灯火 年初回来,已是二月中旬。北京的天依旧还没转暖,从年前到年后,天气依旧低落一段时间,很难会有这样的经历。而这种低温的天气一直到四月份那场大雪之后才开始逐渐复苏。和 YH 童鞋聊天的时候发现,心态还是变过来了,工作虽然多,但是也不至于会理不清。四月份从海淀回望京,17年五月去的中钢国际,习惯了长长的通程时间,缩短到十几分钟,无疑是一件好事,但是这里,依旧留着诸多不可磨灭的记忆,一直都记着六月份的那个凌晨,记得《军师联盟》的最前线。因为那段记忆变得那么有温度和故事。 江湖别离 五月底,飞哥离职。大概去年的小伙伴,似乎走的都差不多了。每每回忆起去年五月份,我们一起通宵的等候上线,一起等待每个关键时间点的红包雨,一起等待兑奖的喜悦。自己手机里还留着,四点钟拍的黎明的中关村,到家时候等着洪总前线的消息,和小侄女一起找主客的人"算账",和昊哥一起"怂" 设计师,那个时候,真的虽然累,但是真的很开心认识你们,能交到这么多朋友。小江哥走的时候,心里默默的送上那句经典的话: 江湖再见! 和他接触一年有余,最后还是选择做更有挑战的事情。 详情 »

查看详情

The letter of 2018 - Mark Zuckerberg

每年年底小扎都会回顾今年这一年做了什么,2018对于小扎而言无疑是最为挑战的一年,隐私,数据安全,舆情,高管离职,这些问题便随着用户的增长和信息的爆炸膨胀显得非常突出,但是文章还是非常自信的回顾了去年这些方向的努力,大概往往最困难的时候也是厚积薄发的时候。2019,依旧不平静。 原文链接: https://www.facebook.com/zuck/posts/10105865715850211 (自备梯子) For 2018, my personal challenge has been to focus on addressing some of the most important issues facing our community -- whether that's preventing election interference, stopping the spread of hate speech and misinformation, making sure 详情 »

查看详情

iOS 12 静音模式下 AudioContext 无法正常播放的 Bug

最近收到用户反馈,网页的背景音乐播放没有声音。 然后我们就按照正常的流程 Debug 。但是我拿到我的 iPhone 7 测试的时候,但是发现是可以正常播放的,但是 iPhone XS 确没有办法播放。 而且这次非常悬疑的是,iPhone XS 的又是可以正常播放虾米音乐的的歌曲。 此时此刻,宝宝的心情,只能用如下图表示: 随后开始看代码,项目的背景音乐是启用了 AudioContext 。这个时候我们强制设置 AudioContext 的音量来,看下是不是 iPhone XS 的问题; const audioCtx = new AudioContext(); let source = aCtx.createBufferSource(); let buf; const gainNode = aCtx.createGain(); // Create a gainNode reference. gainNode.connect(aCtx.destination); // Add context to gainNode 详情 »

查看详情

聊聊新的 Media API Media Capabilities

关于我们探测是否浏览器能够支持某种视频的播放,我们经常用的 MediaSource.isTypeSupported() 或者 HTMLMediaElement.canPlayType() 来判断,详情可以参看 《探测浏览器对 video 和 audio 的兼容性》 。不过今天介绍一个新的 API , Chrome 在版本 64 开始支持的 navigator.mediaCapabilities;它解决的问题是我们支持了这些格式,但是在当前设备那种格式表现最好呢? Media Capabilities 在 wicg 组的草案中明确描述了: This specification intends to provide APIs to allow websites to make an optimal decision when picking media content for the user. The APIs will expose information about 详情 »