节目电台播放失败

Posted

技术标签:

【中文标题】节目电台播放失败【英文标题】:Programmed radio playback fails 【发布时间】:2021-04-20 07:47:14 【问题描述】:

我正在尝试为 Sonos 构建内容服务,但在播放曲目时遇到了问题。我设法设置了一个非常基本的 SMAPI 服务器并添加了 Cloud Queue 端点,并最终弄清楚了如何使清单工作。不涉及身份验证,HTTPS 仅用于清单文件,否则无法正常工作。

现在,在我将自定义 SD 加载到 Sonos 扬声器后,它会调用 getMetadatagetLastUpdatecontextitemWindow,然后我会返回相应的响应(请参阅下面的 JSON),与中所示的相同Sonos 文档。我的根mediaCollection 是一个程序列表,在文档中称为程序化收音机。我在队列中返回的曲目包含一个mediaUrl,它指向我的计算机,因此我可以在使用它时进行跟踪。

但是,这些 URL 从未使用过,内容也从未在我的扬声器上播放。如果我按下播放键,我会收到错误消息“无法播放所选项目”,但对于找出问题所在没有任何帮助。我已检查我的媒体文件是否受支持且适合流式传输,但播放器从未尝试访问它们。

任何帮助将不胜感激。

itemWindow 回复:


    "queueVersion": "34612290",
    "items": [
        
            "id": "21580176",
            "deleted": false,
            "track": 
                "name": "Back Together (Dub)",
                "album": 
                    "name": "Back Together - Single",
                    "artist": 
                        "name": "Jean & Trevor"
                    
                ,
                "artist": 
                    "name": "Jean & Trevor"
                ,
                "imageUrl": "http://192.168.1.38:3040/covers/E9JRtSpc5F2wAARjS.png",
                "mediaUrl": "http://192.168.1.38:3040/tracks/E9JRtSpc5F2wAARjS.m4a",
                "durationMillis": 421700,
                "contentType": "audio/mp4",
                "id": 
                    "objectId": "track_E9JRtSpc5F2wAARjS"
                
            
        ,
        
            "id": "00291014",
            "deleted": false,
            "track": 
                "name": "Bajoo",
                "album": 
                    "name": "Tropical Bird Club",
                    "artist": 
                        "name": "JaJa"
                    
                ,
                "artist": 
                    "name": "JaJa"
                ,
                "imageUrl": "http://192.168.1.38:3040/covers/kY3kTCKg75GTbTfTQ.png",
                "mediaUrl": "http://192.168.1.38:3040/tracks/kY3kTCKg75GTbTfTQ.m4a",
                "durationMillis": 378000,
                "contentType": "audio/mp4",
                "id": 
                    "objectId": "track_kY3kTCKg75GTbTfTQ"
                
            
        ,
        
            "id": "00582217",
            "deleted": false,
            "track": 
                "name": "La maison où j'ai grandi (Il Ragazzo Della Via Gluck)",
                "album": 
                    "name": "La maison où j'ai grandi",
                    "artist": 
                        "name": "Françoise Hardy"
                    
                ,
                "artist": 
                    "name": "Françoise Hardy"
                ,
                "imageUrl": "http://192.168.1.38:3040/covers/xucsWSjnPGgwXGbpy.png",
                "mediaUrl": "http://192.168.1.38:3040/tracks/xucsWSjnPGgwXGbpy.m4a",
                "durationMillis": 216000,
                "contentType": "audio/mp4",
                "id": 
                    "objectId": "track_xucsWSjnPGgwXGbpy"
                
            
        ,
        ...
    ],
    "includesBeginningOfQueue": true,
    "includesEndOfQueue": false


【问题讨论】:

【参考方案1】:

您的 getMetadata 返回什么?我对你的 json 感到困惑,SMAPI 不使用 json(除了一些未记录的情况)。那和 getLastUpdate 应该足以获得播放调用。您在 Sonos 应用中看到您的根对象了吗?

我编写使用 SMAPI 的 Sonos 应用程序,除了一些服务所需的未记录内容外,我从不使用 json。 (我不做任何云队列的事情)。

我建议在尝试云队列集成之前先了解 SMAPI 的基础知识(云队列是可选的,可以稍后完成)。

【讨论】:

以上是关于节目电台播放失败的主要内容,如果未能解决你的问题,请参考以下文章

手机版网易云音乐怎么把下载了的电台节目添加到歌单里

适合长期英语学习的电视电台podcast节目有哪些?

一张Sketch的整容前后 | 异能小灶

安卓直播电台播放器

Xamarin Android C# 播放音频流(在线电台)

使用 videojs 播放视频,视频获取失败