问题标签 [exoplayer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1235 浏览

android - 如何使用 google android Exoplayer 对广告和视频使用单播放器

目前在给定的 exoplayer 演示应用中,谷歌正在使用两个 exoplayer 来播放广告和视频。我在播放前贴片广告和插播广告时遇到视频重叠问题。因此,为了避免这种情况,我只想使用一个 exoplayer 来播放广告和视频。有没有人尝试过使用单个 exoplayer?

0 投票
0 回答
1062 浏览

android - ExoPlayer 音频在视频之前开始

我们遇到了关于播放器的问题。

我们只播放 mp4 文件。

当互联网连接较低时,音频在视频之前开始播放,视频在 2-3 秒后开始播放。不存在同步问题,即视频出现时音视频同步。但是视频有延迟。

我们能做些什么呢?

0 投票
6 回答
33512 浏览

android - Exoplayer 播放 m3u8 文件 Android

在尝试了多种使用videoview 和 mediaplayer播放 m3u8 文件的方法后,我决定放弃。每次我播放 m3u8 文件时,我只听到声音。(请不要从堆栈溢出中写 url 来回答我的问题。我已经把它们都红了)一直在问,终于知道exoplayer可能是我正在寻找的那个. 然而 exoplayer 似乎是一个新手,我找不到任何合适的教程。据说我自己是一个新手,所有关于跟踪器和 blabla 的讨论对我来说似乎都太复杂了。我只想能够在我的应用程序中从不同的 url 打开我所有的 m3u8 文件,而不将它们传递给 vlc 或任何外部意图。

作为记录,我使用 KitKat 及更高版本。所以exoplayer应该是可以实现的。

所以我迫切要求的是一个简单的教程,说明我如何使用 exoplayer或任何其他显示视频和播放音频的方式播放我的 m3u8 文件而不仅仅是其中一个。请不要将我链接到google dev上的 exoplayer 页面。我也去过那里。

提前致谢 :)

0 投票
1 回答
1667 浏览

android - 使用 Android Exoplayer 调整 Dash 流音量

我正在尝试设置一个搜索栏来控制 exoplayer 流破折号实例的级别。

我正在使用的设置是演示项目的修改版本,并且无法确定我应该尝试使用搜索栏输出影响哪个元素,即如何正确使用 MSG_SET_VOLUME 等任何输入将不胜感激。

我正在寻找的最终结果是一个具有两个 exoplayer 实例的应用程序,两个实例都使用推子(seekbar)流式传输破折号内容,控制两个播放器的混合(一旦弄清楚,我认为如果数学正确的话应该很容易) 任何帮助都将不胜感激,到目前为止,我在 Exoplayer 上玩了一段时间,还是个新手!多谢你们!

0 投票
2 回答
6308 浏览

android - TextureView Android 上的矩阵缩放视频

我正在尝试使用ExoPlayeon播放视频TextureView。为了缩放和裁剪视频以适合视图,我使用矩阵。我的自定义视图扩展了“TextureView”这是我的代码:

我有一个矩形视图,效果很好。但是现在视图有两种状态:展开(仍然是矩形的旧视图)和折叠(高度更小。

所以现在视频在那些折叠的视图中垂直拉伸。

例如,我有视图1080x480和视频360x640,但看起来视频被缩放并裁剪到1080x1080而不是拉伸到1080x480.

我在这里做错了什么?

UPD:这里是截图: 在此处输入图像描述

0 投票
2 回答
1582 浏览

android - 使用 ExoPlayer 播放本地 aes128 cbc 加密的 mp3

我想知道最好的方法是用 ExoPlayer 播放本地 aes128-cbc 加密的 mp3 文件。有一个类 Aes128DataSource 似乎为此目的而存在,但我无法让 ExoPlayer 播放该文件。它总是返回 -1 作为轨道持续时间,这表明文件以某种方式损坏。由于日志中没有任何内容,因此没有太多关于错误的信息。mp3 只是无法播放。我猜该文件未正确解密。有人可以举例说明如何做到这一点吗?这是我所做的:

关键和四:

hexToBytes 函数将给定的键和 iv 从 hex String 转换为 byte[]:

这里是我播放加密文件的方法:

0 投票
3 回答
11594 浏览

android - 如何使用 exoplayer 流式传输 mp3 url?

Exoplayer 库对我来说似乎很复杂。谁能帮助我如何使用 exoplayer 库流式传输广播电台 url?我尝试使用 MediaPlayer ,它工作正常,但花了很多时间来准备。这是我尝试过的。

我不明白如何获取 userAgent 以及它的含义是什么?

0 投票
1 回答
8878 浏览

android - 使用搜索栏控制 Exoplayer 的音量

我正在尝试使用搜索栏控制在我的项目中流式传输 DASH 的 Exoplayer 实例的音量。我遇到的问题是我的渲染器和播放器在演示项目中的类之间分开。目前我的三个主要课程是我的 DashRendererBuilder 和 Player 和 Player 活动。我的 Player 活动中有我的搜索栏,我想知道如何在我的 PlayerActivity 中引用必要的播放器和渲染器以控制我的 Exoplayer 的音量。

从过去的问题中,我被告知

是我希望发送的最终消息,但是正如我所说的,由于所有内容都在类之间拆分,我在引用单个组件时遇到了麻烦。

理想情况下,我希望能够拥有两个带有搜索栏的 exoplayer 实例来控制两者的混合,这就是我的最终目标。

很高兴获得一些反馈或为这个问题指明正确的方向,因此非常感谢任何和所有帮助。非常感谢你们!

0 投票
1 回答
1522 浏览

android - ExoPlayer AudioTrack 口吃

我有我自己TrackRenderer集成的 mp3 解码器实现。当棒棒糖设备进入待机状态并返回时,它并不总是可重复的,但音频开始断断续续,直到我强制停止应用程序。

一开始,我以为是我实现的解码器,所以我尝试比较一个卡顿音轨和正常音轨之间的文件输出。这些文件是相同的,然后我想可能是解码时间太长,所以我增加了缓冲区大小并调用了setPlayReadyfalse,以便数据缓冲。它的口吃就像我没有停下来一样。我目前认为问题出在我的音轨实现或操作系统错误上。该错误仅发生在 Lollipop 设备上。

我的 TrackRenderer 使用与AudioTrackRenderer相同的工作流程,我自己的本机实现用于 mp3 解码器而不是 opus。

0 投票
1 回答
199 浏览

java - 动态确定 Exoplayer 中的音频容器

我正在尝试使用 ExtractorSampleSource 来提取不同的音频文件,有些是 .AAC,有些是 .M4A,有些是 .MP3。有没有办法在不解析 url 字符串的情况下动态确定哪个提取器(AdtsExtractor、Mp4Extractor、Mp3Extractor)?我不想解析字符串,因为有一些我无法控制的文本,并且不能保证 '.aac' 不会出现在文本中。