0

经过几天的研究,我仍然迷失了这个问题:

我有一个通过 WiFi 连接到我的 Android 设备的网络摄像头。我编写了一个 Android 应用程序来连接到网络摄像头的指定 Socket(IP 和端口)。从这个 Socket 我得到一个已经用 H.264 编码的 InputStream。然后我将此 InputStream 从 android 设备重定向到我的服务器,在那里我设法使用 Xuggler 将其解码为图像/帧。

我想将我的网络摄像头直播到互联网到 Flash 播放器或其他东西。我知道我必须为此使用 Wowza、FMS 或 RED5。

我的问题是,我不明白如何处理我拥有的 InputStream。我读过的所有示例都需要一个 mp4/flv 或其他容器文件来流式传输……但我有一个连续的实时 InputStream。其他一些示例考虑使用 Flash 编码器。但是我的 InputStream 已经用 H.264 编码了。

这是一个普遍的理解问题。请告诉我如何解决这个问题。

谢谢

4

2 回答 2

0

why flash if I may ask, hope you know that HTML5 video tag now directly accepts h264 encoded videos.

于 2013-03-02T02:01:48.447 回答
0

您有以下选择 -

  1. 在 flv 容器中编码。是的,您可以使用 flv 容器传输实时流。您可以将标题中的“持续时间”字段设置为任意长度。例如 youtube 使用这个技巧进行直播。

  2. 您可以将流编码为 RTMP。ffmpeg 有可用于理解的 rtmp 代码,或者我相信还有其他可用的开源 rtmp 多路复用器。

  3. 将流转换为 HLS,有基于 Flash 的 HLS 播放器可用。

于 2013-01-15T14:03:22.303 回答