网络直播平台的实现技术有哪些?大概架构是如何

网络直播平台的实现技术有哪些?大概架构是如何,第1张

一视音频的采集和编码技术

编码技术不仅包括算法实现,还涉及到通过是通过x86平台实现还是通过嵌入式方式实现。

二视音频的流媒体传输技术。目前通常使用的方式主要包括:

1通过HTTP协议传输,需要通过技术开发来实现高性能的HTTP流媒体服务器;

2通过RTMP协议传输,需要通过技术开发来实现高性能的RTMP流媒体服务器;

3通过UDP协议传输,这种方式通常用于大规模的可控网络中,比如IPTV电视直播应用,通过交换机即可支持这种传输方式;

4通过P2P方式传输,P2P方式所用的传输协议可以由用户自主定义,并且可以基于UDP或TCP来实现,这种方式通常也是用于

超大规模组网环境中。

三CDN内容分发技术。

需要自主开发实现支持流媒体的CDN内容分发软件平台,来完成内容从源站节点到各边缘节点服务器的调度。

这方面的技术已经很成熟,目前有多家这类产品提供商,也有多家CDN服务提供商(软件平台、硬件服务器、出口带宽整体租用)。

四终端解码技术。

解码技术主要根据终端的类型分为如下几类:

1PC端解码技术

比如当前视频网站采用的H264视频解码技术(AdobeFlashPlayer)、VLC和FFMPEG这种桌面客户端软件(可支持H264、H265等大部分视音频格式的解码)

2移动终端解码技术

目前主要分为Android和iOS量大阵营,两大移动平台的视音频解码实现方式也主要分为两种,一种是通过设备自带的GPU硬件解码,另一种是通过软件方式调用中央处理器来解码。

  Wowza Streaming Engine 4 (也就是著名的Wowza Media Server®)是一个高性能、可扩展的流媒体服务器软件,支持直播、VOD、在线视频聊天、远程录制功能, 它也支持多种播放器技术,包括:

Adobe® HTTP Dynamic Streaming (HDS) Adobe Flash® 播放器

Apple® HTTP Live Streaming (HLS) iPhone®, iPad®, iPod touch®, Safari® 浏览器, QuickTime® 播放器

Microsoft® Smooth Streaming Microsoft Silverlight®

MPEG-DASH streaming DASH clients

Real Time Streaming Protocol (RTSP/RTP) QuickTime 播放器, VLC 媒体播放器, 以及许多移动终端

MPEG-2 Transport Streams (MPEG-TS) 机顶盒和IPTV 解决方案

安装Java

Wowza Streaming Engine 4 是一个基于Java 6 (也就是 16) 和Java 7 (也就是 17)的应用程序,需要先安装Java Runtime Environment (JRE) 6 或以上版本。

Wowza Streaming Engine可以使用下面的Java安装包:

Java Development Kit (JDK) 这个JDK 包含了完整的JRE 并可以让Java 开发人员开发和调试服务端应用。

Java Server JRE 这个Server JRE 是一个完整的JRE。如果你只是要运行Java程序,而不是开发和调试,那么可以用这个安装包。

第三方的Java虚拟机环境、 用户端的Java JRE、以及32位的客户端环境,这些都不是运行Wowza server 软件所需要的服务端环境。 你可以在32位的Java JRE上运行Wowza Streaming Engine,但它仅仅只能用于测试环境,此外,还需要一些额外的配置。

为了得到最好的性能,为了能够使用Wowza Transcoder AddOn,我们推荐你将Wowza Streaming Engine 安装在 64位的操作系统和最新的64位Java JDK 或 Server JRE。

注意:

Wowza Transcoder AddOn 只能运行在64位的Windows 和 Linux 操作系统和64位的Java VM。

你可以从Oracle Java SE 下载页面或 所有操作系统下的Java 下载页面下载下载64位Java JDK 或 Server JRE。

根据手册或指南安装Java 环境。

你可以用java –version命令来验证是否已经正确安装了Java。

如果Java已经被正确的安装和配置,命令行或终端窗口会出现Java的版本号,它应该至少是16版本。

针对32位Java 客户端环境下运行Wowza Streaming Engine 所需要的配置

如果你下载32位客户端版本的Java JRE,比如在wwwjavacom页面点击Free Java Download 按钮。 我们不推荐使用这个版本,要使用它,你需要在Wowza Stream Engine 上做如下配置:

在[install-dir]/conf/目录下,用一个文本编辑器打开Tunexml文件。

删除文件中的<VMOption>-server</VMOption>属性。

保存文件,然后重启Wowza Streaming Engine 。

- 或者 -

在Java的安装目录的bin文件夹下,通常位于[java-install-dir]\bin下,按如下操作

创建一个名字为server的文件夹。

例如,当你的Java安装在C:\Program Files\java\jre7下,那么创建如下文件夹:

Code:

C:\Program Files\java\jre7\bin\server

将[java-install-dir]\bin\client 文件夹下的内容拷贝到[java-install-dir]\bin\server 文件夹下。

确认JAVA_HOME 环境变量能正确匹配你的Java安装根目录([java-install-dir])

例如,C:\Program Files\java\jre7 如果这个环境变量设置的不对,请参考After installing latest Java version, java command is still using old Java (fix) 以了解更多如何解决它的信息。

安装Wowza Streaming Engine 4

注意:

在安装Wowza Streaming Engine 406之前要卸载以前的任何Wowza版本。

到Wowza官网的 安装包下载 页面点击 Download 以下载你需要的操作系统下的Wowza版本。

下载完成后,按以下步骤进行:

Windows: 双击安装文件, WowzaStreamingEngine-406exe, 按界面提示进行。

Mac OS: 双击 WowzaStreamingEngine-406dmg 文件,然后双击安装包Wowza Streaming Engine 406pkg, 按界面提示进行。

Linux: 进入包含安装文件的目录,根据你的平台,执行以下命令:

Red Hat Package Manager (RPM):

打开命令Shell,输入如下命令:

Code:

sudo chmod +x WowzaStreamingEngine-406rpmbin

sudo /WowzaStreamingEngine-406rpmbin

Debian Package Manager (DEB):

打开命令Shell,输入如下命令:

code:

sudo chmod +x WowzaMediaStreamingEngine-406debbin

sudo /WowzaStreamingEngine-406debbin

其它Linux系统TAR包安装:

打开命令Shell,输入如下命令:

code:

sudo chmod +x WowzaStreamingEngine-406tarbin

sudo /WowzaStreamingEngine-406tarbin

在安装过程中,你会被要求:

接受授权协议(license agreement)

输入一个合法的产品授权序列号。这个序列号是由Wowza公司通过邮件发给你的,你会在收件箱中找到它。

创建一个管理员账户需要的用户名和密码。你将用这个账号登录基于Web的Wowza Streaming Engine Manager。注意:用户名和密码都是大小写敏感的。

确认或改变安装目录,默认情况下,Wowza Streaming Engine 将被安装在以下目录:

/Applications/Wowza Streaming Engine 406/

/Library/LaunchDaemons/

/Library/WowzaStreamingEngine/ (an alias)

/Library/WowzaStreamingEngine-406/

Windows: \Program File(x86)\Wowza Media Systems\Wowza Streaming Engine 406

Mac OSX:

Linux/Unix: /usr/local/WowzaStreamingEngine-406

如果你希望在系统启动后自动启动Wowza Streaming Engine 和 Streaming Engine Manager 。 请在提示界面中接受默认的选项 Start Wowza Streaming Engine automatically when the system starts 以及 Launch Wowza Streaming Engine Manager in a web browser ,这样可以使得服务器和管理界面能够在操作系统启动后自动启动,这样会方便很多。 如果你没有接受这些选项,你必须自己启动服务器和管理界面。

启动软件

如果你在安装的时候没有选择自动启动服务和管理界面,你必须手动启动它们。根据不同的操作系统平台,按以下指导进行。

Windows平台上以服务方式启动:

按WIN键 + R

在运行对话框输入 servicesmsc,然后点击确定。

在Services MMC窗口中,右键Wowza Streaming Engine 406,然后点击启动。

要确定Wowza Streaming Engine是否已经正常启动,请在Web浏览器访问下面的URL:

http://[wowza-ip-address]:1935

在这里,[wowza-ip-address], 是运行Wowza Streaming Engine的服务器IP地址或域名。例如:

http://localhost:1935

如果已经正常启动,浏览器上会显示Wowza Streaming Engine 的版本号。如果没有,请检查软件是否已经正确安装,在你的路由和防火墙设备以及软件防火墙上的TCP端口是否被打开。

当 Wowza Streaming Engine 服务正常运行后,你再启动Wowza Streaming Engine Manager。

回到Services 窗口, 右键Wowza Streaming Engine Manager 406, 然后选择e Start

Mac OS X平台上以服务方式启动

到/Applications/WowzaStreamingEngine-406/ ,双击 Start Services

运行Start Services 应用,将Wowza Streaming Engine server software 和 Wowza Streaming Engine Manager 同时作为系统服务启动。

要确定Wowza Streaming Engine是否已经正常启动,请在Web浏览器访问下面的URL:

http://[wowza-ip-address]:1935

在这里,[wowza-ip-address], 是运行Wowza Streaming Engine的服务器IP地址或域名。例如:

http://localhost:1935

如果已经正常启动,浏览器上会显示Wowza Streaming Engine 的版本号。如果没有,请检查软件是否已经正确安装,在你的路由和防火墙设备以及软件防火墙上的TCP端口是否被打开。

Linux平台上以服务方式启动

要在Linux平台以服务方式将启动Wowza 软件,你必须以用sudo命令成为root用户。 如果以下的指导在你的Linux发型版本上不能生效,请咨询您的Linux手册。

在一个终端窗口,输入下面的命令(依赖你的Linux发型版本):

Code:

sudo service WowzaStreamingEngine start

-或-

Code:

/etc/initd/WowzaStreamingEngine start

要确定Wowza Streaming Engine是否已经正常启动,请在Web浏览器访问下面的URL:

http://[wowza-ip-address]:1935

在这里,[wowza-ip-address], 是运行Wowza Streaming Engine的服务器IP地址或域名。例如:

http://localhost:1935

如果已经正常启动,浏览器上会显示Wowza Streaming Engine 的版本号。如果没有,请检查软件是否已经正确安装,在你的路由和防火墙设备以及iptables上的TCP端口是否被打开。

当 Wowza Streaming Engine 服务正常运行后,你再启动Wowza Streaming Engine Manager。

在一个终端窗口,输入下面的命令(依赖你的Linux发型版本):

Code:

sudo service WowzaStreamingEngineManager start

-或-

Code:

/etc/initd/WowzaStreamingEngineManager start

随着移动互联网和智能手机的普及,视频成为了人们娱乐和学习的重要载体。而视频播放器软件是观看视频必不可少的工具之一。现在市场上有很多种视频播放器软件,那么哪个才是最好的呢?下面就为大家介绍几款最好的视频播放器软件。

NO1 VLC

VLC是一款开源免费的视频播放器软件,在Windows、Mac OS X、Linux、Android、iOS等平台上都有应用。VLC支持几乎所有的视频格式,包括DVD、VCD、流媒体等,播放效果非常好。此外,VLC还内置有广泛的音频和视频编解码器,以及流媒体服务器。

NO2 PotPlayer

PotPlayer是一款由韩国Daum公司开发的免费视频播放器软件,可以播放各种视频和音频格式。PotPlayer的优点是界面简洁、操作简单、视频播放清晰度高、支持字幕等多种功能。

NO3 KMPlayer

KMPlayer是一款免费的视频播放器软件,可以播放几乎所有的视频和音频格式,并支持DVD、CD等多媒体设备。KMPlayer的特点是操作简单、易上手、支持字幕、截图和制作GIF等功能。

NO4 MPlayerX

MPlayerX是一款Mac平台上的免费视频播放器软件,可以播放几乎所有的视频和音频格式,同时还包括了H264解码器和字幕插件。MPlayerX的特点是界面美观、操作简单、清晰度高、快速加载。

NO5 MX Player

MX Player是一款由印度J2 Interactive公司开发的免费视频播放器软件,支持Android和iOS平台。它可以播放几乎所有的视频和音频格式,并有相应的解码器。MX Player的特点是支持硬件加速、能够播放高清视频、支持字幕、观感好等。

NO6 QQ播放器

QQ播放器是一款由腾讯公司开发的免费视频播放器软件,可以播放各种格式的视频和音频。QQ播放器的特点是内置强大的解码器,能够流畅播放高清视频,支持字幕等功能。

总结

通过以上介绍,我们可以看出每款视频播放器软件都有自己的优点,VLC是目前最受用户喜欢的视频播放器软件之一,而PotPlayer、KMPlayer等也不遑多让。最终选择哪一个软件需要根据个人的需求来定,比如操作习惯、功能需求和平台兼容性等方面都需要考虑。

说到ios版本的VLC播放器,就不能不提到其本身其PC端的软件,号称全平台兼容的万能播放器,支持大部分的主流视频格式。ios版本的VLC播放器视频来源:1网络流媒体:对于普通用户来说,不适用且相当繁琐,必须输入视频详细网络ip地址才可以被识别出来2网络下载观看:面临网络流媒体同样的问题3WIFI上传视频:PC和iphone&iPad在同一wifi环境下,可以直接通过PC端web浏览器上传pc端视频到iphone或者ipad,这个功能是所有视频播放器中我觉得最赞的功能,省去了用数据线连接PC和iPhone&iPad的繁琐操作。4调用Dropbox视频文件:如果网速超快以及自己是Dropbox付费用户且不用担心流量的话,此功能相当于给自己带来个云储存的视频库,如果上述三者没有达到两项指标,对于用户来说就不是很实用了。首先你要把视频放到PC端的Dropbox文件夹,然后Dropbox会上传到其官方服务器,然后用户再调用Dropbox文件夹里的视频,从Dropbox官方服务器下载到用户手机。可想而知对网速,Dropbox存储大小以及手机流量的要求有多高。VLC系统设置:1密码保护2解码速度3字幕文本样式:暂时不清楚是否支持外挂字幕,手头没有合适的外挂字幕测试,但是本身又有多种字幕文字样式可供选择,我倾向于支持外挂字幕。4播放进度记忆5后台播放VLC播放界面:1播放进度:手动拖动播放进度不卡且反应灵敏2声音调节3画面尺寸选择:4:3,16:9;16:10等几种尺寸可选4快进慢进5画面对比度调节VLC支持视频格式:VLC支持大部分主流格式,对于普通用户来说,完全够用。由于我PC视频只有MKV&MP4&MOV三种格式,播放这三种格式时视频非常顺畅,无论是直接拖到播放进度还是快进等等操作,反应都是相当灵敏的,480P 2小时时长的影片,拖动快进毫无压力。不足之处:1没有连续播放:如果播放MTV的话,只能播放一首后再进入应用选择下一首2视频库无法批量删除

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 网络直播平台的实现技术有哪些?大概架构是如何

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情