2、应该使用exec_record_done配合record命令使用。即在录制结束之后自动对已录制的文件进行转码操作得到MP4文件。根据是否使用record_interval命令又有两种不同的情况。
2A、若不使用record_interval,则会在推流停止后(即record完全停止后)才进行转码,在这之前得不到任何输出
2B、若使用record_interval,即可设置每隔一段时间就重新开始录制,结合record_append on命令,可确保最后录制的视频都在一个文件中,否则就会给每段录制都生成一个单独的文件。使用这两个命令之后,转码也会相应地每隔一段时间就进行一次,但最后都输出(覆盖)到同一个文件中。优点是能近乎“实时”地进行转码,缺点是会重复调用ffmpeg,占用系统资源。
3、需要注意的是,以上两种方法最后得到的转码文件(的时长)是相同的。
4、nginx.conf配置示例
[html] view plain copy
application hls {
live on
hls on
record all
record_path /home/zhanghui/test
#record_interval 10s
#record_append on
hls_path /tmp/app
hls_fragment 5s
# convert recorded file to mp4 format
exec_record_done '/usr/local/bin/ffmpeg' -y -i /home/zhanghui/test/livestream.flv -vcodec libx264 -f mp4 /home/zhanghui/test/test_record.mp4 2>>/home/zhanghui/test/test_record.log
}
Nginx是一个高性能的Web和反向代理服务器,它具有有很多非常优越的特性:
作为负载均衡服务器 :Nginx既可以在内部直接支持Rails和PHP,也可以支持作为HTTP代
理服务器对外进行服务。Nginx用C编写,不论是系统资源开销还是CPU使用效率都比
Perlbal要好的多。
作为邮件代理服务器 :Nginx同时也是-一个非常优秀的邮件代理服务器(最早开发这个产品的目的之-也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。
Nginx安装非常的简单,配置文件非常简洁(还能够支持per语法),Bugs非 常少的服务器:
Nginx启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启
动。你还能够在不间断服务的情况下进行软件版本的升级。
处理静态文件,索引文件以及自动索引
反向代理加速(无缓存), 简单的负载均衡和容错
FastCGI,简单的负载均衡和容错
模块化的结构。过滤器包括gzipping, byte ranges, chunked responses,以及SSiI-ilter 。
在SSI过滤器中,到同一个proxy或者FastCGI的多个子请求并发处理
SSL和TLSSNI支持
使用外部HTTP认证服务器重定向用户到IMAP/POP3后端
使用外部HTTP认证服务器认证用户后连接重定向到内部的SMTP后端
认证方法:
POP3: POP3 USER/PASS, APOP, AUTH LOGIN PL AIN CRAM-MD5
IMAP: IMAP LOGIN
SMTP: AUTH LOGIN PLAIN CRAM-MD5
SSL支持
在IMAP和POP3模式下的STARTTLS和STLS支持
FreeBSD 3.x, 4.x, 5.x, 6.x i386FreeBSD 5.x, 6.x amd64
Linux2.2, 2.4, 2.6 i386Linux 2.6 amd64
Solaris 8 i386Solaris 9 i386 and sun4uSolaris 10 i386
MacOS X (10.4) PPC
一个主进程和多个工作进程。工作进程是单线程的,且不需要特殊授权即可运行
kqueue (FreeBSD 4.1+), epoll (Linux 2.6+), t signals (Linux 2.2.19+), /dev/poll (Solaris711/99+), select,以及poll支持
kqueue支持的不同功能包括EV_ _CLEAR, EV_ DISABLE (临时禁止事件),NOTE_ _LOWAT, EV_ EOF, 有效数据的数目,错误代码
sendfile (FreeBSD 3.1+), sendfile (Linux 2.2+), sendfile64 (Linux 2.4.21+),和sendfilev(Solaris 8 7/01+)支持
输入过滤(FreeBSD 4.1+)以及TCP_ _DEFER_ ACCEPT (Linux2.4+)支持
10,000 非活动的HTTP keep-alive连接仅需要2.5M内存。
最小化的数据拷贝操作
基于IP和名称的虚拟主机服务
Memcached的GET接口
支持keep-alive和管道连接
灵活简单的配置
重新配置和在线升级而无须中断客户的工作进程
可定制的访问日志,日志写入缓存,以及快捷的日志回卷
4xx-5xx错误代码重定向
基于PCRE的rewrite重写模块
基于客户端IP地址和HTTP基本认证的访问控制
PUT, DELETE,和MKCOL方法
支持FLV (Flash视频)
带宽限制
内嵌的perl
通过aio. read() 1 aio _write() 的套接字工作的实验模块,仅在FreeBSD下。
对线程的实验化支持,FreeBSD 4.x的实现基于rfork()
Nginx主要的英语站点是htp://sysoev.ru/en/
本人有自己整理大数据学习的功课,闲置着也无用了。
获取方式:
私信方式:
第一步,点击头像。
第二部:头像旁边有一个私信按钮,发送{学习资料}即可!
tvb的直播源制作方法:1、安装Nginx(简易服务器),Mac上安装命令brewinstallnginx-full--with-rtmp-module验证是够安装成功,执行nginx启动Nginx服务器。
2、安装ffmpeg(处理视频工具),Mac上安装命令brewinstallffmpeg,验证是否安装成功,输入命令ffmpeg。
3、配置Nginx(从而与ffmpeg配合实现推流),打开/usr/local/etc/nginx/nginx.conf文件,添加rtmp模块。
4、在server模块中增加路径,用于测试。
5、查看是否可以推流,停掉之前开启的nginxnginx-sstop,再重启nginx(因为修改了配置文件),将之前live-demo中的test.mp4模拟作为视频源,当成摄像头,进行视频采集即可。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)