如何为网站启用 Chromecast?

2024-01-26

This article https://support.google.com/chromecast/answer/3265953?hl=en-CA解释了“支持 Chromecast 的网站”的好处:

  • 更高的质量:支持 Chromecast 的网站可以提供高质量的服务 最适合在电视上观看的内容。这通常意味着您将 获得全 1080p 高清图片;对于某些内容,您可能 还可以获得 5.1 环绕声(如果您的电视或接收器支持)。 投射标签页时,最大分辨率为 720p(如果 您的计算机支持)。
  • 电池寿命和计算机负载:支持 Chromecast 的网站可直接在 Chromecast 设备上播放并放置 您的计算机上没有负载。投射标签需要大量的精力 计算机的能力,这就是为什么并非所有计算机都支持它。
  • 独立演奏:当您从支持 Chromecast 的网站播放时, 您可以关闭计算机或合上盖子。带标签 投影时,您需要在整个演员阵容中保持计算机处于开启状态。

然而,它并没有解释how在网站上启用 Chromecasting。

我需要做什么才能在我的网站上启用 Chromecasting?

我是否只能播放视频,或者我可以提供实时新闻推送等服务,而无需计算机为其提供支持?


以下是对我有用的。

1. 将 Chromecast 按钮添加到您的页面

<button is='google-cast-button'></button>

Google 的 Chromecast Javascript 客户端会自动赋予这个按钮神奇的力量。看来是must

2. 定义 Chromecast onload 处理程序

下面的代码是一个最小的实现,它只是在投射时播放单个 mp3。完整的文档位于https://developers.google.com/cast/docs/overview https://developers.google.com/cast/docs/overview.

window.__onGCastApiAvailable = function(isAvailable){
    if(! isAvailable){
        return false;
    }

    var castContext = cast.framework.CastContext.getInstance();

    castContext.setOptions({
        autoJoinPolicy: chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED,
        receiverApplicationId: chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID
    });

    var stateChanged = cast.framework.CastContextEventType.CAST_STATE_CHANGED;
    castContext.addEventListener(stateChanged, function(event){
        var castSession = castContext.getCurrentSession();
        var media = new chrome.cast.media.MediaInfo('https://www.example.com/my-song.mp3', 'audio/mp3');
        var request = new chrome.cast.media.LoadRequest(media);

        castSession && castSession
            .loadMedia(request)
            .then(function(){
                console.log('Success');
            })
            .catch(function(error){
                console.log('Error: ' + error);
            });
    });
};

3. 包含 Google 的 Chromecast Javascript 客户端库

加载后,该 Javascript 客户端将调用步骤 #2 中定义的处理程序。

<script src='https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1'></script>

Note: the 铬铸 and 铸造框架API并非来自这个客户端库,而是来自Google Chrome本身......该框架内置于Google Chrome浏览器中。

Note:此示例演示如何将“默认媒体接收器”呈现到您的 Chromecast 设备。如果你想进一步定制你在 Chromecast 上看到的体验,你需要向 Google 注册,支付 5 美元,并做更多的工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为网站启用 Chromecast? 的相关文章

随机推荐

  • 矢量可绘制扭曲

    我有许多使用矢量绘图作为源的图像视图 对于大多数人来说 它是材质图标 但当我导入更复杂的矢量时 它在 Lollipop 设备上显示扭曲 但在 Jellybean 设备上显示得很好 这应该是系统 但显然有问题 Layout
  • 显示带有 html 内容的 smarty 变量

    我有一个 smarty 变量 其中包含 html 内容 如下所示 html strong Content strong br etc etc 我尝试以 html 格式显示它 当显示它像 html 仅显示纯文本 不带格式 我尝试像 html
  • 获取线程CPU使用率

    我有一组消耗 CPU 的执行 每个执行都在低优先级的线程中运行 这些线程将在一个进程 如 IIS 中运行 该进程有许多其他线程 我不想减慢它们的速度 我想计算所有其他线程的 cpu 使用率 如果它大于 50 那么我会暂停其中一个线程 如果它
  • 绘图大小 - 在 IPython Notebook 中使用 ggplot2(通过 rmagic)

    我已经开始将 R 的使用集成到 Notebook 中 从我的角度来看 这是为了两全其美 Python 中的数据管理 同时利用 R 的相对分析 图形优势 不幸的是 我沉迷于一个看似简单的元素 调整 ggplot2 图形的绘图大小 使用 pan
  • 对于不带任何参数的方法来说,显式生命周期有什么意义?

    第 295 页Rust 编程 http shop oreilly com product 0636920040385 do您可以找到以下内容 幸运的是 标准库包含了总体实现 impl lt a T U gt AsRef u for a T
  • 如何打乱键值对?

    我有一组值需要在需要时进行洗牌 我不知道哪种变量类型最适合我 数据实际上是基于key value结构的 比如 100 white 200 black 300 red 就这样 我想做的是根据我还不知道的某种算法来更改键值对 但是它们需要像这样
  • 正则表达式,将多个斜杠替换为一个

    这似乎是一个很容易解决的问题 但它并不像看起来那么容易 我在 PHP 中有这个字符串 postname 这是一个 URL 我不想连续出现多个斜杠 我从来不想完全删除斜线 它应该是这样的 postname 因为结构可能看起来不同 所以我认为我
  • Django ORM 在 Postgres DB 上留下空闲连接

    最近 我的 Django 应用程序由于数据库连接错误而频繁崩溃 OperationalError FATAL sorry too many clients already 当我进入应用程序数据库时 我看到确实有近 100 个打开的连接 所有
  • Powershell 在第一个特殊字符出现后删除文本

    这是我必须解析的值 8 2 4 151 65 HBAAPI I v1 3 3 29 02 我需要删除第一个实例之后的所有内容 包括第一个实例 所以我需要我的最终结果是8 2 4 151 65 s 8 2 4 151 65 HBAAPI I
  • 事件源 -> 服务器批量返回事件流而不是块返回

    我有一个 php 脚本 可以通过验证从 csv 文件导入大数据 为此 我需要向用户展示进度 我为此使用了事件流 当我回显某些内容时 我希望将其一一传输到客户端 而不是服务器批量发送整个输出 我已经尝试过 ob start ob implic
  • 底部图例,两行包裹在 r 中的 ggplot2 中

    library ggplot2 library scales library reshape2 Rdates lt c 2007 01 31 2007 02 28 2007 03 30 2007 04 30 2007 05 31 2007
  • 在 C# 中显示/隐藏主窗体

    我正在开发一个程序 单击 form1 上的按钮将打开 form2 然后我将隐藏 form1 直到 form2 关闭 我遇到的问题是 form2 关闭后无法显示 form1 有想法该怎么解决这个吗 try Form1 ActiveForm H
  • 如何解决 SQLite 数据库的错误路径?

    Overview 我添加了一些代码来将现有数据库复制到设备的本地文件夹 到目前为止第一个条件如果现有数据库尚不存在工作正常 Issue 但是 当执行将现有数据库从解决方案文件夹复制到设备文件夹的代码行时 我收到 SQLite 错误 该错误告
  • 如何使用 ASP Classic 获取当前虚拟目录的名称?

    如何使用 ASP Classic 获取当前虚拟目录的名称 在 ASP NET 中你可以使用Request ApplicationPath找到这个 例如 假设您有一个如下 URL http localhost virtual director
  • Google Tv 模拟器 AVD 系统映像

    您好 我正在尝试在我的 Windows 机器中设置 google tv 模拟器 我能够安装 api level 13 中提供的 google tv add on 但是当我尝试创建 AVD 时 它会抛出错误消息 请安装 intel x86 但
  • PostgreSQL 中表达式索引的实际限制

    我需要使用 HSTORE 类型和键索引来存储数据 CREATE INDEX ix product size ON product data gt Size INT CREATE INDEX ix product color ON produ
  • Python套接字不发送不接收

    我从 python 文档中复制了 echo 服务器示例 它工作正常 但是当我编辑代码时 它不会将数据发送回客户端 第二次调用 socket recv 方法时不会返回 import socket HOST PORT 50007 s socke
  • 如何建模“特色”的概念(即当一位艺术家在歌曲中“特色”时)

    有时 一首歌会有不止一位艺术家参与 例如 Jay z 的新歌 A Star is Born 以艺术家 Cole 为主角 因此在目录中将被列为 Jay z featuring Cole A Star is Born 我的问题是如何在我的数据库
  • cron 是用 php 编写基于提醒的应用程序的最佳方式吗?

    假设我有一个这样的数据库 task time Remind me to water plants 2018 02 18T19 32 10 486Z English Test 2018 10 8T09 30 00 000Z Math Test
  • 如何为网站启用 Chromecast?

    This article https support google com chromecast answer 3265953 hl en CA解释了 支持 Chromecast 的网站 的好处 更高的质量 支持 Chromecast 的网