网易首页 > 网易号 > 正文 申请入驻

H5 小程序直播教程,一看就会!

0
分享至

微信搜索 逆锋起笔 关注后回复 编程pdf

领取编程大佬们所推荐的 23 种编程资料!


转自:隐冬 juejin.cn/post/6909479346646286343

大前端这几年算是一个热词,对于前段来说如果不是大前端,技术相对来说就已经算是落后了。如果还停留在对ES6,Vue这些基本技能的学习只能说处于一个及格线。

如果想做的卓越必须必备另一些大前端技能,比如说NodeJS,express.js, koaJs服务类,或者three.js这类3d数据图像,还有二维图像处理,比如d3,raphael, echart, 最后hls, flv视频行业。

如果只会ES6,Vue,React, Webpack这只能算是前端,大前端是至少要掌握上面的一项技能的。这篇文章就是介绍大前端领域中的视频直播。

本文主要讲述的是H5前端部分,视频音频采集部分后面会但开篇章来讲。首先带领大家快速实现一个直播系统,然后再讲解其中的重要概念,话不多说,直接开撸。

工具安装

这里首先讲述mac系统的操作方法,windows系统安装方式在下面。需要的工具我已经传到的github上,可以自行下载。git地址:https://github.com/xiaoyindong/h5live)

server是推流工具,tools里面有下面需要安装的工具。

Mac安装ffmpeg

1.首先需要安装YASM,如果没有安装yasm的话,会报FFmpeg yasm/nasm not found or too old. Use --disable-yasm for a crippledbuild这个问题,如果没有安装sdl的话,安装完FFmpeg之后,bin目录下没有ffplay这个文件。

安装yasm yasm:http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

// 可以在h5live中找到yasm
cd /h5live/tools/yasm-1.3.0
// 配置
./configure
// 编译 & 安装
make
sudo make install

安装sdl :http://libsdl.org/release/SDL2-2.0.8.tar.gz;

// 切可以在h5live中找到sdl目录
cd /h5live/tools/SDL2-2.0.8
// 配置
./configure
// 编译 & 安装
make -j 16
sudo make install

安装ffmpeg :http://ffmpeg.org/download.html;

// 切可以在h5live中找到ffmpeg,prefix为要安装到的位置
cd /h5live/tools/ffmpeg-4.3
// 配置
./configure --prefix=/usr/local/ffmpeg --enable-debug=3 --enable-shared --disable-static
// 编译 & 安装
make -j 4
sudo make install

设置ffmpeg软连接, 相当于环境变量,目的是为了在任何目录都可以使用ffmpeg命令,/usr/local/ffmpeg-4.3/ffmpeg是安装的路径

ln -s /usr/local/ffmpeg-4.3/ffmpeg /usr/local/bin/ffmpeg
Windows 系统

FFmpeg程序进行各种媒体格式的转换,使得它们可以在不同设备上播放。该程序只有命令行模式,因此将它安装到计算机中看上去有点麻烦,但是只要根据本指南的方法,你只需要几分钟就可以将FFmpeg安装成功!

下载 ffmpeg:

访问下载页面时,你将看到很多不同下载选项。你可以根据自己的操作系统选择下载最新的32位或64位静态程序版本。

安装:

点击开始菜单,然后点击计算机。选择安装Windows系统的磁盘(一般是C:)。在C:盘的根目录下(该目录下有名为Windows和Program Files文件夹),右击并在弹出菜单中选择新建文件夹。将新文件夹命名为“ffmpeg”。将下载的ffmpeg压缩包解压到这个文件夹中。

在环境变量中加入ffmpeg的启动命令, c:\ffmpeg\bin , 俗称配置环境变量。

打开命令提示符窗口,输入命令“ffmpeg –version”。如果命令提示窗口返回FFmpeg的版本信息,那么就说明安装成功了,你可以在命令提示行中任意文件夹下运行FFmpeg。

如果你收到“libstdc++ -6 is missing”的错误消息,那么你可能需要安装Microsoft Visual C++ Redistributable Package,该软件包可以在微软网站免费获取。

2.启动server

很简单,进入从github中获取到的h5live中server所在的目录,运行server程序即可。

cd /h5live/server
open server

可以看到这里提供了三种协议的路径,分别是rtmp协议的1935接口,http-flv协议的7001端口和hls的7002端口。

3.执行推流

找一个mp4格式的视频文件,假设这个文件叫1.mp4,可以在1.map所在的文件夹下执行下面的命令。

ffmpeg -re -i 1.mp4 -c copy -f flv rtmp://127.0.0.1:1935/live/movie

出现下图的效果就表示1.MP4这个视频开始进行流推送了。

上面我们已经说了server工具提供三种协议的视频流,分别是rtmp,http-flv以及hls。

可以使用VLC播放器验证rtmp协议的视频流。

在里面粘贴入rtmp://127.0.0.1:1935/live/movie

然后就可以看到直播的效果了。

下载 VLC 播放器:

  1. Mac 系统

Mac OS X: https://www.videolan.org/vlc/index.zh.html

  1. Windows 系统

Windows: https://www.videolan.org/vlc/index.zh.html

hls协议的流媒体可以使用Safari浏览器直接打开观看。我们可以直接把 http://127.0.0.1:7002/live/movie.m3u8 放到Safari浏览器的地址栏中查看效果。

至此我们的推流就做完了,在H5的直播开发中,这些工作都是服务器,我们之所以演示这些是为了在实际的开发中我们可以懂得直播的过程,可以快速的给出直播的解决方案。最主要的在服务还没有开发完成之前我们可以通过这样的方式快速搭建一个推流系统,前端先开发起来。

// RTMP,可以使用VLC播放器
rtmp://127.0.0.1:1935/live/movie
// FLV
http://127.0.0.1:7001/live/movie.flv
// HLS 可以使用Safari浏览器访问
http://127.0.0.1:7002/live/movie.m3u8
H5端播放器

这里才是前端真正需要关心的部分,主要介绍我们如何用js去写一个直播的播放器,选择一些已有的最佳实践是最稳妥的,这样可以快速的满足业务需求,这里我们会介绍三款播放器,以及他们的使用。同样这些代码我也传到了github上。

video.js: https://github.com/videojs/video.js 是国外比较流行的视频框架,他的特长是做了非常好的自定义ui,符合线上成品的场景,除了自定义ui,还提供了很多插件,比如弹幕,快捷键,hls支持等等。他是一个比较完整的js框架,点播、直播都很合适,缺点是文件较大。

hls.js适合做hls协议的一款小巧的框架,同样也是点播直播都可以。缺点是需要自己书写UI样式。video.js可以支持hls也是因为插件是基于hls.js

flv.js是B站开源的flv格式的播放器,如果是http-flv协议的直播用它是非常合适的。

至于rtmp在H5的直播中是不常用的,所以这里就不讲了。

使用videojs开发

在github找到videojs https://github.com/videojs/video.js , 可以在这个网址中找到下面的两个文件,下载下来放在我们本地。

在Video.js的插件文档中存在大量的插件,我们可以从中找到自己需要的。 https://videojs.com/plugins/

videojs-contrib-hls是一个支持hls直播的video插件。我们找到cdn, 将js保存到本地。使用方式很简单,只需要把插件的js引入进来就可以了。

将video.min.js和videojs-contrib-hls.js以及video-js.min.css引入到页面中,source标签的地址写上我们hls的m3u8后缀地址。就可以了。

注意这里需要在服务器环境查看。

html>
Documenttitle>
head>
src="http://127.0.0.1:7002/live/movie.m3u8"
type="application/x-mpegURL">
video>

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
网红柏公子被封禁后首露面,化浓妆打扮时髦,同村人曝其被封原因

网红柏公子被封禁后首露面,化浓妆打扮时髦,同村人曝其被封原因

鑫鑫说说
2024-06-17 11:30:16
2021年,8000万买下巴西球队,3年后出手,罗纳尔多赚到多少?

2021年,8000万买下巴西球队,3年后出手,罗纳尔多赚到多少?

东球弟
2024-05-01 17:15:01
33岁的坎特还能闪耀欧洲杯!9年前鲁能吧曾推荐过在法甲踢球的他

33岁的坎特还能闪耀欧洲杯!9年前鲁能吧曾推荐过在法甲踢球的他

直播吧
2024-06-18 07:58:16
中国厂商推山寨Model Y 价格仅十分之一 续航高达800km?

中国厂商推山寨Model Y 价格仅十分之一 续航高达800km?

手机中国
2024-06-17 10:14:15
你见过最坏的男生到底有多坏?简直毫无底线,就该拉出去凌迟处死

你见过最坏的男生到底有多坏?简直毫无底线,就该拉出去凌迟处死

娱乐洞察点点
2024-06-12 02:08:40
中国小将弗朗西斯科-王与本菲卡正式签订培训合同,上赛季进10球

中国小将弗朗西斯科-王与本菲卡正式签订培训合同,上赛季进10球

直播吧
2024-06-18 01:54:13
看傻了!拒绝FMVP取代伦纳德!全球唯一超级球队真有能耐……

看傻了!拒绝FMVP取代伦纳德!全球唯一超级球队真有能耐……

篮球实战宝典
2024-06-19 00:19:47
疑似大S经纪人回应,具俊晔此次回韩国仅仅是处理工作方面的事宜

疑似大S经纪人回应,具俊晔此次回韩国仅仅是处理工作方面的事宜

青瓜娱评
2024-06-18 15:13:20
CBA今夏离队第一人?再见了,琼斯!加盟广东男篮成首选!

CBA今夏离队第一人?再见了,琼斯!加盟广东男篮成首选!

林子说事
2024-06-18 22:54:53
梧桐妹细肩带「胸前开3洞」超辣! 妈妈贾静雯按赞力挺

梧桐妹细肩带「胸前开3洞」超辣! 妈妈贾静雯按赞力挺

ETtoday星光云
2024-06-17 18:14:06
5月楼市惊现10年来最大跌幅

5月楼市惊现10年来最大跌幅

观察者网
2024-06-17 18:24:06
6月17日俄乌最新:今年以来最关键的一战

6月17日俄乌最新:今年以来最关键的一战

西楼饮月
2024-06-17 17:27:31
美援乌一个中队F-16,彻底解决F-16弹药问题,爱国者获优先保障

美援乌一个中队F-16,彻底解决F-16弹药问题,爱国者获优先保障

移光幻影
2024-06-14 15:15:03
跟微胖女孩谈恋爱,是种什么体验?

跟微胖女孩谈恋爱,是种什么体验?

四象八卦
2024-06-18 10:21:52
2024斯诺克上海大师赛奖金:冠军21万英镑,亚军10.5万镑

2024斯诺克上海大师赛奖金:冠军21万英镑,亚军10.5万镑

懂球帝
2024-06-18 19:09:17
哈马斯陷入绝境,紧急对中国求援,美国警告:没资格讨价还价

哈马斯陷入绝境,紧急对中国求援,美国警告:没资格讨价还价

力波看世界
2024-06-18 23:32:04
浙江外援赛后被球迷投喂杨梅,品尝后夸赞有加还贡献了表情包

浙江外援赛后被球迷投喂杨梅,品尝后夸赞有加还贡献了表情包

直播吧
2024-06-18 19:52:45
国足18强赛赛程官宣出炉!亚足联已提前备好大礼,保送中国队出线

国足18强赛赛程官宣出炉!亚足联已提前备好大礼,保送中国队出线

罗掌柜体育
2024-06-18 16:50:27
突然换帅!正式决定退出CBA!中国男篮又一个新时代开启……

突然换帅!正式决定退出CBA!中国男篮又一个新时代开启……

篮球实战宝典
2024-06-09 18:02:40
中科院已发表颠覆性研究:尼古丁可延缓衰老!吸烟或是长寿密码?

中科院已发表颠覆性研究:尼古丁可延缓衰老!吸烟或是长寿密码?

蜉蝣说
2024-06-15 21:38:43
2024-06-19 01:38:44
技术小生
技术小生
互联网技术与技术人的职业发展
943文章数 498关注度
往期回顾 全部

科技要闻

第一批小米车主,已经开始卖车了

头条要闻

米卡乌塔泽门前打穿近角 格鲁吉亚1-1扳平土耳其

头条要闻

米卡乌塔泽门前打穿近角 格鲁吉亚1-1扳平土耳其

体育要闻

对于凯尔特人来说 谁是MVP根本不重要

娱乐要闻

被曝新恋情,张碧晨王琳凯发声辟谣

财经要闻

官方:税务部门没有倒查30年的安排

汽车要闻

全球最低价 现代IONIQ 5N预售价39.88万

态度原创

亲子
本地
房产
手机
教育

亲子要闻

娃的夏日游泳装备,全套百元拿下!

本地新闻

我和我的家乡|在鞍山的每一步都有新发现

房产要闻

净吸纳量连续两年TOP3!这座海口顶级写字楼,用实力上大分!

手机要闻

曝三星Galaxy S25系列将全系采用高通骁龙移动平台

教育要闻

张雪峰高考志愿填报10大核心总结,普通家庭孩子一定要看 内容涉及:金融、法律、生物、化学、环境、材料...

无障碍浏览 进入关怀版