2011-04-06 210 views

回答

3

查看Amazon EC2的流媒体服务CloudFront。如果您试图将内容分发到大量客户端,那么弹性云会以成本方式威胁任何其他实现,并且可以在Java中轻松进行操作。

http://aws.amazon.com/cloudfront/

他们对开发商非常有用的文档,以及内容交付,可以轻松地击败建立一个内部解决方案的成本极其合理的定价。

+0

我不知道这是免费还是付费? – AbhimanyuAryan 2016-01-04 14:44:14

19

Xuggler是一个不错的开源Java库,用于处理流媒体和即时修改媒体。

http://www.xuggle.com/xuggler/

您可以用Red5的使用它,或者如果你想完全控制,Xuggler具有其中每个实例可以被设置成流媒体或缩小的IContainer类。我已经能够通过UDP和TCP/IP来缓存媒体。另外,Xuggler会自动分割各种流,供您分析/修改(视频,音频,元数据),并使用FFMPEG(开箱即用的编解码器吨)=)构建。

+3

你可以给我看一个例子来从java和xuggler中流式传输视频(rtsp,http),而不使用red5吗?谢谢! – javment 2012-10-02 08:24:08

+0

@Teddy Yueh - 我也很喜欢这个没有使用red5的例子 – Grammin 2012-10-02 15:12:43

+0

现在我没有太多时间,但可以给你一些指示。使用IContainer出局。至于流,你可以传入一个ByteArrayOutputStream并为它保留一个句柄。当你写数据包到IContainer时,你的ByteArrayOutputStream将被填充,所以在写完每个数据包之后,刷新IContainer,然后将这些字节传递给DatagramPacket(如果你想使用UDP)。如果您想要TCP/IP,就像将Socket的OutputStream传递给IContainer一样简单。在任何协议中,你只需要访问字节。如果您使用ByteArrayOutputStream,请不要忘记在每次拉出后清除它。 – 2012-10-13 18:19:21

5

如果您觉得喜欢冒险,其他可能性是我非常新的,闪亮的基于WebM的实时流媒体服务器,stream.m。它是GPL许可的,提供完整的源代码。您可以使用支持HTML5的浏览器作为客户端。

服务器端还没有录制功能,但您可以通过上千种方式在广播端保存数据流。