在应用程序中使用 exoplayer 库播放 YouTube 视频

2024-01-06

我已经使用 exoplayer 库在我的应用程序中播放视频。但我无法使用 exoplayer 播放 youtube 视频链接。

我遇到以下异常:

ExoPlayerImplInternal:源错误。 com.google.android.exoplayer2.source.UnrecognizedInputFormatException: 没有可用的提取器(MatroskaExtractor、 FragmentedMp4Extractor、Mp4Extractor、Mp3Extractor、AdtsExtractor、 Ac3Extractor、TsExtractor、FlvExtractor、OggExtractor、PsExtractor、 WavExtractor)可以读取流。

我对此进行了搜索,但我得到了使用 youtube android 播放器 API 的建议。但是如果我们不想使用youtube API。 如果有人知道仅使用 exolayer 播放 YouTube 视频的其他选项,请在此处回答。


无法获取 YouTube 视频的直接链接以供 ExoPlayer 播放。

  • YouTube 的 Android Player API 是在 Android 应用程序中播放 YouTube 视频的官方支持方式。

  • 不幸的是听到需要使用不同的播放器来播放 YouTube 视频。这很讽刺,因为 youtube 应用程序在内部使用 ExoPlayer。

  • Hope Google/Youtube 避免了此类重复工作。 YoutubeMediaSource 将使开发人员不必熟悉另一个媒体播放器 API。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在应用程序中使用 exoplayer 库播放 YouTube 视频 的相关文章

随机推荐

  • SecTrustEvaluate 在 iOS 5 上返回 kSecTrustResultRecoverableTrustFailure

    在有报道称该应用程序无法与 Beta 版一起使用后 我必须将其更新到 iOS5 问题归咎于我们的自定义 SSL 证书验证不再起作用 在 didReceiveAuthenticationChallenge 部分中 我们获取根证书并调用 Sec
  • 如何在 Spyder 窗口中获取大数据帧的最后一条记录?

    我希望能够在 Spyder Python IDE 窗口中打开一个数据框 并快速向下滚动到相对较大的 pandas 数据框的最后一条记录 表中有 134 890 条记录 这是令人沮丧的 因为 Spyder 只从大表中加载一定数量的记录 并且向
  • 如何在量角器中发送键盘按键(如 TAB)

    我需要选择一个元素 向其发送值 按 Tab 键 然后发送新值 我可以选择元素并向其发送值 但无法从键盘发送 TAB 然后发送新值 我首先使用 ptor 但后来它已被废弃 我现在尝试使用 browser key 做同样的事情 但它对我不起作用
  • 错误:摘要已在进行中

    我有以下错误 错误 rootScope inprog digest 已在进行中http errors angularjs org 1 2 16 http errors angularjs org 1 2 16 rootScope inpro
  • Python:允许调用未明确定义的方法 ala __getattr__

    我正在尝试编写一个能够执行以下操作的 Python 类 c MyClass a c A a name for A Calls internally c create A a name for A b c B a name for B Cal
  • 通过 https 发送敏感数据的安全性如何?

    SSL 是否足够安全 可以在查询字符串中使用敏感数据 例如密码 是否有任何额外的选项可以实施 SSL 提供安全的传输级安全 客户端和服务器之间的任何人都不应能够读取该信息 But你应该改变在查询字符串中写入敏感数据的想法 它将显示在浏览器的
  • Raspberry Pi 上的 Python 无限循环内的用户输入在多次点击时会丢失输入

    我有一个非常基本的parrot用 Python 编写的脚本 仅提示用户输入并在无限循环内将其打印回来 Raspberry Pi 配有一个用于输入的 USB 条形码扫描仪 while True barcode raw input Scan b
  • 自定义 TableView 单元格内容在 ios 9 xcode 7 上不可见

    iOS 9 的升级似乎破坏了我所有的自定义 uitableviewcell 它们只显示具有正确高度的 tableviewcell 但其中的所有元素都丢失了 该布局在 iOS 8 和 iOS 7 设备上完美运行 Here s a screen
  • java中如何检查字符串是否为空?

    如何在java中检查字符串是否为空 我在用 stringname equalsignorecase null 但它不起作用 string null比较对象是否为空 string equals foo 比较该对象内部的值 string foo
  • Eclipse web.xml 引用文件错误

    我在 Eclipse 中导入了一个项目作为 Maven 项目 我将 Web 应用程序版本从 2 5 升级到 3 1 因为它是作为 Dynamic Web Module 3 1 导入的 现在我收到以下错误 通过文件 web xml 验证文件
  • 如何从 Vala 编译器生成 GIR 文件?

    我正在尝试使用 pygi 和 gobject introspection 创建到 vala 库的 python 绑定 但是 我在生成 GIR 文件时遇到问题 我计划随后将其编译为 typelib 文件 根据文档 valac 应该支持生成 G
  • Git-svn W: -empty_dir 警告。他们的意思是什么?

    在尝试使用标准布局使用 git svn 克隆现有 Subversion 存储库时 我得到了一堆W empty dir and W empty dir 警告 克隆的 git 存储库似乎正在工作 即我可以执行常规的 git 操作并提交到 SVN
  • 在 Eclipse 中将 Android 项目转换为“常规”Java 项目?

    我继承了一些最初作为 Android 项目的代码 但实际上只是供其他应用程序使用的 API 因此 构建 过程通常只生成一个 JAR 文件 我遇到的问题是 我的控制台中的 Android 构建工具出现错误 每次我对某些文件进行更改时 这些错误
  • Word2vec - 获取相似度排名

    鉴于我有一个 word2vec 模型 由 gensim 提供 我想获得单词之间的排名相似度 例如 假设我有 desk 这个词 与 desk 最相似的词是 表0 64 椅子0 61 预订 0 59 铅笔0 52 我想创建一个函数 f 桌子 书
  • Simulink - 每 30 秒输出 1,否则输出 0

    我需要一个需要每隔 30 秒或略超过 30 秒输出 1 的子系统 用matlab代码编写它应该像这样工作 function y fcn time uplinkTimeInterval codegen persistent lastTrigg
  • mod_rewrite 中的正则表达式匹配不以 this OR that 结尾的 URL

    这个的正则表达式是什么 匹配 if 字符串 NOT 结束于 php或结束于 html或包含 谢谢你 编辑 我需要NOT部分是因为该表达式将用于 Apache mod 重写 因为我无法更改的逻辑mod rewrite以避免NOT 编辑 我最初
  • 如何解决读取日历或发送邮件时 Microsoft Graph 返回“NoPermissionsInAccessToken”的问题

    在我们部门内 我们有一个经典 ASP 网站 该网站一直使用我们的公司 Google 帐户进行身份验证并将事件插入我们的 Google 日历 该组织刚刚从 Google 切换到 Office 365 我尝试将代码切换为使用 Outlook 但
  • 使用 addNA() 后查找 NA 值

    我有一个包含一堆分类变量的数据框 其中一些包含 NA 我使用addNA函数将它们转换为显式因子水平 当我尝试将它们视为 NA 时 我的问题就出现了 它们似乎没有注册 这是我的示例数据集并尝试 查找 NA df1 lt data frame
  • 在android上模拟鼠标输入

    想象一下 我有一个从蓝牙设备接收坐标的服务 现在我想在鼠标光标移动时显示它 我设法使用 toolType TOOL TYPE MOUSE 发送 MotionEvents 但我没有在屏幕上显示本机 Android 鼠标光标 我发送的事件如下所
  • 在应用程序中使用 exoplayer 库播放 YouTube 视频

    我已经使用 exoplayer 库在我的应用程序中播放视频 但我无法使用 exoplayer 播放 youtube 视频链接 我遇到以下异常 ExoPlayerImplInternal 源错误 com google android exop