Red5文件结构简介

Red5 是 支持Windows,Linux等多平台的RTMP流媒体服务器,最早属于谷歌下的开源项目,先已移植到Github,地址为https://github.com/Red5/red5-server 由于从安装到开发相关文档很少,于是需要有一定的开发经历才会流畅开发。
本文主要介绍一下Red5的文件结构,而且是基于red5-server-1.0.6-RELEASE版本介绍的,之前的很多介绍都是基于老版本,导致一些文件在更新的时候淘汰掉了,如曾经的doc文件早就淘汰了。

一级结构

如上图所示为一级结构的文件夹,具体如下:
conf:Red5服务器的相关配置文件。
lib:自带或者添加的库文件,jar文件。
log:日志记录文件。
plugin:安装的插件的相关文件,主要是库jar文件。
tomcat.8080:空文件,含义为你配置Red5的端口为8080。
webapps重点文件夹,为你服务器所包含的应用的文件夹。
work:目前服务器工作下的不同ip的挂载应用配置。

下面的bat类型文件为在Windows下运行的脚本,sh为Linux运行的脚本,功能一目了然,red5.xx为运行服务器脚本,red5-debug.xx为debug版本,red5-shutdown.xx为关闭服务器的脚本。

二级结构

主要围绕webapps这个文件夹介绍,因为在进行自己应用开发的时候,这个文件是最重要的。

上图中每个文件夹都是一个应用单独的文件夹。其中chat、install、live、root、vod都是Red5软件中自带的,oflaDemo也是官方提供的Demo,但是要自己进行下载然后复制到这个webapps文件目录下即可使用(有些来源oflaDemo之中的配置文件需要改动,具体下面说)。

主要根据oflaDemo的文件夹来介绍

META-INF:相当于一个信息包,目录中的文件和目录获得Java 2平台的认可与解释,用来配置应用程序、扩展程序、类加载器和服务。manifest.mf文件,在用jar打包时自动生成。
persistence:空文件夹不用管
streams:存放视频文件。
WEB-INF:网络参数配置文件。
index.html为应用入口网页界面。
jwplayer为使用的flash播放器,具体使用可以查看官网。
player.swf为Demo自带的封装好的一下flash开发的接口

WEB-INF

文件夹中的内容,lib,classes都是不需要手动改的,这部分的开发主要见博主另一篇博客
http://www.cnblogs.com/zbwustc/p/5851356.html
手动改的主要是下面三个中的文件,

red5-web.properties

  • webapp.contextPath 应用目录
  • webapp.virtualHosts 服务器ip地址,可以多个

    red5-web.xml

上下文context和范围scope需要修改成你应用相关,这个要看上面具体开发那部分。

web.xml

图中部分为修改的应用文件目录。

本文简要介绍了上述几个配置文件需要修改的部分,具体修改和开发见另一篇博文。

Red5文件结构简介的更多相关文章

  1. 巡风代码架构简介以及Flask的项目文件结构简介

    一.巡风: 巡风是一款什么东西,想必安全同行都不陌生吧.用它作为内网漏洞扫描管理架构是一种很好的选择,扫描快,开源,还可自己编写符合规则的POC直接放入相应目录来扩展.今天下午趁着有点时间捋了一下巡风 ...

  2. Class类文件结构简介

    Java跨平台的基础 各种不同平台的虚拟机与所有平台都统一使用的程序存储格式——字节码(ByteCode)是构成平台无关性的基石,也是语言无关性的基础.Java虚拟机不和包括Java在内的任何语言绑定 ...

  3. Delphi ini文件结构简介

    一.INI文件的结构:; 注释[小节名]关键字=值 INI文件允许有多个小节,每个小节又允许有多个关键字, “=”后面是该关键字的值. 值的类型有三种:字符串.整型数值和布尔值.其中字符串存贮在INI ...

  4. Class文件结构全面解析(上)

    什么是Class文件? 在Java刚刚诞生的时候就提出了一个非常著名的口号:"一次编写,到处运行.(Write Once,Run Anywhere)".为了实现平台无关性,各种不同 ...

  5. [转载] 深入理解Android之Java虚拟机Dalvik

    本文转载自: http://blog.csdn.net/innost/article/details/50377905 一.背景 这个选题很大,但并不是一开始就有这么高大上的追求.最初之时,只是源于对 ...

  6. 使用C#开发pdf阅读器初探(基于WPF,没有使用开源库)

    前言 pdf是最流行的版式格式文件标准,已成为国际标准.pdf相关的开源软件非常多,也基本能满足日常需要了.相关商业软件更是林林总总,几乎应有尽有!似乎没必要自己再独立自主开发!但,本人基于以下考虑, ...

  7. linux 文件系统简介

    linux文件系统简介   文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基 ...

  8. html5快速入门(一)—— html简介

    前言: 1.HTML5的发展非常迅速,可以说已经是前端开发人员的标配,在电商类型的APP中更是运用广泛,这个系列的文章是本人自己整理,尽量将开发中不常用到的剔除,将经常使用的拿出来,使需要的朋友能够真 ...

  9. kafka入门:简介、使用场景、设计原理、主要配置及集群搭建(转)

    问题导读: 1.zookeeper在kafka的作用是什么? 2.kafka中几乎不允许对消息进行"随机读写"的原因是什么? 3.kafka集群consumer和producer状 ...

随机推荐

  1. constructor prototype __proto__

    什么是对象 若干属性的集合 什么是原型? 原型是一个对象,其他对象可以通过它实现继承. 哪些对象有原型? 所有的对象在默认情况下都有一个原型,因为原型本身也是对象,所以每个原型自身又有一个原型(只有一 ...

  2. openface人脸识别框架

    openface的githup文档地址:http://cmusatyalab.github.io/openface/ openface的安装: 官方推荐用docker来安装openface,这样方便快 ...

  3. Flask配置方法

    flask应用的配置(使用uWSGI和Nginx在CentOS 7上搭建) 基础的Nginx 数据库等配置省略 创建python虚拟环境 sudo pip install virtualenv mkd ...

  4. 转载:Think in AngularJS:对比jQuery和AngularJS的不同思维模式(大漠穷秋)

    导言 stackoverflow上有一个人问了一个问题:如果我有jQuery背景,我应该如何切换到AngularJS的思维模式? 有一个回复非常经典,获得了两千多票. 为了让国内开发者也能领略到其中的 ...

  5. jvm加载包名和类名相同的类的规则,以及如何加载包名和类名相同的类(转)

    jvm包括三种类加载器: 第一种:bootstrap classloader:加载java的核心类. 第二种:extension classloader:负责加载jre的扩展目录中的jar包. 第三种 ...

  6. java一个数组的内存图

  7. 力扣 — Rotate List()

    题目描述: 中文: 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = ...

  8. githup上传项目到仓库

    1.有了自己的账号 2.创建一个新的项目,填写项目名称,描述 填写完成点击create repository 3.复制生成的https链接接下来用到 4.进入到你的项目所在目录右键git bash打开 ...

  9. 通过cmd命令启动appium server,appium server安装过程

    电脑上已安装了appium desktop版,想在移动端自动化的过程中,通过脚本启动appium server,环境准备: 1.确保电脑安装了node.js,目前用的是node12 2.安装JDK,且 ...

  10. 51单片机PC程序计数器

    PC是一个16位的计数器.用于存放和指示下一条要执行的指令的地址.寻址范围达64KB.PC有自动加1功能,以实现程序的顺序执行.PC没有地址,是不可寻址的,无法用指令对它进行读写.但在执行转移.调用. ...