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

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

一、注册域名

1、在京东云购买域名

京东云域名服务是集域名注册、解析、监控和保护为一体的综合域名管理平台。域名服务帮助您实现以下需求:

  • 域名注册:提供丰富的域名种类供您选择。

  • 域名保障:基于隐私保护、安全锁等安全服务,全面保障您的注册信息和域名信息,免遭恶意骚扰。

  • 品牌保护:用域名保护您的品牌,帮助集团及大型企业安全、高效的管理品牌和域名。

  • 域名解析:依托京东云解析,提供免费、高效、安全的 DNS 服务器,保障域名即买即用。

打开京东云官网,进入控制台,选择域名服务

域名具有全球唯一性,注册之前需要查询您的域名是否可注册。

加入购物车:选择想要注册的域名,点击“立即结算”前往购物车,在购物车中,选择注册年限并勾选域名注册协议。

完成支付:域名属于即时产品,无法预订,只有最终付款成功才算注册成功,所以下单后请尽快结算。付款方式有多种,推荐通过网银支付,支付成功后,您可以在会员中心-域名管理中找到域名并进行管理。

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

2、域名备案

网站备案是指向主管机关报告事由存案以备查考。行政法角度看备案,实践中主要是《立法法》和《法规规章备案条例》的规定。网站备案的目的就是为了防止在网上从事非法的网站经营活动,打击不良互联网信息的传播,如果网站不备案将会被拦截。
备案是域名指向国内IP时,在服务器提供商处的备案系统提交备案申请。如您购买了京东云服务器(有效期必须为3个月以上的包年/包月类型),且域名有使用备案的需求,即可按照如下图示操作:

备案详细流程请见京东云帮助文档:https://docs.jdcloud.com/cn/icp-license-service/process

3、域名解析

初期网站小,内容较少,可以使用京东云云解析免费版,后期随着网站的扩容再根据情况选择企业版或企业高级版。详细操作流程见京东云帮助文档:https://docs.jdcloud.com/cn/jd-cloud-dns/domainadd。

二、准备服务器

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

本文使用centos服务器作为网站服务系统,创建linux实例详见京东云帮助文档:https://docs.jdcloud.com/cn/virtual-machines/create-linux-instance

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

1、开通视频直播服务

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

2、配置推拉流域名

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

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

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

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

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

3、开始推流

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

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

扫描以下二维码可体验推流SDK、播放SDK的功能及效果。iOS支持8.0以上系统、Android支持5.0及以上 (API level 21)

说明:由于受到微信和QQ限制,请使用手机自带扫码或其他扫码软件扫描安装

扫码安装后,如下图图标:

打开后,选择“开始推流”

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

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

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

使用OBS进行推流

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

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

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

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

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

4、播放测试

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

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

复制其中一个地址,打开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以及串行接口连接软件,可访问https://www.putty.org/进行下载)。

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

打开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 (https://videojs.com/)是一个通用的在网页上嵌入视频播放器的 JS 库,Video.js 自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器。

我们做一点简单的内容填充、格式布置,将播放地址rtmp://vpull.jdpoc.com/live/test1嵌入,代码中https://vvv-test.s3.cn-east-1.jdcloud-oss.com/jdcloud.jpg为封面图片,大家可以将自己喜欢的图片上传到京东云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,网站显示如下:

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

干货 | 使用京东云搭建视频直播网站相关推荐

  1. 如何在自己直播软件搭建的网站加上视频直播功能(搭建视频直播网站)

    想在自己的网站上做一场直播?想在自己的网站上架设一个CCTV网络电视?想在自己的网站上架设一个全天24小时的监控?这些需求统统可以用八百里flash p2p流媒体系统(P2PS)解决. 在本文中我们首 ...

  2. 如何在自己网站加上视频直播功能(搭建视频直播网站)

    想在自己的网站上做一场直播?想在自己的网站上架设一个CCTV网络电视?想在自己的网站上架设一个全天24小时的监控? 这些需求统统可以用八百里flash p2p流媒体系统(P2PS)解决. 在本文中我们 ...

  3. 微软视频直播服务器,使用微软云媒体服务快速搭建视频直播

    原标题:使用微软云媒体服务快速搭建视频直播 2020庚子鼠年假期结束,众多企业开始进入开工模式,但"战疫" 仍在进行中,大家仍以居家办公.避免外出及商务会面为主.在大量传统线下交流 ...

  4. 关于搭建视频直播运营平台的一点经验和心得

    视频直播,目前在各行各业得到了广泛的应用.那么该如何搭建一个自己的直播运营平台?需要投入多大的财力和物力呢? 下面根据我个人的从业经验讲一下,不具有绝对的权威性,但是都是经验的总结,希望和大家一起学习 ...

  5. 视频直播网站开发千万不能忘的一个知识点

    对于视频直播网站开发的技术人员来讲,音视频即时通讯技术是需要熟练掌握的.毕竟像直播这样重视互动和实时性的应用场景,即时通讯可以从中起到很大的配合作用.目前市面上有很多服务商所提供的SDK可以帮助实现这 ...

  6. php开发视频直播平台技术,视频直播网站开发千万不能忘的一个知识点

    对于视频直播网站开发的技术人员来讲,音视频即时通讯技术是需要熟练掌握的.毕竟像直播这样重视互动和实时性的应用场景,即时通讯可以从中起到很大的配合作用.目前市面上有很多服务商所提供的SDK可以帮助实现这 ...

  7. 视频直播网站开发的最佳实践

    随着互联网技术的不断发展,视频直播成为了网络世界中的一股热潮.无论是企业还是个人,都可以通过搭建自己的视频直播网站来实现自己的目标.但是,对于很多企业来说,视频直播网站的开发是一项复杂的任务.因此,本 ...

  8. [标题党]15分钟开发可支持百万观众的H5视频直播网站

    15分钟用Rails开发一个Blog有什么意思?那是2005年的Hipster追捧的玩具. 现在都已经是2015年了.HTML应该读作Hipster's Toolkit Made Live了. 既然是 ...

  9. 视频网站服务器架构,适用于视频直播网站开发的两种架构

    原标题:适用于视频直播网站开发的两种架构 为了保证直播的顺利进行,技术人员在开发过程中可没少费了功夫.其实直播架构的设计对于直播来说,也是决定直播能否稳定运行的因素之一.通常,为了能够很好的应对实时交 ...

最新文章

  1. C# 3.0/3.5语法新特性示例汇总[转]
  2. android 弹出编辑框,Android编程实现的EditText弹出打开和关闭工具类
  3. java ee 3.0_初识JavaEE 6 的 Servlet3.0
  4. 【转】解决keepalived正常启动但是虚IP(VIP)没有生成的问题
  5. gvim配置及相关插件安装(过程详细,附图)
  6. java根据enum某个属性值获取枚举项
  7. Java Web项目--使用JSP生成一个页面
  8. CRC生成多项式应该怎样定
  9. RxSwift之UI控件UIPickerView扩展的使用
  10. 编译原理(四)之解析语言翻译成三地址代码
  11. kubectl查看node状态_适用于初学者的基本 kubectl 和 Helm 命令 | Linux 中国
  12. 可访问性不一致 可访问性低_什么是网站可访问性?
  13. ztree局部刷新节点_神经网络训练的世界记录是怎样被刷新的 -- 总结分布式训练的计算场景...
  14. boolean linux shell_给PowerShell脚本传递一个布尔值
  15. 03-SSH server config
  16. eoe android Studio 安装使用教程
  17. VS2015彻底卸载干净
  18. PS基础操作及常用快捷键
  19. 思科的DUO解决方案到底是什么?
  20. 《京东话费充值系统架构演进实践》--阅读

热门文章

  1. Discuz 批量修改、替换帖子标题或内容
  2. Cohort Analysis组群分析(1)
  3. 我的世界服务器怎么显示腐竹来了,我的世界服务器主人可用指令一览 我的世界腐竹常用指令介绍_游侠手游...
  4. 【C语言航路】第一站:初识C语言(四)
  5. win10桌面右下角网络图标中找不到网络
  6. 如何在Windows和Mac下挂载EFI分区
  7. 利用adb查找手机定位,并且打开地图定位
  8. group by和order by的用法和区别
  9. 熊猫烧香病毒幕后黑手曝光 网络世界高手对决一个月
  10. 快手双核心时代宣告结束,互联网“退休潮”还在继续?