Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29341-13-10 规定了 UPnP 网络中预定录制(ScheduledRecording)服务的架构,为在联网录制设备上调度、管理和执行媒体内容录制提供了标准化框架。该标准对于运行在多设备家庭网络环境中的现代数字视频录像机(DVR)和个人录像机(PVR)系统至关重要,使用户能够从网络中的任何控制点调度录制任务,并由任何有能力的录制设备执行。
ScheduledRecording 服务的核心是 Schedule 资源,表示为包含录制计划条目列表的状态变量。每个条目指定源频道或节目标识符、开始时间和持续时间、录制质量配置文件和目标存储位置。服务暴露了 AddSchedule、DeleteSchedule、GetScheduleList 和 UpdateSchedule 等动作来管理这些条目。
29341-13-10 最重要的实践特性之一是其冲突解决机制。当新的录制请求与需要相同调谐器资源的现有预定录制重叠时,服务必须确定冲突是否可解决。解决策略包括基于用户分配的优先级进行优先级排序、建议替代时间段,或提醒用户手动解决冲突。标准定义了一种 ConflictEntry 数据结构,编码重叠调度的详细信息,使控制点能够向最终用户呈现清晰的冲突信息。
| 动作 | 用途 | 冲突行为 |
|---|---|---|
| AddSchedule | 创建新的录制计划条目 | 如果资源不可用则返回冲突错误 |
| UpdateSchedule | 修改现有计划条目 | 重新评估与现有计划的冲突 |
| DeleteSchedule | 删除计划条目 | 可能释放待处理计划占用的资源 |
| GetConflicts | 获取当前冲突信息 | 返回 ConflictEntry 结构列表 |
| SetResourceAllocation | 分配调谐器或存储资源 | 支持手动覆盖自动分配 |
ScheduledRecording 服务维护录制设备物理和逻辑资源的模型,包括调谐器、转码器和存储卷。每种资源通过一组能力来描述——例如,调谐器支持的调制格式、转码器可用的输出配置文件或存储卷的可用空间和最大写入速率。
资源分配采用两阶段协议。在预留阶段,服务检查是否有足够的资源可用于请求的录制并临时预留它们。在提交阶段(在录制开始时间或附近发生),预留被转换为绑定分配。这种两阶段方法允许调度器处理最后一刻的变化——例如节目时间表变动或用户取消——而不会浪费资源预留。
实现健壮的 ScheduledRecording 服务需要仔细关注几个工程细节。录制计划的持久存储至关重要——录制设备必须在断电和网络中断期间保留计划信息。标准建议使用具有原子写入操作的非易失性存储器,以防止断电期间计划损坏。
时区和夏令时处理是另一个令人惊讶的复杂方面。录制计划通常跨越夏令时转换期,标准规定所有计划时间应以 UTC 格式存储,并将本地时区偏移量记录为元数据。这样无论本地时区规则如何变化或设备的物理位置如何移动,都能正确解释计划。
最后,标准定义了一种录制通知机制,在预定录制开始、完成或遇到错误时提醒控制点。这些通知通过标准 UPnP 事件机制传递,控制点可以订阅以接收特定计划或设备上所有计划的状态更新。