A
Air学园
从Audacity 3.7.8到鸿蒙,AirAudio(from Audacity)中间隔着一条完整的适配链路,几个亮点值得细说。
AirAudio(from Audacity)的定位一句话能说清:Audacity 移植,录音与音频编辑。
▍全栈交叉编译一次落地
上游同时牵动 wxWidgets、GTK、PortAudio 与十几条编解码依赖,工程在鸿蒙工具链上把整条依赖链全部编译落地,一百多个预编译库随包部署,构建链从源码到安装包可复现。
▍原生菜单与系统窗口融合
菜单树从引擎侧导出、由系统原生组件渲染,菜单项可用状态按周期刷新;图形画面经全窗口渲染通道接入系统窗口,桌面级界面不重写一行界面代码就上了鸿蒙。
▍音频后端真接入
音频层增补系统输出后端,录音与播放走鸿蒙音频链路而非软件模拟;解码链覆盖 ogg、vorbis、flac、opus、mp3、wavpack 等常见格式。
▍三个构建难题工程化破解
深层依赖链崩溃改为全静态并入收窄、交叉链接静默失败改为手工全对象链接加符号自检、工具链环境变量干扰强制修正——三个坑都以可复现脚本的形式沉淀在工程里。
▍边界与下一步
当前版本定位为可复现的构建骨架:核心编辑与音频链路已通,MIDI 与插件按需加载等外围能力在计划中,真机验证矩阵随设备授权持续补全。
使用中遇到本篇没覆盖的情况,欢迎在帖下留言描述机型与现象,我们会持续补充。
AirAudio(from Audacity)的定位一句话能说清:Audacity 移植,录音与音频编辑。
▍全栈交叉编译一次落地
上游同时牵动 wxWidgets、GTK、PortAudio 与十几条编解码依赖,工程在鸿蒙工具链上把整条依赖链全部编译落地,一百多个预编译库随包部署,构建链从源码到安装包可复现。
▍原生菜单与系统窗口融合
菜单树从引擎侧导出、由系统原生组件渲染,菜单项可用状态按周期刷新;图形画面经全窗口渲染通道接入系统窗口,桌面级界面不重写一行界面代码就上了鸿蒙。
▍音频后端真接入
音频层增补系统输出后端,录音与播放走鸿蒙音频链路而非软件模拟;解码链覆盖 ogg、vorbis、flac、opus、mp3、wavpack 等常见格式。
▍三个构建难题工程化破解
深层依赖链崩溃改为全静态并入收窄、交叉链接静默失败改为手工全对象链接加符号自检、工具链环境变量干扰强制修正——三个坑都以可复现脚本的形式沉淀在工程里。
▍边界与下一步
当前版本定位为可复现的构建骨架:核心编辑与音频链路已通,MIDI 与插件按需加载等外围能力在计划中,真机验证矩阵随设备授权持续补全。
使用中遇到本篇没覆盖的情况,欢迎在帖下留言描述机型与现象,我们会持续补充。
楼主
7 天前