H5视频推流方案

导语

随着直播平台爆发式增长,直播平台从 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 # make install # /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf //启动Ngnix # netstat -ano | grep 80

2、扩展 Nginx-rtmp-module

# ./configure --add-module=/usr/local/src/nginx-rtmp-module-master --with-openssl=/usr/local/openssl/ # make # make install # vim /usr/local/ngnix/conf/ngnix.conf include /usr/localcinx-rtmp-module-master/testinx.conf; # vim /usr/localcinx-rtmp-module-master/testinx.conf rtmp { server { listen 1935; application myapp { live on; #record keyframes; #record_path /tmp; #record_max_size 128K; #record_interval 30s; #record_suffix .this.is.flv; #on_publish http://localhost:8080/publish; #on_play http://localhost:8080/play; #on_record_done http://localhost:8080/record_done; } application hls { live on; hls on; hls_path /tmp/hls; hls_fragment 10s; #每个视频切片的时长。 hls_playlist_length 60s; #总共可以回看的事件,这里设置的是1分钟。 #hls_continuous on; #连续模式。 #hls_cleanup on; #对多余的切片进行删除。 #hls_nested on; #嵌套模式。 } } } http { server { listen 8080; location /stat { rtmp_stat all; rtmp_stat_stylesheet stat.xsl; } location /stat.xsl { root /usr/local/src/nginx-rtmp-module-master/; } location /control { rtmp_control all; } location /rtmp-publisher { root /usr/local/src/nginx-rtmp-module-master/test; } location /hls { #server hls fragments types{ application/vnd.apple.mpegurl m3u8; video/mp2t ts; } #alias /tmp/app; root /tmp; expires -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
# make install

至于 ffmpeg 是啥?详细介绍可以参考:《【经验分享】音频、视频利器——FFmpeg》

模拟推流

  • 先来看一个简单的直播推流流程图 :

img

  • 用 flv 视频文件模拟 RTMP 视频流:
 # ffmpeg -re -i test.flv -vcodec copy -acodec copy -f flv rtmp://ip:1935/myapp/mystream

注:RTMP(Real Time Messaging Protocol),实时消息传输协议,用于视频直播协议,和 HLS 一样都可以应用于视频直播;

  • 用 mp4 视频文件模拟 HLS 视频流:
ffmpeg -re -i test.mp4 -c copy -f flv rtmp://ip:1935/hls/mystream

注:HLS(HTTP Live Streaming), Apple 的动态码率自适应技术,主要用于 PC 和 Apple 终端的音视频服务;

  • HLS 的请求流程:

img

H5 如何在页面上播放视频

<video autoplay webkit-playsinline>      
        <source src="http://ip/hls/mystream.m3u8" type="application/vnd.apple.mpegurl" /> <p class="warning">Your browser does not support HTML5 video.</p> </video> 

总结

根据以上的流程,简单的实现了一个视频直播的流服务器来推送直播流,并且可以在 H5 页面上播放视频流。有兴趣的小伙伴们也可以尝试一下~

转载于:https://www.cnblogs.com/liliuguang/p/10399003.html

weixin_34087307
关注 关注
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uniapp - 实现手机端H5网页直播功能效果,拿到后端推流地址或播放资源后进行前端的流畅播放和画面展示功能,uniapp实时推流/拉流直播系统详细教程(提供完整示例代码,一键复制开箱即用!)
高级前端工程师
12-28 4556
uniapp,h5网页,手机端H5网页,uniapp h5直播功能页面,uniapp直播实时推送显示,uniapp h5直播怎么做,怎么使用uniapp去实现移动端手机H5直播,h5 vue+uniapp怎么做直播,uniapp中使用videojs构建H5直播播放器,uniappH5端怎么实现直播推流,uniapp如何实现直播,直播聊天功能,h5平台端直播用什么插件,uniapp手机网页直播用什么组件插件播放器,uniapp手机H5直播播放器详细教程,直播项目,怎么使用vue+uniapp怎么做H5实时直播
H5推流解决方案测试环境搭建指南
11-24 1328
一.部署服务器端 centos (阿里云服务器系统) 1.sudo yum install git 2.git clone https://github.com/phoboslab/jsmpeg.git 3.wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash 4.source ~/...
简单的 H5 视频推流解决方案
weixin_34062329的博客
06-30 1395
导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮流,自己学习实现了一套简单的 H5 视频推流的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验。 环境部署 1、 配置、安装 Nginx; # ./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/l...
【bigo】如何实现h5实时语音
最新发布
yeyeye0525的博客
07-17 1030
HLS协议由苹果公司提出并推广,下面是来自维基百科的定义。HTTP Live Streaming,缩写为HLS,是由苹果公司提出基于HTTP的流媒体网络传输协议。是苹果公司QuickTime X和iPhone软件系统的一部分。它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。
一看就能学会的H5视频推流方案
QcloudCommunity的博客
02-18 607
本文由云+社区发表 作者:周超 导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮流,自己学习实现了一套简单的 H5 视频推流的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验。 环境部署 1、 配置、安装 Nginx; # ./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/loc...
HTML5如何实现直播推流?值得学习一下!
TSINGSEE青犀视频官方技术博客
06-22 2479
自从RTMP推流协议诞生以来,依靠RTMP协议做的推流开发就一直都未停歇,在没有找到更加完善的替代品前,市面的主流推流仍将会由RTMP协议来实现。如大众所熟知的一样,PC端web主流的视频直播方案也一直是RTMP,包括我们开发的EasyCVR平台,也在最新的版本中支持RTMP推流了,不过该版本目前正在测试当中,测试完毕将会上线,大家届时可以关注。 我们本文的焦点还是放在HTML5视频推流直播上。随着直播平台爆发式的增长,H5直播的需求也变得异常丰富。通过H5直播的整体流程大致分为三个模块: 视频
简单的H5视频推流解决方案.docx
10-26
### 简单的H5视频推流解决方案 #### 导语 随着互联网技术的不断发展,特别是直播行业的兴起,使得视频推流技术成为了热门话题之一。对于开发者而言,掌握一套简单有效的H5视频推流解决方案变得尤为重要。本文将...
H5网页播放rtmp实时视频流,网页直播
10-09
本文将深入探讨如何在H5网页上实现RTMP(Real-Time Messaging Protocol)实时视频流播放,以及如何处理延迟问题和播放错误。 首先,RTMP是一种专为实时数据传输设计的协议,常用于视频直播流媒体服务。它允许服务器...
静态HTML5接入海康websocket视频流Demo|海康ws视频流接入H5页面Demo
03-18
海康的WebSocket视频流接入H5页面Demo可能包含以下步骤: 1. 建立WebSocket连接:在JavaScript中创建WebSocket对象,设置连接的URL(通常是海康服务器的WebSocket端点)。 2. 处理连接状态:监听open、message、...
推流拉流RMTP方案:Nginx+ffmpeg/obs+vlc/h5
b711183612的专栏
04-09 3799
RMTP方案:Nginx+ffmpeg/obs+vlc/h5 服务器安装 1.依赖 sudoapt-get update sudo apt-get install libpcre3 libpcre3-dev sudo apt-get install openssl libssl-dev 2.安装Nginx 下载nginx-1.17.9.tar.gz+nginx-http-flv-module.zip放到同级目录解压 https://nginx.org/...
ffmpeg视频推流
02-23
ffmpeg视频推流,里面用map封装好了,只需要填相应的视频流地址以及需要ffmpeg名字就可以用
Window环境下 海康视频RTMP推流方法
11-03
Window环境下 海康视频RTMP推流方法,使用到的工具。希望能够帮到大家。
videojs源码rtmp推流hls播放器html5原生态播放器可用
09-02
网上找了很多videojs 都是各种问题,而且积分特别高,自己整理了一下。测试可用,支持 rtmp 拉流h5自带的视频拉流播放器原生态
web 网页 直播推流 通过Flash获取,再转为RTMP
07-20
网页html直播,推流和接受流都有,通过RTMP, 需要运行在服务器上,不能直接打开,
OBS+NGINX 实现rtmp直播推流.zip
06-18
OBS+NGINX 实现rtmp直播推流,播放器用vlc,使用参考地址https://mp.csdn.net/mdeditor/92784642#
H5 视频推流解决方案
liangsongjun的专栏
08-05 692
H5 视频推流解决方案
h5 推流rstp
A873054267的博客
05-06 908
网上关于该需求的博客很多,但能直接用的很少,经个人实践后提供一个最简版本; 思路是基于B站的开源播放器flv.js和后台 ffffmpeg转换 express工程 package.json { "name": "express", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" &...
3种ffmpeg-web端视频直播推流方案
qq_52703909的博客
01-19 1391
记录了三种 ffmpeg 工具进行推流的方法,并在web端实现直播效果。
pyqt5嵌入h5播放视频
08-22
在使用PyQt5嵌入H5播放视频流时,我们可以通过以下步骤实现: 1. 导入必要的模块和库:我们需要导入PyQt5的相关模块,以及WebEngine模块来使用Web视图。 2. 创建PyQt5窗口:使用PyQt5创建一个窗口,并设置其大小和标题。 3. 创建Web视图:使用QWebEngineView类创建一个Web视图。 4. 加载H5页面:使用load()方法将H5页面加载到Web视图中。可以使用一个带有视频流的HTML文件作为页面。 5. 显示窗口:通过调用show()方法显示窗口。 6. 运行应用程序:使用app.exec_()方法运行整个应用程序。 下面是一个简单的例子: ```python import sys from PyQt5.QtCore import QUrl from PyQt5.QtWebEngineWidgets import QWebEngineView from PyQt5.QtWidgets import QApplication, QMainWindow # 创建PyQt5窗口 app = QApplication(sys.argv) window = QMainWindow() window.setWindowTitle("PyQt5嵌入H5播放视频流") window.setGeometry(100, 100, 800, 600) # 创建Web视图 view = QWebEngineView(window) view.setGeometry(0, 0, 800, 600) # 加载H5页面 view.load(QUrl("https://example.com/video.html")) # 替换为你的HTML页面地址 # 显示窗口和Web视图 window.setCentralWidget(view) window.show() # 运行应用程序 sys.exit(app.exec_()) ``` 上述代码将在PyQt5窗口中嵌入一个Web视图,并加载一个带有视频流的HTML页面。你可以根据需要进行调整,包括更改窗口大小、标题、以及HTML页面地址等。
写文章

热门文章

  • 非常正经的看毛片(?) 40281
  • 华为交换机查看MAC地址 31751
  • 专利缴费信息网上补充及管理系统--操作指南 20908
  • SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".错误的解决方法 7659
  • auth权限认证详细讲解 6132

最新评论

  • Hive database does not exist 排查

    SILIII: 打不开啊

  • linux user xxx is not allowed to execute '/bin/su'

    ESRG技录橙: 解决方法的链接失效了

  • 前端如何让网页打印时每一页都有固定的头部,且在达到固定高度时自动分页...

    1637599830: [code=html] <table> <thead> <tr> <td>每页的固定内容 </td> </tr> </thead> <tbody>其他内容<tbody><table> [/code]

  • PHI 数据库简介

    m0_69276842: 大佬问一下,在线PHI的提交blast就会显示出错,是什么原因啊?

  • 前端如何让网页打印时每一页都有固定的头部,且在达到固定高度时自动分页...

    学习不摸鱼: 表情包能更新一下清晰一点的吗 看不清

最新文章

  • 线性代数学习(一)
  • Tcpdump Manul
  • Tree
2019年373篇
2018年726篇
2017年881篇
2016年530篇
2015年439篇
2014年328篇
2013年325篇
2012年275篇
2011年197篇
2010年142篇
2009年142篇
2008年88篇
2007年70篇
2006年50篇
2005年16篇
2004年11篇
2003年1篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

天下网标王seo优化网站建设网站META优化方法步骤水城优化推广网站中文论文优化网站牛排网站怎么优化网站优化流程图桐城企业网站排名优化海门网站优化有哪些网站布局优化合肥服务好的网站优化优化网站结构有什么用url优化网站多长好化妆品行业网站优化传播桐城网站优化找哪家网站优化需要什么内容电脑优化网站沈阳网站制作优化技巧网站筛选栏优化seo网站内部优化技巧群力网站优化公司多少钱嘉兴湖南网站优化推广西南网站优化行业河池湖南网站优化推广平坝网站关键词优化西宁专业网站优化大庆优化网站价格seo网站排名关键词优化芝罘区网站seo优化排名深圳网站搜索优化软件福田怎样免费网站推广优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化