iXcol 发布的文章
网络电视接收服务器配置步骤
接收服务器配置步骤
服务器:Centos 8核心+8G内存+50G硬盘
服务配置:nginx+rtmp+ffpmeg
1、升级系统
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Centos7
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
Centos6
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
2、安装nginx
cd
mkdir source #创建源码目录 后面的源码都放在这个目录
cd source
yum -y install git #安装git
git clone https://github.com/nginx/nginx.git #从github服务器上将nginx的源代码下载下来
git clone https://github.com/arut/nginx-rtmp-module.git #将rtmp模块的源码下载下来
下载依赖模块
rpm -qa|grep 模块名字 #查询安装的模块的包信息
wget https://www.openssl.org/source/openssl-1.1.0.tar.gz #下载OpenSSL源码包
wget https://ftp.pcre.org/pub/pcre/pcre-8.39.tar.gz #下载pcre源码包
wget http://www.zlib.net/zlib-1.2.11.tar.gz #下载zlib包源码
tar -zxvf 包名 #解压各个包源码
添加nginx设置文件
cd
cd source
cd nginx
vi config.sh
添加如下内容
./auto/configure --prefix=/usr/local/nginx \
--with-pcre=../pcre-8.39 \
--with-openssl=../openssl-1.1.0 \
--with-zlib=../zlib-1.2.11 \
--with-http_v2_module \
--with-http_flv_module \
--with-http_mp4_module \
--add-module=../nginx-rtmp-module/
保存后给文件赋予操作权限,再执行
chmod 777 config.sh #赋予权限
./config.sh #执行脚本
安装依赖
yum -y install gcc #确保依赖的gcc安装
yum -y install gcc-c++ #确保依赖的c++已经安装
make #编译
vi #安装
放行80端口
安装iptables
yum install iptables-services
放行端口
iptables -I INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT #放行8084端口的 NEW状态请求(本机的RELATED,ESTABLISHED状态是默认放行的)
service iptables save #保存规则
service iptables restart #重启防火墙保证新的规则加载进来
测试nginx是否安装成功
打开ip:port,默认80,测试网站是否可以浏览
7\配置rtmp
在nginx配置文件中配置rtmp服务,记住rtmp服务是和http服务是平级的,所以我们需要在和http配置平级的位置另起rtmp服务
vi /usr/local/nginx/conf/nginx.conf #修改配置文件
在配置文件末尾加入以下内容(括号嵌套切记不要弄混)
rtmp config rtmp {
server { listen 1935; chunk_size 4096; application live { live on; record off; } application live2 { live on; record off; } application vod { play /var/flvs; } application vod_http { play http://服务器的ip/vod; } application hls { live on; hls on; hls_path /tmp/hls; } } }
/usr/local/nginx/sbin/nginx -s reload #修改配置文件重启nginx服务
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
8\测试rtmp端口是否通
端口放行需要有三个条件,1.云服务的安全组放行;2.防火墙iptables放行;3.服务本身放行
添加1935端口
iptables -I INPUT -p tcp -m state --state NEW --dport 1935 -j ACCEPT #放行1935端口的 NEW状态请求
service iptables save #保存规则
service iptables restart #重启防火墙保证新的规则加载进来
由于nginx服务我们已经配置过1935端口,所以是放行状态的,我们可以在windows本地使用telnet 命令测试端口是否通
至此,接收服务器配置完成。
最近因为工作的缘故,为单位配置了网络电视直播平台,之间查阅了很多资料。现网络直播平台已经可以正常转播电视,也可在线转播网络课程。把之前的配置步骤放在这里,做个存档吧。
推送服务器
8核、4G以上内存、50G硬盘、系统Centos 6或7
一.FFMPEG编译安装
http://trac.ffmpeg.org/wiki/CompilationGuide/Centos
二.FFMPEG自动安装
1.升级系统
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
2.安装Nux Dextop Yum 源
Centos7
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
Centos6
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
3.安装FFmpeg 和 FFmpeg开发包
sudo yum install ffmpeg ffmpeg-devel -y
4.测试是否安装
ffmpeg
2 服务器定时执行任务
为了服务器可以推送多线视频,需要使用crontab定时器来执行多线程任务。
crontab -e
添加内容模板:
*/1 * * * * ffmpeg -re -analyzeduration 8000 -probesize 200000 -i 源ip -strict -2 -c:v copy -c:a aac -bsf:a aac_adtstoasc -f flv rtmp://接收ip:1935/hls/ahtvhd
另外为了服务器稳定允许,在每天的固定时间重启ffmpeg,并且每周重新一次服务器。
30 0,7,15 * * * pgrep ffmpeg && killall -9 ffmpeg
0 4 * * 1,5 reboot
添加完任务后,需要重启crontab
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配
crontab -l 列出当前的crontab任务
crontab -r 删除当前的crontab任务
crontab -e (solaris5.8上面是 crontab -r) 编辑一个crontab任务,ctrl_D结束
三.推送服务器日志文件过大解决
一、解决邮件发送到:
vi /etc/crontab;将MAILTO=root修改为MAILTO="",:wq保存。
/etc/init.d/crond restart 重启计划任务使其生效
二、删除maildrop下大量的垃圾邮件:
find /var/spool/postfix/maildrop/ -type f |xargs rm -rf
rm /var/spool/mail/root
三、以上方法还是不行,那只能采用定时计划了删除maildrop下的文件了。
1、先建立a.sh文件,内容如下
#!/bin/sh`
cd /var/spool/postfix/maildrop; ls | xargs rm -rf;
(该脚本程序路径默认应该在root跟目录下,也就是绝对路径为 /home/a.sh)
2、chmod +x 对脚本文件添加执行权限,否则不能执行
3、vi /etc/crontab #编辑配置文件,在最后一行添加内容
* */3 * * * root sh /root/a.sh 表示每隔3个小时执行一次
4、重启计划任务
service crond restart
提到HIFI字眼,有一个人的名字会马上在你的脑海里浮现,那个人就是蔡琴。那首《渡口》,已经成为试机必备的曲目,还有《无间道》电影里面出现的那首《被遗忘的时光》,成了无数人喜欢蔡琴的原因。其实我个人更喜欢她的这张《机遇.淡水小镇》,淡淡的钢琴声,时而低吟,时而清亮的嗓音,仿佛就在你耳边一样轻轻述说着淡水镇爱的故事。
在此张像散文诗般优美、如水墨画般清雅的音乐剧原声唱片——《淡水小镇》中,蔡琴柔美的哦吟配上大段的内心独白,于朴素宁谧中抒发出一个平凡女性对人世红尘的恋恋真情,静静听来如空气中飘洒的阵阵茉莉花香,美得让人魂飞魄散!有人说这张唱片像是乔治·云斯顿作品的中文演唱版,因为整张唱片中与蔡琴相伴的,绝大部分是如水中倒影般的钢琴弹奏。
你有没有认真量过自己与心灵之间的距离?你有没有算过烦恼与希望之间有多远?如果你想用尺度、金钱去度量它们,最后只会离自己越来越远,并且越来越失望、烦恼!
偏偏人常说的“改变”都存在于“一念之间”,不是吗?什么是那“一念”呢?我曾经静下心去认出它来,它,竟然有旋律,一种有旋律的心情出现时,它就几乎是一首诗了,而当下,你已经要成为一个诗人了。不要对自己说你不会作诗,诗从来没有属于诗人过,它一直属于有诗心情的聆听者。
十几年前在作广播节目时,接触到美国、法国、英国、日本等国家的影剧名人,各种动人心弦的吟诗作品,就生出了愿望,希望有一天自己也有作品,能像别人曾给我的享受那样一想静下心来的时候就去听它,听它就会静下心来的音乐。现在,我终于在迎接2000年前夕完成了第一片这样的CD。不是因为我想作诗人,而是因为早已是诗人的你们所赐。谢谢你!好好享受自己的心情。
——鲍比达写于《机遇·淡水小镇原声带》发行之际
其实包办全碟编曲和钢琴演奏的,是香港音乐奇才鲍比达。他的才华同样让人惊叹,那一手洋溢着深厚古典气息,又流泻出无比灵气的钢琴,简约透明,晶莹清澈,像月光下颗颗的露珠,静静滴落,惊动了一泓秋水。尤其是音符间余音袅绕的“留白”,更是给人以无限的遐想。