开发者控制台

Fire TV上的电视输入框架

Fire TV上的电视输入框架

线性电视集成基于用于开发电视输入服务的Android文档。以下链接和说明将帮助您了解Fire TV的专门技术要求。

背景知识和术语

在您深入了解Fire TV上的电视直播之前,以下外部链接可以有效帮助您了解相关背景和基本知识。在进行集成之前,请查看此文档:

线性电视集成基于以下Android文档: 开发电视输入服务

集成详细信息

要集成线性直播频道,必须提供对客户的频道授权的访问权限以及相关元数据,以便在Fire TV上提供内容转发浏览和搜索体验。

直播频道授权

您的应用必须进行更新,才能仅将授权频道推送到设备上的本地频道数据库(由电视输入框架(TIF)提供)中。可以通过使用INITIALIZE_PROGRAMS操作注册广播接收器来更新(或者添加或删除)频道。确保在最初安装应用时更新此授权元数据。即使应用正在后台运行,也可执行此操作。

要编辑频道,请参阅使用频道数据

如果此数据库中有频道,则客户可以查看这些频道。此数据库中的频道可以随时添加或删除,且更改将立即反映在UI中。这是因为在任何实时体验中向客户展示的所有频道都以该数据库为依据。

尽可能完整填写TvContract.Channels中的频道列。如果您知道您的Gracenote频道ID或希望提供深层链接进行播放,可以将这些信息添加到Channels#COLUMN_INTERNAL_PROVIDER_DATA中,如代码示例部分所述。

获取节目元数据

为了向直播TV提供元数据,将使用Gracenote频道ID。

提供GracenoteID

如果提供Gracenote频道ID(onTVGVD),信息将通过直播TV应用同步到云端。如果找到Gracenote ID,该ID将用于在Fire TV目录中查找频道,该目录包含最多14天的节目信息。此信息将显示在Home(主页)和Live(直播)选项卡以及Channel Guide(频道指南)中。它将自动刷新到最新状态,并可通过Search(搜索)和Alexa发现。

频道排序

频道排序决定Fire TV设备UI显示的频道排行。基准顺序由提供方决定。但是,客户可以通过上下文菜单或频道管理器收藏频道。这些频道的显示优先级最高。因此,优先级为:收藏夹 > 频道排序选项。Fire TV提供了两种具有不同开发工作级别的选项:

  1. 显示名称排序历来是最常用的排序,因其所需开发时间为零。使用这种排序,Fire TV UI中的频道将根据displayName采用统一码显示。例如,频道列表{“XYZ”、“1BC”和“1 BK”}将按{“1 BK”、“1BC”、“XYZ”}排序。

  2. 自定义频道排序是您的第二个选项。使用这种排序,提供方频道将按照与tv.db中的“_id”一致的顺序显示,“_id”按插入顺序分配。在tv.db中更新这些频道时,需要保持该频道排序,因为直播TV应用将在Fire TV UI中采用相同的顺序。

为保证一致的体验,强烈建议选择与应用程序内频道排序相似度最高的频道排序。在入驻过程中,您需要与您的亚马逊联系人合作选择频道排序方法。

全屏播放

深层链接。Fire TV允许用户使用自己的应用程序进行全屏播放。为此,需要在频道数据库中提供深层链接意图,将其作为频道信息的一部分。如果在浏览或搜索时选择该频道,则会启动此意图。每当该意图被激活时,所请求的频道将启动全屏播放。请参阅代码示例部分。

启动画面指南

  • 当用户聚焦于磁贴后,应在3秒之内启动闪屏界面。
  • 在加载启动画面后2秒钟内,应开始播放聚焦内容的视频预览。
  • 如果合作伙伴支持频道预览(强烈推荐),并且通过客户的Fire TV设置启用了家长监护 (PCON),则会禁用频道预览(不会在迷你详情中播放),并恢复到Gracenote已包含的图像覆盖范围。亚马逊不会阻止在Fire TV或合作伙伴应用中设置的内容评级或首选项。此规则适用于所有合作伙伴和直播源。

如果您的应用程序支持频道预览(强烈推荐),并且客户通过Fire TV设置启用了PCON,则会禁用频道预览(不会在迷你详情中播放),并恢复到Gracenote已包含的图像覆盖范围。我们不会阻止在Fire TV或合作伙伴应用中设置的内容评级或首选项。此规则适用于所有合作伙伴和直播源。

家长监护

根据产品要求,启用家长监护 (PCON) 后,不得播放预览播放视频。

如果您的应用程序将内容渲染到提供给TvInputService(例如实时预览或无频道深层链接)的Surface上,则必须恰当地实施家长监护。这样可以确保在启用家长监护后,必须先输入PIN,然后才能向最终用户显示内容。您的TvInputService负责在请求应该被阻止的内容时通知前台应用。请参阅代码示例部分了解建议的流程。

提供方属性

请确保您自定义了以下三个项目:

1.标签

默认情况下,客户浏览频道时,应用的label将用作标题。标签长度不应超过12个全角字符或24个字母数字字符。如果您想用其他名称但无法更改标签,请与您的亚马逊联系人合作,以确保此信息被覆盖。

请务必提供一个代表应用品牌的单色标志(白色图像、透明背景)。该标志将叠加在节目图像之上。此图像文件高度不得超过34个像素,横向宽度不得超过叠加图像的25%。

请联系亚马逊以了解详细信息。

3.横幅

可以通过程序包管理器提供应用横幅。示例请见代码示例部分。

认证核对清单

亚马逊将使用以下核对清单来验证您的应用是否集成了直播TV。您的应用的实现会直接影响下面的预期行为点。请注意,任何有关验证的例外情况都将根据具体情况处理。

权利状态更改

  • 客户执行以下操作之一后,客户授权频道会填充到Fire TV UI(例如,“正在播放”行,频道指南): (1) 打开并登录应用,或 (2) 前往Settings(设置)> Live TV(直播TV)> Sync Sources(同步源)> <应用名称>,访问应用的设置页面。开发者必须检查这两种情况。
  • 如果客户的会员资格过期(即,变为“未授权”状态),这些频道会继续在Fire TV UI上显示,直到客户进入频道、查看付费墙以及退出或拒绝该选项。
  • 如果应用被卸载或者这些频道变为未授权频道,则会从Fire TV UI中删除这些频道。

最大推出速度

以最大500K/小时的速度向客户分阶段推出频道。

此值是指拥有频道权利的客户Fire TV设备的数量。频道权利意味着从Fire TV线性集成UX点击一次即可全屏播放。

示例:

  • 应用ABC提供视频点播,但将直播TV作为付费附加程序。费率仅针对拥有电视直播附加程序的ABC客户。
  • 应用XYZ提供了一种免费的基础频道套餐和另一种包含更多频道的付费套餐。如果更新了付费套餐的频道阵容,则此费率针对的是使用该付费套餐的客户。

浏览和播放体验

  • 当客户转到某个频道时,将提供丰富的元数据体验。在线性电视指南中,频道将包括频道标志、频道号(可选)和未来14天的节目安排信息。节目元数据包括节目名称、播放时间、剧集名称、剧集描述(时长)、季节和剧集信息、隐藏式字幕、评级节目图像(16:9)和背景图像(16:9)。此元数据信息应来自Gracenote匹配或作为电视合同的一部分推送的元数据。
  • 当客户聚焦于On Now(正在播放)行中的某个频道时,可以看到直播频道预览取代了背景图像。
  • 客户应该了解谁在提供此授权频道。这包括添加提供方属性作为背景图像的一部分(单色,高34像素)或作为直播频道预览播放之前的启动画面。
  • 选择频道后,客户将进入全屏播放。不超过两次按下后退按钮将返回Fire TV UI。
  • 如果启用了家长监护(PCON),则在播放前会显示PIN提示。如果启用了PCON,则必须禁用实时频道预览。
  • 如果访问Alexa,则需要调低实时播放的音频音量;视频可继续播放。
  • (可选)可将某个频道归类,以便该频道能显示在Fire TV UI上的其他入口点中。

开发、模拟和部署

  • 亚马逊必须能够将特定账户列入允许名单,以便在投入生产之前检查和验证集成体验。
  • 只有授权频道才会在双方同意推出的市场中添加到Fire TV UI上。新市场中的后续频道推出将有新的认证审查,并需要列入允许名单。
  • 亚马逊必须知晓在启动后添加和删除的任何频道。双方必须就可添加频道的数量上限达成一致。
  • (强烈推荐)应用的下载页面和发行说明应提及直播TV集成,以便客户了解Fire TV上新功能的可用性。

进行更新

对于所有应用更新,请在进行更新之前再次检查认证核对清单中的项目。

对于所有频道阵容更新,请再次检查认证核对清单中的项目,并执行以下操作:

  • 请至少在推出前两周告知Fire TV联系人推出时间线。
  • 如果要将频道阵容增加或减少10%以上,请获得Fire TV联系人的明确批准。

Last updated: 2024年7月16日