数字音乐教室系统是一套面向一对多音乐教学场景的交互式平台,由教师端PC上位机与最多112台学生终端FPGA下位机构成,通过局域网UDP自定义帧协议实现双向通信。系统以Qt 6.6.3为开发框架,前端QML构建界面,后端C++多线程架构支撑高并发实时数据处理。
系统支持六种授课模式动态切换:讲解、互动、分组教学、自习、分组练习、考试评测。SupervisionSingleTask根据当前模式调度MixSingleTask工作线程完成实时混音,教师音频经QAudioSource采集、FFmpeg滤波后按设备地址分发至各学生终端。
通信采用1024字节定长帧结构,包含帧头0xAA55、设备地址、命令码、数据区、CRC16-CCITT校验及帧尾0x55AA。发送侧由SenderTask协同6个WaitAndSendTask子线程按地址段分组轮发,接收侧绑定端口6102由9个OperationTask并发解析。TCP心跳每60秒保活,断线自动重连。
前端通过qmlRegisterType注册C++对象实现双向通信,AgreementService封装30余项业务指令供QML调用。座位网格支持滚轮缩放,采用九宫格动态变换原点配合delegate复用确保流畅。系统还集成NFC签到、MIDI信号接收、举手提示、实时波形显示等功能,覆盖音乐课堂完整交互链路。