从零打造商场背景音乐与紧急广播系统(一):缘起与需求

一、一个电话

去年冬天,一个老朋友打电话给我。他在本地一家中型商场做物业经理,管着保安、保洁、维修、消防一摊子事。

他说:"兄弟,我这边有个麻烦事,想问问你能不能做。"

我问什么事。

他说:"我们商场每天早上开门要放音乐,晚上关门要放送宾曲,中间还要播促销、找人、失物招领。现在全靠保安大哥手动操作,一台电脑,一个播放器,一个话筒。早上九点半要人守着按播放,晚上十点要人守着按停止。中间顾客找孩子、丢东西,全靠喊。消防演练的时候更乱,广播和消防主机是两套系统,各干各的。"

我说:"这不就是一套自动广播系统吗?市面上应该有现成的。"

他叹了口气:"有,但要么太贵,要么太难用。商用广播系统动辄几万,还要专门布线、装主机、配功放,我们这种中小商场预算根本撑不住。便宜的软件又只能放音乐,不能分区,不能找人,消防联动更是想都别想。"

然后他说了句让我决定动手的话:

"我们不是要一套多高级的系统,就是想让音乐自动放,找人能一键播,消防能联动,前台小姑娘也能学会用。"

挂了电话,我想了两天。这个需求听起来简单,做起来不简单。但正是这种"看起来简单、实际有坑"的项目,最有意思。

于是我开始了这个项目。


二、商场广播到底要什么

我花了两个周末,跑了本地几家中型商场、连锁超市、写字楼底商,跟物业、前台、保安、店长聊了一圈。把需求整理成五块。

1. 背景音乐

这是最基础的需求,但细节不少。

分区播放。商场不是一个大喇叭。一楼精品区放舒缓钢琴,二楼餐饮区放轻快流行,三楼母婴区放柔和儿歌,地下车库放轻音乐。四个区域,四种风格,互不干扰。如果全商场放同一首歌,精品店嫌吵,餐饮店嫌闷,车库嫌突兀。

分时段播放。早上开门前放迎宾音乐,营业中放背景音乐,午间放轻音乐,晚上放送宾曲。不同时段不同风格,营造节奏感。

音量分区可调。精品区音量要低,餐饮区可以高一点,车库因为回声大要压低。每个分区独立调节。

音乐库可管理。几百首歌,要能分类、搜索、试听、替换。不能每次都翻文件夹。

淡入淡出。切歌不能突然断,要淡出淡入,顾客听不出切换。

2. 紧急找人

这是商场最高频的"突发事件"。

场景:小朋友走丢了、老人走散了、顾客丢了钱包、有人捡到东西、车主找不到车。

现状:前台拿话筒喊,或者保安拿着喇叭满场跑。效率低,覆盖不全,还容易打扰其他顾客。

需求:

  • 前台输入文字,一键播报

  • 可指定分区(如只在走失区域附近播报,避免全商场打扰)

  • 可重复播报,间隔可配置

  • 优先级高于背景音乐,自动压低或中断

  • 常用模板:小朋友找家长、失物招领、寻车、走失老人

关键点:播报要清晰、自然、不像机器人。文字转语音(TTS)必须好听。

3. 营业提示

场景:开门提示、关门提示、促销播报、节日问候。

需求:

  • 开门前 15 分钟播放迎宾音乐

  • 营业结束前 30 分钟、15 分钟、5 分钟分别播报"即将停止营业"

  • 节假日、促销活动定时播报

  • 支持动态变量,如"今天是{日期},{星期}"

关键点:提示不能太生硬。"本商场将于22:00停止营业"比"请顾客尽快结账"更礼貌。

4. 消防联动

这是最严肃的需求,也是商用系统最贵的原因。

场景:消防报警触发时,自动切换至紧急疏散广播,全商场最大音量,覆盖背景音乐。

需求:

  • 与消防主机对接(干接点或协议)

  • 报警时立即中断所有播放,播放疏散指令

  • 消防广播结束后,自动恢复背景音乐

  • 数模备份:网络广播故障时切换模拟线路

  • UPS 保障:断电后继续运行

  • 定期测试:每月自动测试,记录结果

  • 录音存档:每次消防广播自动录音,便于追溯

关键点:消防广播不能出错。这是安全底线,不是体验问题。

5. 运营管理

场景:物业经理、前台、保安日常操作。

需求:

  • 运营人员远程切换播放方案(工作日/周末/节假日)

  • 手机端可以快速发起找人广播

  • 播放记录可查,便于追溯

  • 分区可临时静音(如某个店铺装修)

  • 操作简单,培训成本低

关键点:使用者不是 IT 人员。界面要"一看就会",不能有学习曲线。


三、商场广播和学校打铃有什么不同

我做过学校打铃系统,一开始以为商场广播就是"换个场景的打铃软件"。聊完才发现,差异很大。

 
维度学校打铃商场广播
核心目标 定时精准 氛围营造 + 应急响应
分区需求 教室独立广播 按楼层/业态分区,风格不同
优先级 考试广播优先 消防 > 找人 > 营业提示 > 背景音乐
音源 打铃音效、听力材料 背景音乐、TTS 语音、促销广告
时间精度 误差 < 100ms(考试) 误差 < 1s 即可
可靠性 听力考试不能出错 消防联动不能出错
使用者 教务老师 前台、保安、物业经理
操作频率 每天固定 随时可能找人、播报
界面风格 简洁、功能导向 专业、有氛围感

结论:商场广播不是"打铃软件的换皮版",它需要多分区、多优先级、TTS 语音、消防联动,是更复杂的系统。


四、为什么不买商用系统

市面上的商用广播系统,功能和可靠性都很好,但中小商场用不起。我调研了几家:

 
方案价格问题
传统公共广播系统 2-5 万 需要专门布线、装主机、配功放,施工复杂
IP 网络广播系统 3-8 万 需要网络功放、IP 音箱,硬件贵
云广播 SaaS 1-3 万/年 依赖公网,断网不能用,数据在别人手里
单机播放软件 几百到几千 只能放音乐,不能分区、找人、消防联动

中小商场的真实需求:

  • 预算 5000 元以内

  • 用现有电脑,不重新布线

  • 用普通功放和喇叭

  • 自己装,不需要施工队

  • 操作简单,前台能学会

这正是我想做的:用一台普通电脑 + 几个 USB 声卡 + 现有功放喇叭,软件自己写,成本控制在几千元。


五、我打算怎么做

技术路线

  • 单机运行:不依赖云,断网也能用

  • 多声卡分区:淘宝 20 元的 USB 声卡,一个分区一个

  • WPF 桌面程序:界面现代、深色主题、微动效

  • NAudio 播放:多声卡输出、淡入淡出、格式支持

  • TTS 语音:Edge TTS 免费、中文自然

  • 优先级管理:消防 > 找人 > 营业提示 > 背景音乐

  • 消防联动:干接点直连,数模备份

部署方式

商场现有电脑
├── 安装软件
├── 插 4 个 USB 声卡(每个 20-30 元)
├── 每个声卡接一路功放
├── 每路功放接对应区域的喇叭
└── 完成,总共不到 1000 元

功能规划

 
版本功能定位
免费版 单分区、基础定时播放 个人、小店
标准版 多分区、TTS 找人、作息表 中小商场
专业版 + 优先级、消防联动、录音存档 正规商场
企业版 + 手机端、多机热备、API 连锁商场

六、这个系列要写什么

这不是一篇"教你写播放器"的文章。我想分享的是:一个单人开发者,如何从零构建一套能真正交付给商场使用的广播系统。

系列规划:

 
篇主题内容
1 缘起与需求 本文,商场广播到底要什么
2 技术选型与架构 为什么 WPF + NAudio,如何分层
3 多分区与优先级 商场广播的核心,Ducking 机制
4 TTS 紧急找人 前台一键播报,缓存与动态变量
5 界面设计与用户体验 深色主题、微动效、首次启动向导
6 可靠性、商业化与未来 消防联动、许可证、产品化

每篇都会配真实的产品截图和可运行的代码片段。


七、先看一眼成品

说了这么多,先看一眼软件长什么样。

首次启动向导:第一次打开软件时,选择使用场景,自动创建示例配置。

fd1ba52ae08cb6684690b6f3b2b6b16d

[图 1:首次启动向导]

截图说明:深色背景,左侧场景列表(幼儿园、学校、商场/超市、工厂/车间、军营、消防站),右侧显示选中场景的详细说明和将要创建的时间点预览。底部有"按所选场景创建示例配置"复选框和"完成并开始使用"按钮。

深色主题主界面:日常运营的主要界面。

4bbcdd985e82347389551ed1b5d33cf5

[图 2:深色主题主界面]

截图说明:深色背景,左侧功能导航(定时播放、节目库、分区管理、作息表、节假日、设置、日志),中间是今日任务列表,右侧是运行状态面板(当前播放、优先级、下一任务、总音量、分区状态),顶部有作息表切换和紧急广播按钮。

浅色主题主界面:适合明亮环境(如白天办公室)。

22fdb3fd3f726bb7f2feebaf86db8052

 

[图 3:浅色主题主界面]
截图说明:同一界面切换到浅色主题,背景变白,文字变深色,主色和状态色保持一致。顶部工具栏有主题切换按钮(太阳/月亮图标)。

这三张图基本能说明软件的定位:专业、现代、易用,不是玩具,也不是传统商用广播系统那种"工程师界面"。


八、写在最后

这个项目从去年冬天开始,到现在有几个月了。中间经历了无数次调试、优化、被吐槽"音乐切换太突然"、"找人声音太小"、"消防演练时没声音"。但每次改进后,看到商场里音乐轻柔流淌,顾客听到找人广播后安心地走向服务台,就觉得值了。

做工具软件,最难的不是技术,是理解场景。 商场广播不是"放音乐",是"营造氛围 + 应急保障 + 运营工具"三合一。只有真正理解商场运营的节奏,才能做出好用的产品。

这个系列会把这几个月的思考、踩坑、代码都写出来。如果你也在做类似的项目,欢迎交流。

下一篇,我们聊技术选型与架构:为什么是 WPF + NAudio,为什么不用 Electron,为什么要有 Abstractions 层,以及一次痛苦但值得的重构。

posted on 2026-10-01 21:56  feliya52  阅读(4)  评论(0)    收藏  举报

导航