h.264直播

时间:2013-01-15 13:46:27

标签: inputstream h.264 red5 flash-media-server wowza

经过几天的重新研究,我仍然迷失在这个问题上:

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

我想将我的网络摄像头现场直播到互联网上,再到Flash播放器等等。 我知道我必须使用Wowza,FMS或RED5。

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

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

谢谢

2 个答案:

答案 0 :(得分:0)

您有以下选项 -

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

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

  3. 将流转换为HLS,有基于闪存的HLS播放器。

答案 1 :(得分:0)

为什么我会问Flash,希望你知道HTML5视频标签现在直接接受h264编码的视频。