sonos - CustomSD 服务无法播放曲目
问题描述
我目前正在开发音乐服务并通过customsd对其进行测试。控制器应用程序中的集成正在运行(iOS 应用程序和 Windows 桌面应用程序) - 所以我可以浏览 - 但我无法让播放器播放任何曲目。一旦我点击控制器中的“播放”按钮,我就会不断收到“无法连接”错误。我可以在服务端看到 Player 发送一个 getMetadata 和一个 getMediaURI 请求,并且该服务提供的 SOAP 响应与来自另一个来源的工作示例相同;但是,播放器似乎无法处理它们。我有点卡住了,我想对我有帮助的是播放器日志。有没有办法得到它们?或者,是否有人对问题的根本原因有任何其他想法?
编辑:或多或少偶然,我遇到了我的问题的原因。虽然一般来说,Sonos 可以处理任意 ID,但 getMediaURI 似乎只在它请求 URI 以获取 track:something 形式的 ID 时才有效。我不记得将其视为开发人员页面上的要求。
无论如何,现在可以工作了。
解决方案
如果您收到getMediaURI
请求并以有效响应对其进行响应,则播放器很可能无法处理媒体文件本身。您是否看到正在下载的媒体文件?您可以在本地托管媒体文件,并将 URI 包含在getMediaURI
要检查的响应中。
请注意,<mimeType>
元数据中包含的 URI 用于通知播放器getMediaURL
响应中的 URI 指向的媒体类型。
因此,如果您要返回<mimeType>audio/ogg</mimeType>
track123,但getMediaURI
的响应包含 URI https://something.xyz/track123.mp3
,则播放可能会由于不匹配而失败。
推荐阅读
- python - 使用 mongoose 模型从 python 构建的 mongodb 获取数据,并使用 PyMongo 获取数据
- docker - 内存交换限制
- powershell - Powershell bitlocker,无法在 regedit 中找到路径
- amazon-web-services - `the node was low on resource imagefs` -- 定期导致 pod 驱逐
- ocr - Tesseract 多种输出格式
- node.js - 谷歌云存储“无效的上传请求”错误。错误的请求
- android - 如何测试打开的连接是否正常工作?
- python - 更改熊猫数据框中满足不同条件的所有值
- javascript - Javascript数组存储
- vbscript - 使用经典 ASP 的 GoCardless API