慢下来才能更快
– Marshall Liu

【置顶】2026
记录跟踪2026年要做的事情和正在做的事情。 目标 健康生活 体重减到60kg 探索可能 ...

WebRTC 音频设备管理:从双向数据流到跨平台实现
麦克风把声音变成 PCM,扬声器把 PCM 变回声音。对一个实时通话系统来说,这两句话之间还有很多事情:选择设备、协商格式、启动音频流、适应设备回调的节奏,以及在耳机拔出、来电中断后恢复工作。 WebRTC 把这些工作集中在 Audio Device Module,简称 ADM。理解它,最好先建立整体位置,再沿着音频数据走一遍,最后进入代码和平台实现。否则很容易把“设备缓冲”“网络抖动缓冲”和“回声消除”混成一件事。 本文以本地 webrtc_src 的提交 3dec7d05377fb690e84f503db865edde982ab2a5 为源码基线,提交日期为 2026-10-23。正文主要讨论使用内置设备模块的 native 音频路径;浏览器或业务方可以注入自己的 ADM,复用这里的接口而采用不同的数据通路。文中的源码链接固定到该提交,代码片段会标明是否经过简化。 ...
一名音频程序员的科技自媒体创业调研
我想尝试科技自媒体创业。这篇文章基于自己十多年音频算法和音视频开发经历,整理了账号定位、内容栏目、起步选题、制作流程和变现路径。
用 OpenSpec 重构 AI Coding 工作流:让每次开发都可追溯、可恢复、可沉淀
AI Coding 快了,但方案反复、决策丢失和上下文中断也变得更常见。这篇文章介绍如何用 OpenSpec 把 Explore、Propose、Review、Apply 和 Archive 串成一条可复用的规格驱动开发流程。
当代码越来越便宜,软件工程师还值钱吗?
当代码生成越来越便宜,工程师真正稀缺的能力是什么?这篇文章整理了我和 ChatGPT 关于职业前景的一次长谈,以及一条从 AI Coding、Spec 到 Agent Engineering 的个人进阶路线。