RTMP 协议的一个 Java 实现:Flazr

        Flazr 是 RTMP 协议的一个 Java 实现,这个项目提供了一个流媒体服务器和相关的工具类。
        特性 
        RTMP 流媒体服务器;
        支持视频点播,查找和暂停;
        发布 / 广播实况流;
        支持 FLV、F4V/MP4/H.264;
        RTMP 客户端:能够将本地文件发布到远程服务器; 
        提供负载/压力测试(包括第三方 RTMP 服务器);
        简洁紧凑(下载后小于 1.5 MB); 
        比较少依赖第三方包,设计用于嵌到其它应用程序中使用;
        易于安装,下载之后就可以运行。
        安装
        要求 Java 6 以上环境;
        下载 Flzar 二进制 ZIP 包: 项目下载区;
        将 ZIP 解压到你选定的地方。
        使用 Flazr 服务器
        打开命令行控制台并切换到 flazr 安装根目录;
        根据你的操作系统选择使用批处理文件 "server-start" 启动 Flzar 服务器;
        Flzar 目前只支持 FLV 和 F4V(H.264 avc1, mp4a) 格式;
        将需要流化的视频文件放到 flazr 安装根目录下的 home/apps/vod 文件夹;
        比如一个叫做 sample.flv 的文件可以在 rtmp://localhost/vod/sample 进行点播;

        可以用 Flex Builder 3 来验证 sample.flv 的点播效果,源码如下:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	<mx:Script>
        <![CDATA[
            [Bindable]
            private var TitleText:String = "<b>VideoDisplay Control:</b>" + "/n"  + "Use the buttons to control the video.";
        ]]>
    </mx:Script>
    <mx:VBox backgroundColor="0x323232" width="400" height="240" backgroundAlpha="1" horizontalAlign="center"
        borderThickness="4" borderColor="0x545454" cornerRadius="4" borderStyle="solid" paddingTop="5" >
 
        <mx:Text width="75%" color="0xffffff" textAlign="center"
           htmlText="{TitleText}"/><!--使用html方式显示标题-->
 
        <mx:VideoDisplay id="myVid" height="146" width="220" source="rtmp://localhost/vod/sample" autoPlay="false"/>
 
        <mx:HBox>
            <mx:Button label="Play" color="0x00000" click="myVid.play();"/><!--控制按钮-->
            <mx:Button label="Pause" color="0x00000" click="myVid.pause();"/>
            <mx:Button label="Stop" color="0x00000" click="myVid.stop();"/>
        </mx:HBox>
 
    </mx:VBox>
</mx:Application>

        而一个名为 sample.f4v 的文件可以通过 URL rtmp://localhost/vod/mp4:sample.f4v 进行访问;
        你可以在 flazr 安装根目录下的 conf/flazr.properties 文件中配置端口号。
        使用 Flazr 客户端
        发布一个本地文件到远程 RTMP 服务器: 发布;
        对一个远程 RTMP 服务器进行负载/压力测试: 负载测试。
        修改日志级别
        如果使用中碰到一些问题,可以通过修改日志级别以获取更多详细信息:
        在 flazr 安装根目录下的 conf/log4j.properties 的第一行里,将 "INFO" 改为 "DEBUG";
        重启服务器。
原文链接: http://sourceforge.net/apps/mediawiki/flazr/index.php?title=Main_Page。

你可能感兴趣的:(RTMP 协议的一个 Java 实现:Flazr)