一个没有常识、活在自己世界中的中二病人(话痨)的自留地。

该频道不专注于 Daily 或 News,而是一个记录我当前关注和思考内容的地方。

1. 随机事项:每月为自己安排一些有趣的活动。(大概率🐦🤣
2. 同步内容:我会收集在其他平台上发布的内容。
3. 私人笔记:没经大脑的学习笔记以及一些个人随想。
4. ACG 内容:浓度高的部份还是挪到 另外一个频道 @tomoko_acg
5. 内容转发:在这个频道上转发的内容并不必然代表我个人的立场。
音乐文件元数据速记

核心标识

- Title/TIT2/title: 歌名。
- Artist/TPE1/artist: 主表演者。
- Album/TALB/album: 所属专辑名称。
- Album Artist/TPE2/albumartist: 专辑署名艺人(合辑、合作时用)。
- Composer/TCOM/composer: 作曲者。
- Genre/TCON/genre: 风格标签(流派,通常是文本)。

---
曲序 / 碟序

- Track number/TRCK/tracknumber: 当前曲目的序号。常见格式 5 或 5/12。
- Disc number/TPOS/discnumber: 多碟专辑的碟号。常见格式 2 或 2/3。
- Track total/Disc total: 总曲数/总碟数,有些播放器才显示。

---
时间与发行

- Date/TDRC/date: 发行日期,常用 YYYY-MM-DD 或 YYYY。
- Year/TYER(旧 ID3v2.3): 仅年份。
- Publisher/COMM/comment: 发行方或备注,常用自定义文本存放公司信息。

---
封面与媒体信息

- APIC(ID3)/METADATA_BLOCK_PICTURE(FLAC): 内嵌封面。封面类型 3 表示 front cover。
- 嵌图常用 JPEG/PNG,分辨率适中可兼顾体积和兼容性。

---
歌词相关

- USLT/lyrics: 未同步歌词(纯文本)。
- SYLT: 同步歌词(带时间轴,兼容性较差)。
- 自定义标签可放翻译歌词,例如 TXXX:LYRIC_TRANSLATION(ID3)或 lyrics-translation(FLAC Vorbis Comment)。

---
别名与多语言

- TXXX:ALIAS(自定义文本)或 alias(FLAC): 歌名/艺人别名、中文名等。
- 多语言通常通过多个独立 frame(ID3)或多个同名 tag(Vorbis)实现。

---
格式差异速览

- MP3:ID3v2.3/2.4 常见;帧如 TIT2、TPE1、APIC。
- FLAC:Vorbis Comment 是键值文本(如 title=...),封面单独存 METADATA_BLOCK_PICTURE。
- MP4/M4A:使用 atom,如 ©nam(title)、©ART(artist)、trkn(track)、disk(disc)、covr(cover)。

---
整理命名的小贴士

- 单碟:文件名可用 Track - Title。
- 多碟:用 Disc-Track Title(如 2-03 Song.flac),并确保 Disc number/Track number 与文件名一致。
- 统一日期格式、封面大小,避免播放器解析差异。

#TIL
原来可以用 @webpagebot 刷新 telegram 里面的链接预览内容。

#til
🔖 美国施加超预期关税,会影响到中国游戏产业吗? - 触乐 #pinboard #game #til


在多边贸易体制下,关于数字产品的关税适用有一项重要的国际共识,即世界贸易组织(WTO)的《电子商务暂停令》(E-commerce Moratorium)。自1998年起,WTO成员国一致同意暂时不对数字贸易(或称“电子传输”)加收关税。所谓“电子传输”并无严格定义,但实质上指通过互联网跨境进行的商业交易,包括软件、数字电影、音乐、电子游戏等各种数字化商品和服务。当时,数字贸易刚刚起步,根据这一制度,各国禁止对跨境发生的数字产品交易征收进口关税。此后在每2年一次的历届部长级会议上,WTO成员都同意延续该暂缓令。


https://www.chuapp.com/article/290562.html
好啦,TIL Blog 大功告成。(虽然暂时是丑爆了。

从零开始使用 Hugo 在 Cloudflare Pages 上搭建 TIL 博客
https://til.niracler.com/post/2025-03-13-build-til-blog-by-hugo/

#touch_fish #blog #til
OpenWrt 最初是为嵌入式设备开发的路由器系统,而不是为 x86 平台设计。这导致它采用了与传统 x86 系统完全不同的分发方式:

- 没有安装程序(installer),只能通过直接写入镜像(dd image)的方式安装。
- 默认只有约 120MB 的根分区大小,需要用户根据四种镜像的情况进行扩容。

虽然这种设计对新用户不够友好,但它反映了 OpenWrt 的嵌入式系统本质和注重安全性的设计理念。


https://forum.openwrt.org/t/howto-resizing-root-partition-on-x86-march-2023-edition/153398

#TIL #WTF
脱机=脱离网络连接机=offline #TIL
Node.js 纪录片感想(小抄)

1.
Ryan Dahl 创建 Node.js

当时流行的 Web 框架(如 Ruby on Rails)在处理高并发时效率不够高,特别是在处理 I/O 密集型任务时性能显得不足。虽然这些框架也支持异步 I/O,但用起来很别扭。

他也尝试过其他语言(如 Python、Lua、Haskell),但发现这些语言的运行时已经沉淀了多年,深受传统同步编程模型的限制,很难进行根本性的变革。

于是 Boy Meet Girl,算是终于让他看见了 Javascript 这个本身就在浏览器中天天需要处理异步场景的语言。(JavaScript 本身就依赖事件循环和异步操作来处理用户交互与网络请求。)

关键点是 easily build optimal server 以及 forcing them to only use async IO。也是 Node.js 的核心优势。

2.
Isaac Schlueter 加入 & npm 的诞生

这点倒是没什么好说的,pip 比它要早一点,08年 vs 10年。

想起我大二那年,被 pacman 什么都能下载给震撼住了。真的是,生在这种什么都有的年代真是被惯坏了。不过即使我在那个年代,也不会造出这样的轮子吧

3.
Joyent 买下 Node.js

这一阶段就是真的让 Node.js 成为一个企业级产品了,毕竟有公司去资助一批工程师去全职开发。

也是在这个阶段支持了 Windows,让用户量大大增加了。(通过实现 LibUV 库来处理 Windows 特有的 I/O 操作和事件循环,兼容了 linux 和 win 的操作)

4.
Ryan 退出 & 社区分裂

Ryan 在 Windows 版本出来之后就腻了,看来是那种喜欢写新功能而不想全天在修 BUG 的人?于是负责人从 Ryan -> Issac -> TJ Fontaine。

至于创始人离开之后,社区的贡献者自然就觉得给 Joyent 打白工非常无趣,于是就去 fork 了 io.js(确实,虽然 MySQL 是开源的,但谁会乐意无偿贡献代码给 Oracle 呢?)

5.
基金会成立

最后是双方妥协,Joyent 将 Node.js 的管理权交给了基金会, io.js 和 Node.js 最终合并。可喜可贺,可喜可贺。

不过这也是社区力量占主导才能强迫公司妥协,不然就变成现在的 MariaDB 了?

---

(仅仅是笔记,不一定对,需要勘误)
https://www.youtube.com/watch?v=LB8KwiiUGy0
#TIL #nodejs
这几天被 JS 的测试毒打了,几个 testcase 就能写一天,一开始是不知道如何 mock 对象的方法,后面是卡在了不知道如何用 vscode 来运行测试代码以及打断点。例如:

- 使用 sinon.stub 将对象的指定方法替换为自定义的函数。在运行时修改对象的方法指向,从而控制其行为
- vscode 的 launch 配置

此前开发主打一个狂野和粗暴。vscode 仅作编辑器、测试 API 用 curl 、dev 环境是 1:1 的线上环境、断点全靠自己 print 等等…… 而对于工作上的用到的技术,都是看简中圈子的 N 手资料。对于大而全的官方文档,总是巴不得能逃避就逃避,完全没有那种静下心来通读一遍的那种闲情。

这些官方文档粗略看一遍,很多很蠢的问题都能得到解答了。并且常常会有意想不到的惊喜,一些日常很难考虑到,但别人作为专家,方案可能就直接摆在这里了。

现在学还不晚吧? 要开始收集各种终极文档了。不过我也不敢说我能在这个周目解决这个问题。

#城市化进程 #TIL #Nodejs
Parameters and Arguments

Parameters 和 Arguments 这两个单词翻译过来都是参数,我一直都挺疑惑他们之间有什么区别。细看了一下,原来就是形参和实参,函数定义处的参数为形参,而函数被调用的地方叫实参。

# Function definition with parameters
def add(x, y):  # x and y are parameters
    return x + y

# Calling the function with arguments
result = add(5, 3)  # 5 and 3 are arguments

# Display the result
print(f"Result of adding 5 and 3 is: {result}")


还是多看看英文文档,有些不必要的疑惑就能更早的消除了。不然也不会到今天才将这两组词语关联起来。

Difference Between Parameters and Arguments - GeeksforGeeks

#til
MongoDB TTL 索引只能设置过期删除,并不能过期时该数据内容。 #TIL #mongo #补课
Expire Data from Collections by Setting TTL - MongoDB Manual v7.0

也是第一次见 as const 这种玩法~

#TIL #typescript
才知道之前面试官(现在上司)问的 Pick 是什么,原来是用一个现有的 interface 减去一些属性然后再生产一个新的 interface。原理如下:


type Pick<T, K extends keyof T> = {
  [P in K]: T[P];
};


还是太嫩了,补课补课

from #TIL #typescript
批量将文件夹中的 webp 文件转换为 jpg 文件


ls | while read item; do name="${item%.webp}"; magick "$name.webp" "$name.jpg" && rm "$name.webp" ; done


#one_command #til
Tomoko RD
剪映对于多轨字幕的视频好像识别的不太好,将动画放进去准备剪辑,就看不到字幕了。 我怀疑我关键词用错了,以至于查不到比较好的信息。打算先试试用 ffmpeg 处理一下看看格式
视频文件包括多条流,特别是两条字幕流(简日双语和繁日双语)。因为剪映可能无法识别这两条字幕流中的所有内容。特别是ASS格式(高级字幕格式)可能包含一些格式控制信息。


解法:


ffmpeg -i input.mkv -map 0:2 output_subtitles.ass


0:2 是要提取的字幕流,可以通过 ffmpeg -i input.mkv 看到

#TIL #one_command
诶,遇到同款的 steam 诈骗了

#TIL
作品中的异时空同位体角色

同一系列或同一作者的作品中,很多时候会有那种「 不是同一个人,但是无论性格外貌、行为都很相似的角色 」。例如,在漫威电影宇宙中,蜘蛛侠多元宇宙的概念引入了多个不同宇宙的彼得·帕克,每个都有独特的背景和性格,但共享蜘蛛侠的核心特质。

我接触到印象比较深刻的:

石黑正数的长篇作品全部都有「绀学姐」,前期是讨厌一成不变的生活、叛逆与摇滚,现在生完孩子应该稳重不少吧(乱说)。石黑本人也是一样的发型且跟绀学姐是同一天生日(真相了,绀学姐是石黑的...)

火焰纹章又名安娜纹章,几乎每部作品都登场的客串王,是同名同姓的不同人。但是因为性格都差不多 (贪财),加上历代出场太多了,几乎所有火纹系列作玩得多的玩家都在吐槽火纹系列就是安娜收集史。流水的英雄铁打的安娜。

其他还有很多,如宝可梦里很多的乔伊小姐、君莎小姐。米哈游崩坏系列里面的各种姬子、布洛妮娅。JOJO 系列中每一代的 JOJO。塞尔达传说里面每一代的塞尔达和林克。oh no 这样说下去就太多了

值得注意的是,前提是「不同一个人」,像 E 社的天使女仆看板娘,虽然也是代代游戏都客串,但设定上是同一个世界观的同一个角色,所以不属于。(哦,讲道理同人作品一律不是?)

PS. 不过这个词条在 萌百 上已经被滥用了 🤣

🔗 异时空同位体 - 萌娘百科 | #平行宇宙 #角色开发 #叙事技巧 #TIL
屏幕保护程序

屏幕保护程序是一种电脑软件,旨在在用户不活动时保护显示屏幕,同时也起到个性化和娱乐的作用。最初,它们是为了防止旧式 CRT 显示器长时间显示相同图像而产生磷光残留(即“烧入”效应)。现代显示器已大大减少了烧入问题,因此屏幕保护程序更多地用于隐私保护和个性化。


原来屏保一直在动,最初是有它的需求的,而且真的是在保护屏幕。我从最开始就单纯以为只有观赏功能。🐶

🔗 Screensaver - Wikipedia | #TIL
频道定位(重写了一份,⭕️ 重新转起来)

不专注于 Daily 或 News,而是一个记录我当前关注和思考内容的地方。

1. 随机事项:为了避免无聊,每月为自己安排一些有趣的活动。通过 GitHub Action,在每月的 1 号随机选择当月的活动(20 小时)。这些活动旨在带来乐趣,而非压力,不强求完成。

2. 同步内容:我会收集在其他平台上发布的内容,包括但不限于 #blog #pinboard

3. 私人笔记:没经大脑的学习笔记以及一些个人随想。可以是学习笔记、大胆的理论、或者是日常的碎念。 #TIL #manga #anime #game #暴论 #thinking

4. ACG 内容:浓度高的部份还是挪到 另外一个频道 @tomoko_acg ,偶尔会转发到这里。

5. 内容转发:在这个频道上转发的内容并不必然代表我个人的立场。我转发这些内容的目的是为了激发思考和促进讨论,而非争辩事实,所以不必过分认真对待我的转发。
 
 
Back to Top