写点什么

使用京东云搭建视频直播网站

  • 2019-10-18
  • 本文字数:3631 字

    阅读完需:约 12 分钟

使用京东云搭建视频直播网站

视频直播是指利用互联网及流媒体技术进行直播,视频因融合了图像、文字、声音等丰富元素,声形并茂,效果极佳,逐渐成为互联网的主流表达方式。视频通过真实、生动的传播,营造出强烈的现场感,吸引眼球,达成印象深刻、记忆持久的传播效果,能够真实、直观、全面的宣传、展示自己。比较热的视频直播网站有花椒、斗鱼、虎牙、六间房等。


视频直播网站建设分为域名的注册、服务器的准备、视频资源的准备和网站的搭建几个部分,本文将以京东云的产品和服务为基础,进行视频直播网站的搭建,为小型企业或个人用户提供帮助。

一、注册域名

1、域名购买

具体注册流程可以查看京东云官网。


如果注册的是.cn 等国内域名,注册成功后还需要提交与域名注册信息相同的资料,进行实名制认证,成功后域名才能正常使用;如果在注册过程中,选择已实名认证的信息模板,则可以省略此步骤。

2、域名备案

网站备案是指向主管机关报告事由存案以备查考。行政法角度看备案,实践中主要是《立法法》和《法规规章备案条例》的规定。网站备案的目的就是为了防止在网上从事非法的网站经营活动,打击不良互联网信息的传播,如果网站不备案将会被拦截。


备案是域名指向国内 IP 时,在服务器提供商处的备案系统提交备案申请。如您购买了京东云服务器(有效期必须为 3 个月以上的包年/包月类型),且域名有使用备案的需求,即可按照如下图示操作:



备案详细流程请见京东云帮助文档

3、域名解析

初期网站小,内容较少,可以使用京东云云解析免费版,后期随着网站的扩容再根据情况选择企业版或企业高级版。详细操作流程见京东云帮助文档

二、准备服务器

域名注册后,则需要购买云上资源,根据网站规模选择购买云上资源,云上资源涉及到云主机、云存储(云硬盘、对象存储)和公网 IP&带宽,京东云按需配置云主机的操作系统、CPU、内存、硬盘及网络带宽,快速创建和释放,合理分配资源,并可根据需求进行横向和纵向的伸缩,避免资源浪费,初期可以先购买较低配置,后续根据业务需要再进行扩容。


本文使用 centos 服务器作为网站服务系统,创建 linux 实例详见京东云帮助文档

三、使用京东视频云完成直播源站配置

1、开通视频直播服务

打开京东云官网,进入产品-视频直播,点击开通服务,按指引开通视频直播服务。

2、配置推拉流域名

服务开通后,登录视频直播客户控制台,通过左侧菜单栏找到“视频服务”,点击“视频直播”子菜单,进入“域名管理”页面,点击“添加域名”,如下图:



推流域名:您申请并完成备案用作推流使用的合法域名


播放域名:您申请并完成备案用作播放使用的合法域名


注:推流和播放域名不能为同一个,域名必须完成备案真实有效


域名配置后,待审核完毕进入域名管理,点击管理,可查看推流和播放信息:




其中 AppName、StreamName 均为自定义,鉴权信息可暂不配置。

3、开始推流

京东云提供推流 SDK 能够帮助开发者快速实现稳定的视频直播采集和推流功能,实际推流时可以用用 SDK 开发移动端推流工具,或者使用桌面端的 OBS、FMLE、Xsplit 等工具进行推流,本文将使用京东云 SDK demo 进行推流测试,之后正式使用 OBS 进行推流。


使用京东云 demo 进行推流测试


进行推流配置,推流地址按《配置推拉流域名》章节中配置的推流域名,APPname 我们命名为 live,流名称命名为 livestream,如下图:



点击“开始直播”,点击“开始推流”,如下图:



进入视频直播控制台,在“流管理”中可以看到已经开始推流



使用 OBS 进行推流


OBS Studio 是一款视频直播录制软件,为用户提供了视频、文本、图像等的捕获录制功能。OBS Studio 界面简洁,功能强大,不仅录制质量好占用资源小而且还是免费的,是一款常用的直播推流工具。


访问OBS官网,下载安装,安装完毕后,进入设置界面,点击推流,服务器配置为推流地址,串流密钥为流名。



回到主页面,在来源处,进行推流内容配置,可配置桌面、摄像头、媒体源等,本处以媒体源为例,添加媒体源后选定本地媒体文件:




点击右侧开始推流按钮,开始推流:



开始推流后,进入控制台可以看到流名为 test1 的地址开始推流:


4、播放测试

本文使用开源 VLC 播放器进行播放测试。VLC 是一款自由、开源的跨平台多媒体播放器及框架,可播放大多数多媒体文件,以及 DVD、音频 CD、VCD 及各类流媒体协议。


在控制台,流管理中,点击推流中的流名后面的“直播地址”:



复制其中一个地址,打开 VLC 播放器,点击媒体-打开网络串流,




左侧为播放画面,右侧为推流画面(播放画面比推流画面滞后)。

四、网站搭建

网站需要 web 服务器来架构,网页设计美工人员(使用 flash、dreamweaver、firework、photoshop 等设计工具),网页开发人员(使用 ASP、JavaScript、PHP、HTML、ASPX&.net 等语言)。本文使用 Apache 进行网站搭建,不包括 html 开发。


Apache HTTP Server(简称 Apache)是 Apache 软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的 Web 服务器端软件之一。它快速、可靠并且可通过简单的 API 扩展,将 Perl/Python 等解释器编译到服务器中。


Apache HTTP 服务器是一个模块化的服务器,源于 NCSAhttpd 服务器,经过多次修改,成为世界使用排名第一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。

1、服务搭建

云主机购买后,我们使用 SSH 工具连接主机,进行配置,本文使用 putty 工具进行介绍(putty 是一个开源的 Telnet、SSH、rlogin、纯 TCP 以及串行接口连接软件)。


登录京东云控制台,选择弹性计算-云主机-实例,可看到购买的主机实例:



打开 putty 进行连接:



使用 root 账户登录



使用 yum 包安装 Apache 软件


# yum -y install httpd* -安装Apache软件 # rpm -qa | grep httpd --查看安装的http包
复制代码



显示如上图,安装成功。


安装成功后,会产生下面两个文件


/etc/httpd/conf/httpd.conf # 主配置文件 /var/www/html # 网站根目录
复制代码


配置 Apache 服务开机启动:


# systemctl enable httpd
复制代码



启动 Apache 服务:


# systemctl start httpd --启动httpd服务 # lsof -i:80 --查看httpd服务是否启动
复制代码



如上图则表示服务启动成功。


打开浏览器,输入云主机公网 IP,显示下图:


2、网站内容建设

本文使用 HTML 搭建一个简单的网页结构。


HTML 由 N 个标签(节点、元素、标记)组成


HTML 语法非常松散


常见的 HTML 标签


标题:h1,h2,h3,h4,h5…


段落:p


换行:br


容器:div,span(用来容纳其他标签)


表格:table,tr,td


列表:ul,ol,li


图片:img


表单:input


链接:a


一个最简单 html 页面代码如下:


1<!DOCTYPE html> 2<html> 3    <head> 4        <title>这是个标题</title> 5    </head> 6    <body> 7        <h1>一个简单的网页</h1> 8        <p>Hello World!</p> 9    </body>10</html>
复制代码


我们使用 vediojs 进行网页上的视频播放,Video.js 是一个通用的在网页上嵌入视频播放器的 JS 库,Video.js 自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器。


我们做一点简单的内容填充、格式布置,将播放地址嵌入,代码中为封面图片,大家可以将自己喜欢的图片上传到京东云 OSS,获取外部访问链接。调整后全部代码如下:


1<html>   2  <head>   3  <title>直播网</title>   4  <meta charset="utf-8">   5  <link href="http://vjs.zencdn.net/5.5.3/video-js.css" rel="stylesheet">  6 </head>   7<body>   8 <center><h1>视频直播网(示例)</h1></center> 9    <center><h2>Powered by JDcloud</h2></center>10    <center>11 <video id="my-video" class="video-js" controls preload="auto" width="640" height="300"  12 poster="https://vvv-test.s3.cn-east-1.jdcloud-oss.com/jdcloud.jpg" data-setup="{}">  13    <source src="rtmp://vpull.jdpoc.com/live/test1" type="rtmp/flv">  14    <!-- <source src="http://vpull.jdpoc.com/live/livestream.m3u8" type='application/x-mpegURL'> -->  15    <p class="vjs-no-js">  16      To view this video please enable JavaScript, and consider upgrading to a web browser that  17      <a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>  18    </p>  19 </video>  20 <script src="http://vjs.zencdn.net/5.5.3/video.js"></script>  21</body>  22</html> 23<center>
复制代码


将该文件保存为


index.html
复制代码

3、上传网页文件至云服务器

我们使用 putty 官方提供的 PSCP 来上传文件。打开 putty 安装目录,查看是否有 PSCP:



如果没有可以去官网下载。


我们以广泛使用的 windows 系统系统为例,进行网页文件上传。打开 cmd,使用 cd 命令行访问到 putty 安装目录:



把本地文件上传到 LINUX 服务器的目录中。


命令格式:pscp 文件 用户名 @LINUXIP:目录



输入密码后,显示如上图则复制成功。

4、网站展示

打开浏览器,输入云主机公网 IP,网站显示如下:



在没有推流时,显示静态图片,推流时显示视频画面。至此,一个基本的视频直播网站的全部前后台系统已经搭建完毕。


2019-10-18 13:201467

评论

发布
暂无评论
发现更多内容

Spring高手之路23——AOP触发机制与代理逻辑的执行

砖业洋__

spring aop aop代理

交互管理系统

深圳亥时科技

AE镜头光晕插件 Optical Flares for Mac 许可证及安装包

理理

幻灯片制作工具Deckset for Mac(MD文档转幻灯片软件)

Mac相关知识分享

幻灯片制作工具

漫谈自动化测试

老张

软件测试 持续集成 自动化测试 质量保障

数据驱动决策,实时监控助力电商新飞跃 —— 深度解析淘宝商品详情API的应用实践

代码忍者

API 接口 pinduoduo API

极狐GitLab 发布安全版本16.10.10, 16.9.11, 16.8.10, 16.7.10

极狐GitLab

ruby gitlab 安全漏洞 升级

Python + OpenTelemetry,观测你的特斯拉!

Greptime 格睿科技

Python 数据库 云原生 数据监控 观测

多媒体播放器软件Fig Player - play mp4 mkv mp3 for Mac

Mac相关知识分享

多媒体软件

Capture One 23 Pro for mac(RAW转换和图像编辑工具)

Mac相关知识分享

摊牌了!没有人能拒绝用大屏激光电视看NBA

Geek_2d6073

用户信息管理系统

深圳亥时科技

Aloudata BIG 主动元数据平台支持 Oracle/DB2 存储过程算子级血缘解析

Aloudata

数据库迁移 存储过程 数据血缘

幽灵代币经济学:揭秘代币分配有哪些后门交易

区块链软件开发推广运营

dapp开发 链游开发 NFT开发 钱包开发 代币开发

DApp的盈利模式与去中心化的意义

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 钱包开发 代币开发

极狐GitLab 17.5 重点功能解读,可以升级啦!

极狐GitLab

gitlab 版本发布

处理数码相机RAW格式文件 Adobe Camera Raw

理理

NocoBase 本周更新汇总:子表格支持分页、工作流优化等

NocoBase

开源 低代码 无代码 产品更新

网络调试和抓包分析工具Proxyman Premium for Mac

Mac相关知识分享

网络调试工具

腾讯云EdgeOne发布全新Pages,技术普惠广大企业及开发者

Geek_2d6073

2024 年金九银十版Java面试题及答案整理(纯干货,超详细)

采菊东篱下

编程 java面试

永久激活版 Trapcode Particular for Mac(AE三维粒子插件)

理理

皮阿诺3.0抗菌“黑科技”石英石台面,由内而外守护家人健康

新消费日报

增长在流量规则巡检的探索实践|得物技术

得物技术

测试 质量保障 流量巡检

保护电池健康的小工具AlDente Pro for Mac

Mac相关知识分享

电池工具

革新之作!可心柔保湿小绒巾上新,引领生活用纸新潮流

新消费日报

HyperWorks基础培训教程:批处理网格划分

智造软件

教程分享 CAE软件 Hypermesh

多云管理平台定义以及好用的厂商推荐

行云管家

云计算 云服务 企业上云 多云管理

伊宁等保测评机构有哪些?电话多少?

行云管家

等保 等保测评 伊宁

“0元购”智元灵犀X1机器人,软硬件全套图纸和代码全公开,加速人形机器人技术革新!

Geek_2d6073

用户管理系统(源码+文档+部署+讲解)

深圳亥时科技

使用京东云搭建视频直播网站_架构_吴世超_InfoQ精选文章