Red5流媒体服务器开发总结

Red5 是 支持Windows,Linux等多平台的RTMP流媒体服务器,最早属于谷歌下的开源项目,先已移植到Github,地址为https://github.com/Red5/red5-server 由于从安装到开发相关文档很少,于是需要有一定的开发经历才会流畅开发。

本文整个开发环境以及简单应用的开发主要参考
http://v.youku.com/v_show/id_XMTI2Mjc2NDc2NA==.html?from=y1.7-2

准备工作

开发环境配置
主要有两种方式:
1.集成开发环境
2.非集成开发环境

说明:解释起来就是将Eclipse,Flex,Red5 Plugin的等几个软件在Eclipse上搭建集成开发环境,或者不进行集成。这里主要介绍集成开发环境搭建,由于不集成只需要找到这几个软件单独下载安装,直接按照文档执行即可。不过本文最终采用的是非集成开发环境,主要原因是集成环境中一些不知名bug,这个跟具体的版本和PC的各种软件的版本有一定的关系。

集成开发环境搭建

  • 准备工具

    Eclipse
    http://www.eclipse.org/downloads/
    http://wiki.eclipse.org/Older_Versions_Of_Eclipse 使用java ee版本,版本问题这里后面会详细说
    Red5 plugin
    https://github.com/Red5/red5-eclipse-plugin ‘
    Flash builder
    Flash player debugger
    http://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/Adobe-Flash-Player-Debugger.shtml 这里注意一定要用debbuger版本的flashplayer

  • 单独安装备注

    Eclipse
    这个就是普通的安装步骤,而且基本上eclipse都处于绿色版的软件,所以下载配置workspace即可使用。这里要注意版本,red5 plugin对版本没有什么要求,但是flash builder集成要求eclipse只能是32位,并且最好用的版本是eclipse3.7版本,版本号是indigo。
    Java的jdk
    由于eclipse用的是32位ide于是java的jdk也要使用32位的,而且在开发的过程中由于一些调用red5的接口的时候会出现一些问题,于是需要用java较早的版本,建议使用Java SE Development Kit 7
    http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
    Flash builder
    Flash builder推荐使用4.6版本,破解方法参考
    http://blog.163.com/jiawei28888@126/blog/static/7997376920121084267329/ 推荐方法一,一切与序列号相关的破解方法都不是靠谱,改变配置文件才是王道。

  • 开发环境集成

    Red5 plugin
    安装方法详见github下载地址的readme文件,操作顺序一定要正确,不然会导致安装不成功。
    Flash builder
    嵌入到eclipse里面参见下
    http://jingyan.baidu.com/article/63f236280e4a740209ab3d4c.html
    其中一定要用32位的3.7或者3.6版本的eclipse并且地址要选对文件夹,而且这里面如果安装不上可能需要重启计算机,因为在flash player安装的时候就可能会出现说需要重启再安装的类似提示,具体原因不详。

  • 其他开发细节

    开发详见优酷的视频,其中开发顺序也要正确。
    开发自己的webapp的时候,要将red5目录下的lib内容所有的源压缩包复制到自己开发的webapp/WEB-IN/lib中,如果不复制会出现调用失败的问题。
    调用服务器的时候要保证之前的服务器配置可用。
    调用red5服务器的时候要保证之前曾在其他应用开启的服务器shut-down,不然会报5080端口不可用的错误。
    调试的时候要窗口点在java上启动服务器然后在对flex进行调试,要不然顺序错了会出现flex已经在调试的错误。

    非集成开发环境搭建

    只需要下载上述的几个软件的最新版即可然后进行搭建,而且就没有上述的关于jdk相关强制的32位的限制,也没有Eclipse的Indigo的版本限制。

HELLO WORLD

第一个程序开发往往是hello world,这个主要过程可以参照57code的最开始的视频教程,会介绍每步操作的作用,还算清晰。或者其他的关于编写helloworld的相关介绍也可以。
注意以下几点:

1.开发的时候要将red5服务器的jar复制到webapps\HelloRed5\WEB-INF\lib工程目录下面,一般是red5-server.jar或者lib /red5-server-common-xxx.jar,xxx是版本号。如果还是缺少包的话,就不妨把lib目录下的所有jar都复制到工程下。

2.用eclipse将服务器导入工程的时候,运行之前要将lib和class文件夹下除了你自己这个工程的jar以外其他所有的jar都删除。

3.每次改动都要先shutdown然后再debug,要不然会出现端口占用的问题。

4.与服务器连接的时候,rtmp地址务必写ip地址,就是主机也要127.0.0.1,绝对不能localhost,要不然会出现错误。

视频应用开发

  • 传统方法可以按照上面类似helloworld的方式来进行开发任何网页应用包括视频应用,但是在开发的时候本例没有成功,于是采用了更加直接的方式,直接复制oflaDemo工程的文件夹,然后修改,主要工作分为配置文件的修改和index网页的修改两部分,具体如下:
  • 配置文件:与之前类似不再赘述。
  • Index网页修改:还是html+css+js的构架。主要结构就是css标签,js函数,调用jwplayer(一款flash player)。

PS:

  • Css几种好用的框架参考
    http://www.php100.com/html/it/mobile/2014/0220/6563.html
  • jwplayer调用参考
    http://blog.csdn.net/tomysea/article/details/6685553

Red5流媒体服务器开发的更多相关文章

  1. Windows环境搭建Red5流媒体服务器指南

    Windows环境搭建Red5流媒体服务器指南 测试环境:Windows 7 一.   下载安装程序 red5-server 下载地址 https://github.com/Red5/red5-ser ...

  2. Windows环境搭建Red5流媒体服务器指南(转)

    Windows环境搭建Red5流媒体服务器指南 Windows环境搭建Red5流媒体服务器指南 测试环境:Windows 7 一.   下载安装程序 red5-server 下载地址 https:// ...

  3. Windows环境搭建Red5流媒体服务器

    Windows环境搭建Red5流媒体服务器指南 测试环境:Windows 7 一.   下载安装程序 red5-server 下载地址 https://github.com/Red5/red5-ser ...

  4. NodeJS版本EasyDarwin开源流媒体服务器开发心得

    title: Node版本EasyDarwin开发心得 date: 2018-03-27 22:46:15 tags: 年后着手Node版本EasyDarwin的开发工作,截止到今天2018年03月2 ...

  5. EasyDSS高性能流媒体服务器开发RTMP直播同步输出HLS(m3u8)录像功能实现时移回放的方案

    EasyDSS商用流媒体服务器解决方案是由EasyDarwin开源团队原班人马开发的一套集流媒体点播.转码与管理.直播.录像.检索.时移回看于一体的一套完整的商用流媒体服务器解决方案,支持RTMP推流 ...

  6. ubuntu16.04部署RED5流媒体服务器

    前提:jdk已经安装 1,下载RED5(https://github.com/Red5/red5-server/releases)选择red5-server-X.X.X-MXX.tar.gz 2,解压 ...

  7. 流媒体服务器开发笔记(2)--RTCP协议介绍

    http://blog.sina.com.cn/s/blog_53061af00100o2no.html ——————————————————————————————————————————————— ...

  8. 开源流媒体服务器--EasyDarwin

    欢迎加入我们的开源流媒体服务器项目:EasyDarwin, EasyDarwin是在Apple开源流媒体服务器Darwin Streaming Server(v6.0.3)基础上进行开发和维护的免费开 ...

  9. 基于 Red5 的流媒体服务器的搭建和应用

    http://www.ibm.com/developerworks/cn/opensource/os-cn-Red5/ Red5 是一个采用 Java 开发的开源免费 Flash 流媒体服务器.Red ...

随机推荐

  1. ng-repeat如何限制循环次数

    如果items 里有20条数据,如果你要循环 items, 只想循环5条 你可以这么做:   ng-repeat="item in items|limitTo:5"

  2. [已解决]报错: Version in docker-compose is unsupported

    docker compose将解析版本为"2",而不是"3.3".应该改为: version: "2"

  3. 【java】记录一下java的常用用法

    1.二维数组 public static void main(String[] args) { //定义 int a[][] = {{1,2,3},{4,5,6},{7,8,9}}; int [][] ...

  4. linux nohup python 后台运行无输出问题

    参考:https://blog.csdn.net/zj360202/article/details/78894512 nohup python test.py & nohup python t ...

  5. ERROR 1290 (HY000): Unknown error 1290

    如有需要可以加我Q群[308742428]大家一起讨论技术,提供有偿服务. 后面会不定时为大家更新文章,敬请期待. 喜欢的朋友可以关注下. 记录一次在连接数据库报的一个错误信息: 原因是MySQL正使 ...

  6. 微信小程序の模板

    一.什么是模板 模板顾名思义就是可以复用的代码块.减少编码工作量. 二.例子 <template name="templateTest"> <view>th ...

  7. vue filters 日期

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. 批量修改root密码

    公司有五十多台服务器.每台服务器中使用的密码完全不同,同时操作系统也不一样,centos5,6,7 .ubuntu,windows都有,更不用提其中各种小版本. root密码定期更改是一个大问题(wi ...

  9. mysql8.*忘记密码

    1.关闭mysql服务 2.打开cmd窗口,找到安装目录下的bin然后复制命令 mysqld --console --skip-grant-tables --shared-memory 3.再打开一个 ...

  10. Eclipse 安装Activiti插件

    建议使用vpn或其他翻墙手段安装(否则下载速度可能很慢) 我的博客中有介绍如何自己搭建属于自己的ssr,https://www.cnblogs.com/zktww/p/10839347.html(由于 ...