编注:咱们会不依期挑选 Matrix 的优质著述,展示来私用户的最简直的体验和不雅点。 著述代表作家个东谈主不雅点,少数派仅对标题和排版略作修改。
事情的缘由是 11 月的一天,看到了@熊小默淳厚的一期视频,内部先容了钟表三问报时的旨趣,以及一百多年以来,大都匠东谈主为之付出的辛劳,这些背后的故事让我留恋。更进攻的是,它让我产生了一个念念法——若是我念念亲手试试三问报时,该如何作念?
买一块领有三问报时的腕表固然不错,但我有点囊中憨涩,家隔邻有百达斐丽的店,然而店里的复杂腕表不让平庸主顾上手体验,念念到这里,我把眼睛瞟向了手里的 iPhone。
我用快捷教导作念过不少有好奇的技俩,即使不懂编程,唯有逻辑了了,就不错使用快捷教导 完成一些蓝本更难完结的功能,况且还很容易和一又友们共享,一皆享受兴奋,于是我此次照旧选拔了快捷教导行为这个念念法的落地基础。
▍旨趣
在运行之前,先要了解一下三问报时的逻辑:三问报时是一种复杂的机械功能,通过不同调子的敲击声差异报出小时、刻钟和分钟,让率领者无需看表盘即可领路面前本事。
小时鸣报:当三问报时功能被激活时,领先敲击一个低音音簧几许次,以报时。举例,敲响 3 次代表面前本事为 3 点。
刻钟鸣报:第二音簧以上下音联结神态,每 15 分钟报一次刻钟。举例,若是是 45 分钟时,可能会听到三组上下音的组合。
分钟鸣报:终末,另一个音簧以高音敲击,报出刻钟之后的分钟数。比如,若是本事是 3 点 52 分,小时和刻钟报完后,再敲 7 次高音,默示 52 分(刻钟报 3 个 15 分钟后还剩 7 分钟)。
伸开剩余71%小时鸣报:当三问报时功能被激活时,领先敲击一个低音音簧几许次,以报时。举例,敲响 3 次代表面前本事为 3 点。
刻钟鸣报:第二音簧以上下音联结神态,每 15 分钟报一次刻钟。举例,若是是 45 分钟时,可能会听到三组上下音的组合。
分钟鸣报:终末,另一个音簧以高音敲击,报出刻钟之后的分钟数。比如,若是本事是 3 点 52 分,小时和刻钟报完后,再敲 7 次高音,默示 52 分(刻钟报 3 个 15 分钟后还剩 7 分钟)。
▍完结逻辑
合座逻辑会分为两大部分, 本事缱绻和 响铃。本事缱绻这一步会算出每种铃声需要访佛的次数,然后在响铃这一步循序发出对应的声息。
本事缱绻基础本事
领先要获得基础分钟数,也即是划定当今,今日往日的总分钟数,这是后续缱绻逻辑的原始数据起首。这里我用的形式是获适面前本事后,缱绻面前本事距离今日 0 点的时长。
刻度本事
然后要缱绻的即是每个报时声息需要访佛的次数,逻辑也很大致。
小时鸣报:使用基础分钟数除以 60,得到的数字向下取整,即是小时鸣报的次数。
刻钟鸣报:取小时鸣报缱绻的尾数,除以 15,得到的数字向下取整,即是刻钟鸣报的次数。
分钟鸣报:终末取刻钟鸣报缱绻的尾数,即是分钟鸣报的次数。
小时鸣报:使用基础分钟数除以 60,得到的数字向下取整,即是小时鸣报的次数。
刻钟鸣报:取小时鸣报缱绻的尾数,除以 15,得到的数字向下取整,即是刻钟鸣报的次数。
分钟鸣报:终末取刻钟鸣报缱绻的尾数,即是分钟鸣报的次数。
响铃
响铃的过程需要先获得铃声,将铃声变为文本编码,置入划定内,然后在播放时通过声码器解码进行播放,这么才能保证快捷教导被共享后仍是不错日常使用。
声息编码
因为我的灵感来自熊小默淳厚的视频,是以这里平直中式了视频中录下的爱彼腕表三问报时声息行为内录铃声。
在截取好念念要的视频片断、并从中抽取音轨后,我使用了一个大致的快捷教导对声息进行编码:
随后把这段编码录入此次的技俩,加多为变量,前期职责就算透彻完成了。
报时
终末一步是读取前边缱绻出的小时、刻钟、分钟数,然后循序播放录入的铃声,这么就算完成了扫数这个词经过。
▍其他
拓展玩法:因为铃声是内置的,也即是说不错换成淘气一种声息,唯有作念大致的替换就不错听到不同钟表的三问报时声,也不错把不同钟表的声息进行混搭,若是你现象的话,还能换成蛤蟆叫之类的声息。
声息处罚:内置的铃声戴着耳机不错听到一些「噪音」,我估计是音簧被敲击后的滚动余音,斟酌到声息的复原性,是以保留了下来。
版权诠释:文中提到的音效均已得到录制东谈主熊小默淳厚的使用授权。
终末放上获得地址,接待环球体验:
https://www.icloud.com/shortcuts/044145f783b446e6ac631e933af1a5a1
原文联接
https://sspai.com/post/94309?utm_source=wechat&utm_medium=social:
作家:BelBark不要狗叫
责编:Lotta万博manbext体育官网