gpt4 book ai didi

android - 使用 Android 将实时视频流传输到服务器

转载 作者:IT老高 更新时间:2023-10-28 21:52:30 28 4
gpt4 key购买 nike

我们必须使用 Android Camera 捕捉实时视频,并将它们发送到服务器,然后其他用户将通过浏览器或其他方式读取它们。

我在 SO 上进行了 Google 和搜索,并且有一些关于视频流应用的示例,例如:

1 安卓眼:https://github.com/Teaonly/android-eye

2 Spydroid-ipcamera:https://code.google.com/p/spydroid-ipcamera/

不过貌似环境不一样,大部分app都会启动一个HTTP server进行流式请求,然后客户端通过本地网络访问页面,看视频。

那么视频流源和服务器都是这样的设备: enter image description here

但我们需要这样的互联网支持: enter image description here

所以我想知道是否有任何替代的想法。

最佳答案

我可以看到您在第二张图中正确设计了三个阶段。

因此,您需要确定如何在这些协议(protocol)中进行选择以及如何连接它们。 没有人可以给你一个完整的解决方案,但我已经完成了一个关于 Android 视频流的企业项目,我会努力让你的视线朝着你的目标前进。

enter image description here

你的图片分三个部分,我从左到右详细说明:

1. 安卓流媒体设备

根据我的经验,我可以说 Android 可以通过 RTP 发送相机流,因为 native support ,而将您的视频转换为 FLV 让您头疼。 (在许多情况下,例如,如果稍后您想将流传送到 Android 设备上。)

所以我建议建立在 spyDroid 之类的基础上。 .

2. 流媒体服务器

有像 Wowza Server 这样的工具可以获取源流并将其放在服务器的输出上以供其他客户端使用。我猜VLC 也可以这样做,通过 File-->Stream 菜单,然后将来自基于 spyDroid 的应用程序的 RTSP 视频流地址。但是我有没有亲自尝试过。

实现自己的流媒体服务器也不是一件难事。

我给你举个例子:

要实现 HLS 服务器,您只需要三件事:

  1. 视频文件,分割成 10 秒的 MPEG2 block 。 (即 .ts 文件)
  2. block 的 m3U8 播放列表。
  3. 具有简单 WebService 的 Web 服务器,通过 HTTP 将播放列表传送给客户端(PC、Android、iPhone,主要是每台设备)。然后,客户端将查找播放列表文件并根据其相应的时间请求适当的 block 。因为几乎所有播放器都内置了 HLS 支持。

3. 客户端

根据我们的评论,我建议您可能想深入了解 Android 视频流。

要完成这么大的项目,您需要进行更多的研究。例如,您应该能够区分 RTP 和 RTSP,并了解它们之间的关系。

阅读我的回答 here了解最先进的视频流,请随时提出更多要求。

希望您能全面了解 future 的旅程,

祝你好运,玩得开心

关于android - 使用 Android 将实时视频流传输到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22245537/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com