需完成认证配置、设备连接和数据流订阅三环节:先安装SDK并获取Client ID/Secret存为环境变量;再用discover_muse()自动发现或connect_muse(mac_address)直连设备;最后初始化MuseDataReceiver,注册回调函数处理EEG帧,调用start_streaming()启动并务必stop_streaming()释放资源。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Python项目中调用Muse Wonder API实现脑电数据实时采集与分析,需先完成认证配置、设备连接和数据流订阅三个核心环节。
安装依赖与获取API密钥
执行 pip install muse-wonder 安装官方SDK;访问 Muse Developer Portal 注册账号并创建应用,获取 Client ID 和 Client Secret。
这一步不能跳过——没有有效凭证,后续所有连接请求都会返回 401 错误。
将密钥保存为环境变量:export MUSE_CLIENT_ID="your_client_id";export MUSE_CLIENT_SECRET="your_client_secret"。
立即学习“Python免费学习笔记(深入)”;
连接Muse设备并启动数据流
方法一:使用自动发现模式(推荐新手)
调用 muse_wonder.discover_muse() 扫描附近已开机且处于配对模式的Muse设备;扫描超时默认为10秒,若设备未进入配对状态(蓝灯快闪),该函数会直接返回空列表。
方法二:指定MAC地址直连
传入已知设备MAC地址字符串(如 "00:55:DA:78:9A:BC")调用 muse_wonder.connect_muse(mac_address);【MAC地址必须全小写且带冒号分隔】,大写或缺分隔符会导致 BluetoothError 异常。
订阅并处理实时EEG数据
第一步:初始化数据接收器
创建 MuseDataReceiver 实例,传入 sampling_rate=256(Muse S/S2默认采样率)和 channels=['TP9', 'AF7', 'AF8', 'TP10'];漏掉 channels 参数会导致回调函数收不到任何原始通道数据。
第二步:注册回调函数
定义一个接受两个参数(timestamp, eeg_frame)的函数,eeg_frame 是长度为4的浮点数列表,顺序严格对应初始化时 channels 的声明顺序。
第三步:启动流式订阅
调用 receiver.start_streaming() → 连接成功后自动触发回调 → 每256个样本(约1秒)触发一次回调;中断连接前必须显式调用 receiver.stop_streaming(),否则蓝牙资源不会释放。


















