如何在 Android 和 iOS 中缓冲和播放视频,例如 Netflix 和 Iflix

How to buffer and play video in a Android and iOS like Netflix and Iflix

我需要开发 Android 和 iOS 移动应用程序,让订阅者可以像 Netflix 和 Iflix 那样观看电影。

我想知道这是否可以通过 Android 和 iOS 平台上的内置视频播放 类 或小部件来实现,或者我们是否需要库或 SDK为此。

我遇到了关于如何在 Android 应用程序中流式传输视频的 URL。这种方法是否足以满足此要求?

https://code.tutsplus.com/tutorials/streaming-video-in-android-apps--cms-19888

Netflix 和类似系统使用 ABR 将视频传送到移动设备 - ABR 允许客户端设备或播放器分块下载视频,例如 10 秒的块,并且 select 比特率最高的下一个块适合当前的网络条件。示例见此处:

有几种 ABR 协议,但目前最常见的两种是 HLS 和 DASH。由于 Apple 指南(目前,对于可以在移动网络上访问的超过 10 分钟的视频 - 指南可能会随着时间的推移而改变),必须使用 HLS 将视频流传送到 iOS 设备,而 DASH 可能是在 Android 设备上更常见,尽管 Android 也可以支持 HLS。

大多数 Android 播放器现在可以处理 ABR - Android Exoplayer 是一个很好的例子,使用得很好并且原生支持:

查看开发人员指南(在撰写本文时包含在上面的 link 中),其中介绍了如何在您的应用中包含 ExoPlayer。

在 iOS 上,本机播放器支持使用 HLS 的 ABR。