我正在尝试为视频编写一个 upnp/dlna 客户端,我想允许按标题和日期排序的选项。
使用 Windows7/wmp 作为服务器,我可以使用“dc:title”或“dc:date”进行排序,它似乎可以工作,但测试人员告诉我它在其他服务器上不起作用。有没有一种通用的方法可以知道是否允许排序以及排序标准应该是什么?
谢谢。
有一种方法可以对此进行查询(但也要为那些关于其能力的错误实现做好准备)。引用ContentDirectory 服务规范 (v3):
2.3.3 排序能力
此状态变量是一个属性名称的 CSV 列表,ContentDirectory 服务可以使用它来对 Search() 或 Browse() 操作结果进行排序。空字符串表示设备不支持任何类型的排序。通配符 (“*”) 表示设备支持使用 ContentDirectory 服务支持的所有属性名称进行排序。返回的属性名称必须包含适当的名称空间前缀,DIDL-Lite 名称空间除外。DIDL-Lite 命名空间中的属性必须总是不带前缀返回。所有属性名称必须使用第 2.2.20 节“属性”中定义的双冒号 (“::”) 语法进行完全限定。例如,“upnp:foreignMetadata::fmBody::fmURI”</p>