录制与媒体播放
约 1572 字大约 5 分钟
2026-10-16
先完成基础教程
先读 六阶段公共主线,再完成 MQTT 认证与基础报文。音频设备选 MQTT+UDP;视频、人际通话与 IPC 选 MQTT+WebRTC。不同媒体选择不改变接听和授权的业务规则;文字/异步分支不创建实时媒体。
按这条路径操作:①确认支持范围和当前配置;②按传输教程完成能力、创建或邀请、媒体连通;③进入下表指定步骤;④按分支观察实际业务效果;⑤分支结束返回原会话,整个会话结束则本地停机并 sessionEnd/sessionEnded。创建、接听、媒体与结束的具体报文以 完整基础流程与逐报文 和 会话契约 为准。不要把 HTTP 202、requestAck 或 sessionCreated 当成业务已完成。
基础操作:录制和播放分开接入
录制:已建立会话上的授权旁路
先配置录制器和持久产物存储,取得全体被录者对本用途、来源和期限的同意。发送 recordingControl(start),等 recordingState 的实际录制状态;accepted 不代表已写入媒体。新成员加入先暂停补同意,撤权立即停止取流;恢复必须明确操作,不能自动继续收录。
图中字段与状态以录制命令为准,完整请求应答见录制流程。stop 后允许最多60秒封装,失败不能给出虚假 ready;验证要下载并解码真实产物,不只看状态机通过。
{
"msgToken": "s15-35",
"method": "recordingControl",
"sessionId": "s15-session",
"params": {
"operation": "start",
"expectedRevision": 0,
"recordingId": "rec-1",
"sourceTrackIds": [
"mic-a",
"mic-b"
],
"consentIds": [
"consent-a",
"consent-b"
],
"policyId": "retention-policy"
}
}播放:先确定来源,再建独立播放流程
录制 ready 不会自动播放。历史媒体先取获授权来源,按 recordPlayback 建独立媒体会话;鉴权文件播放按当前 mediaPlayback 支持子集处理。随后按 playbackControl 的 start/pause/seek/resume/stop 操作,等实际 playbackState,seek 以实际关键帧位置为准。自然结束同样要结束会话并释放解码/音视频输出,不能只停服务器转发。
播放字段与实际释放事实见播放命令。录制与播放教程保留两套完整时序;历史回放补来源与摄像头业务。留言无需实时会话;实时广播仅按当前已实现子集和设计边界阅读,不能直接沿用录制 start。
分支从哪里进入、怎样回到主线
| 业务教程 | 进入位置 | 需要增加/改变的条件与操作 | 预期结果、返回与退出 |
|---|---|---|---|
| 录音录像与媒体播放 | 阶段5:录制旁路/独立播放 | 录制需全员同意;播放先验证来源和访问权,两者不是同一状态机 | 新成员/撤权暂停录制,显式恢复;播放 pause/seek/自然结束后释放媒体 |
| 广播与异步语音留言 | 独立异步流程,不进入实时媒体阶段 | 文本/语音留言按 deliveryId、expiresAt 投递;附件先上传 ready | 回执分别表示投递/处理,不伪造实时通话;文件权限和过期分别管理 |
| 实时广播分区与紧急插播 | 阶段2~5:实时广播扩展(设计) | 节目来源、分区、优先级和资源焦点独立核权;协议定义不等于媒体 Owner 已接线 | 退出订阅、紧急插播和恢复均需明确状态,不自动恢复用户关闭的采集 |
每个链接内都有专属操作图、完整协议时序、关键 JSON、字段链接、失败与资源释放;不是“与前面类似”的省略步骤。实现状态须以 能力范围 及分支前置条件为准,设计待实现能力不因列入本教程而启用。
怎么确认本组接入成功
依次核对实际鉴权、能力交集、会话/邀请结果和媒体事实,再核分支的识别/实际执行/真实解码/产物状态。最后退出,确认本端已停止采集、播放或订阅,且其他仍授权会话不受影响。失败按 共通失败与恢复 处理,不伪造完成,也不重新执行结果未知的写动作。字段只在 协议参考 维护;逐条请求和应答在 完整报文示例。
更新日志
2026/10/17 03:27
查看所有更新日志
d04e1-docs(AI与音视频): 按公共主线与场景分支整合接入手册于
