3924
- 收藏
- 点赞
- 分享
- 举报
red5 应用
http://www.OpenRed5.com
此文档描述应用程序如何才能从定制的目录取得需要的视频流(VOD),以及录制视频流到定制的目录中,而不是默认的在webapps/streams目录。
文件名生成器服务
Red5使用一个称为scope services
的概念,为一个确定的作用域提供此服务。其中一个scope服务是IStreamFilenameGenerator,它为要播放或录制的VOD流生成文件名。
定制生成器
要生成文件到不同的文件夹,一个新的文件名生成器必须实现:
import org.red5.server.api.IScope;
import org.red5.server.api.stream.IStreamFilenameGenerator;
public class CustomFilenameGenerator implements IStreamFilenameGenerator {
/** 将存储已录制视频的路径 */
public String recordPath = "recordedStreams/";
/** 容纳VOD流的路径 */
public String playbackPath = "videoStreams/";
public String generateFilename(IScope scope, String name,
GenerationType type) {
// 生成没有扩展名的文件名
return generateFilename(scope, name, null, type);
}
public String generateFilename(IScope scope, String name,
String extension, GenerationType type) {
String filename;
if (type == GenerationType.RECORD)
filename = recordPath + name;
else
filename = playbackPath + name;
if (extension != null)
// 添加扩展名
filename += extension;
return filename;
}
}
上面的类会为已录制流生成文件名,如recordedStreams/red5RecordDemo1234.flv
,为所有的VOD流使用videoStreams
为源路径文件夹。
激活定制生成器
下一步,定制生成器必须在目标程序的控制文件中被激活。(译注:就是需要编辑配置文件,将此定制生成器加入到程序中)
加入下面的定义到yourApp/WEB-INF/red5-web.xml
<bean id="streamFilenameGenerator"
class="path.to.your.CustomFilenameGenerator" />
这样就会使用上面定义的类来生成流文件名。
通过配置更改路径
当这里描述的类正常的工作,它就不便于在代码中修改路径,它的每次改变都需要重新编译类。
所有你可以通过配置文件中的参数来设定路径。
加入两个方法到你的类中,它将在配置文件被解析时执行。
public void setRecordPath(String path) {
recordPath = path;
}
public void setPlaybackPath(String path) {
playbackPath = path;
}
现在你可以在类定义中设置路径了。
<bean id="streamFilenameGenerator"
class="path.to.your.CustomFilenameGenerator">
<property name="recordPath" value="recordedStreams/" />
<property name="playbackPath" value="videoStreams/" />
</bean>
你也可以将路径的设定移到yourApp/WEB-INF/red5-web.properties
文件中,然后使用参数来访问它们。
<bean id="streamFilenameGenerator"
class="path.to.your.CustomFilenameGenerator">
<property name="recordPath" value="${recordPath}" />
<property name="playbackPath" value="${playbackPath}" />
</bean>
这样,你需要在属性文件中加入下面的内容:
recordPath=recordedStreams/
playbackPath=videoStreams/
API参考:org.red5.server.api.stream.IStreamFilenameGenerator
我来回答
回答0个
时间排序
认可量排序
暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2014-12-03 17:17:06
-
2014-10-22 11:01:40
-
2014-10-22 11:14:46
-
642014-10-22 11:23:30
-
2016-01-05 19:53:18
-
2014-12-03 17:15:20
-
2016-01-30 14:36:47
-
2014-12-08 08:44:14
-
2016-07-12 16:28:27
-
2016-03-16 20:48:25
-
2016-08-01 21:17:14
-
2016-03-31 17:59:11
-
2016-08-24 09:25:17
-
2016-09-05 22:17:40
-
2016-09-01 20:34:12
-
2016-09-05 22:05:23
-
2016-09-01 20:37:05
-
12018-07-06 16:07:15
-
02013-06-28 20:55:18
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认