本文由云+社区发布作者:周超导随着直播平台的爆发式增长,直播平台从PC端转向移动端,顺应直播趋势直播,学习并实现了一套简单的H5视频推流方案。让我与您分享我在学习过程中的经验。环境部分1、配置、安装Nginx;#./configure--sbin-path=/usr/local/nginx/nginx--conf-path=/usr/local/nginx/nginx.pid--with-http_ssl_module--with-pcre=/usr/local/src/pcre-8.39--with-zlib=/usr/local/src/zlib-1.2.11--with-openssl=/usr/local/openssl/#make#makeinstall#/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf//启动Ngnix#netstat-ano|grep802、扩展Nginx-rtmp-module#./configure--add-module=/usr/local/src/nginx-rtmp-module-master--with-openssl=/usr/local/openssl/#make#make安装#vim/usr/local/ngnix/conf/ngnix.confinclude/usr/localcinx-rtmp-module-master/testinx.conf;#vim/usr/localcinx-rtmp-module-master/testinx.confrtmp{server{listen1935年;应用程序myapp{继续;#记录关键帧;#record_path/tmp;#record_max_size128K;#record_interval30s;#record_suffix.this.is.flv;#on_publishhttp://localhost:8080/publish;#on_playhttp://localhost:8080/play;#on_record_donehttp://localhost:8080/record_done;}应用程序hls{继续;开着;hls_path/tmp/hls;hls_片段10s;#每个视频分片的时长hls_playlist_length60s;#总共可以回看的事件,这里设置为1分钟。#hls_continuous上;#连续模式。#hls_cleanup上;#删除多余的切片。#hls_嵌套在;#嵌套模式。}}}http{服务器{听8080;位置/stat{rtmp_stat全部;rtmp_stat_stylesheetstat.xsl;}location/stat.xsl{root/usr/local/src/nginx-rtmp-module-master/;}location/control{rtmp_controlall;}location/rtmp-publisher{root/usr/local/src/nginx-rtmp-module-master/test;}location/hls{#serverhls片段类型{application/vnd.apple.mpegurlm3u8;视频/mp2tts;}#alias/tmp/应用程序;根目录/tmp;过期-1;}location/{root/usr/local/src/nginx-rtmp-module-master/test/rtmp-publisher;}}}#/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf#netstat-ltn#查看端口的监听情况3、安装ffmpeg#./configure--prefix=/usr/local/ffmpeg#make#makeinstall至于ffmp什么是eg?详细介绍请参考:《【经验分享】音频、视频利器——FFmpeg》模拟推流首先我们来看一个简单的直播推流流程图:使用flv视频文件模拟RTMP视频推流:#ffmpeg-re-itest.flv-vcodeccopy-acodeccopy-fflvrtmp://ip:1935/myapp/mystream注:RTMP(RealTimeMessagingProtocol),一种实时消息传输协议,用于视频直播协议,可以像HLS一样应用于视频直播;使用mp4视频文件模拟HLS视频流:ffmpeg-re-itest.mp4-ccopy-fflvrtmp://ip:1935/hls/mystream注意:HLS(HTTPLiveStreaming),Apple的动态码率自适应技术,主要用于PC和苹果终端的音视频服务;HLS请求流程:H5如何在页面播放视频
