macrtsp服务器搭建
Ⅰ 如何再网吧里建立电视服务器
以下是网吧影片服务系统的相关设置(好简单啊)
0.首先你的网络已经设置好了,能通过网上邻居实现互访,这是基础(如果你的客户机能上网了,这不是问题吧^!^)
1.选择一台电脑(也可能是数台,比一台麻烦一些)做影视服务器,把你的电影拷至硬盘,把电影文件都设置为共享(通常是共享文件夹, 每个文件夹中放一定数量的电影);
2.在客户机安装播放软件, 建立影视服务器上电影文件的快捷访问方式;
3.已经ok了,就是这么简单,(晕,还没完吗?别告诉我你的声卡还没装^!^)
当然其中还有些学问,以让你的影视系统发挥出最佳的性能:
选择合适的播放软件
以下是我用过的几种播放软件:
windows mediapalyer+divx(mpeg的编码解码器),主要用来播放mpeg格式的电影,它的优点是启动快速,占用系统资源小,缺点是很多格式不支持(致命)
大多网吧都在用realplayer,因为它是rm格式的专用播放软件,界面简单,容易*作,real的 老版本的不支持其它格式的影片 ,新版本因为增加了多个插件,可支持的格式大量增加,包括mpeg格式的,但我使用中发现,某些版本的real播mpeg的时候,不能快进,一拖滚动条就出现假死机, 非要三键结束任务才能解决。
金山影霸iii支持的格式最全(包括音乐文件),而且安装不很占空间(完全安装小于四十兆),占用系统资源也较少。
东方影都支持的格式很多尤其是立体版能看立体电影,效果真爽,但缺点不少,如安装比较占空间(完全安装要80兆),而且消耗系统资源比较厉害。
另外超级解霸2003据说不错,我没有用过,不敢妄下结论(但如果没有比2000有质的转变不用也罢),有兴趣的朋友可以试一下,和其它的软件比较比较。
根据我的经验我首推金影iii做网吧的播放软件(本人严正声明:本人绝没有收取金山公司的一分钱广告费^!^)
附:两种流行的压缩影像格式释疑, mpeg(对应文件扩展名为avi)其实是一种影音压缩技术,它是一种通过记录原始影音文件的信息,用一定的算法进行代码替换处理的有损压缩,播放时通过mpeg编码解码器解码。rm是我们最常见的压缩格式,它使用的另一种算法压缩比例更大(文件大小可压至mpeg的二分之一),故失真较大,效果不如mpeg格式。
注意事项
1,影视服务器最好不要和网络服务器作为一台,如果你的网吧够大,建议使用专用的影视服务器(如果不对外营业,配置可以很低,主频300即可;内存64m即可128m最好,多了就是浪费了;支持大硬盘的主板即可,但要稳定;硬盘当然要大,但5400转即可;如果要对外营业配置就要稍高一点的,建议使用赛扬二代的处理器),当然如果你的网吧很小15台以下,那就没有必要专设影视服务器了。
2,尽量安装rm格式的电影,优点是占用硬盘空间小,传输速度快,一台影视服务器支持的终端多,缺点的效果没有mpg4和vcd的效果好,但只要光盘做的不是太差一般没有什么影响。
3,一定要为你的所有电影共享并创建快捷方式,使其能在任何一台终端能看到所有的影视,如果你的电影是分在几台电脑里放置的,应该先建立个文件夹,把其它电脑上电影的文件的快捷方式放进来,然后把这个文件夹复制到每台终端的桌面上,换上漂亮的图标,取个类似“影视欣赏”的文件名就ok了。这种方法同样适合各种歌曲的使用,可用类似的方法建立个“音乐欣赏”。
4,网络设置:在微软网络客户中选择快速登录,这样启动过程中将不检测网络驱动器,加快启动速度;
登录中选择windows登录,启动过程将不出现登录对话框,可以避免因登录时点取消而未登录网络的情况(这种情况下,客户机可以上网,但不能访问网上邻居)。
5,同一部片子能同时被数台电脑同时调用,一般不影响效果,但应该尽量避免这种情况的发生(对硬盘损耗较大),如果某个片子同时看的人实在太多,应事先多在硬盘中复制几份(尽量选择不同的分区)供调用。
6,一台电影服务器可支持多少用户同时观看?中等的网吧(单影视服务器,客户机50台以下,使用10m的网络即可,当然百兆的网络就更好了)一台影视服务器可同时支持二十台左右的电脑同时播放rm电影(mpeg或vcd就要少了)。事实上网吧中不可能所有的顾客都一起看电影(通常在50%以下),所以这个数目可基本满足五十台以下的网吧了.
实际环境举例(我的网吧):依拖一所大学,电脑三十六台,10m网络,单影视服务器(c2-600, 128m , 2*40g/5400转,对外营业);把电影按类型(如成龙全集,007全集,美国大片,贺岁片,某某电视剧,某某动画片等等)存放在不同的文件夹中,把这些文件夹共享出来,将影视服务器在各个电脑上建立快捷方式,将共享名改为影视欣赏;四个hub(三个16口,一个8口),采用堆叠; 在全满的时候通常是十五人左右同时看电影,最高达到十九人同时观看(还有同时从影视服务器调音乐听的),运转正常,从未出现广播风暴。
影视播放中的故障解决及相关问题:
在网吧中有问题都是正常的,没有问题才不正常了,当然影视系统也不例外,但相比网络的问题,它的问题一般还是好解决的。
realplayer的声道问题,realplayer不能调节声道,这是这个软件的最大bug,升级了n次也没解决,不知道这些做软件的干什么去了,当然我们也有办法处理,就是调用系统的声音属性调节声道(稍麻烦了点)。方法是:调出声音属性(最快捷的方式是双击任务栏中的小喇叭图标)调节两个项目,如果你的菜单是中文的,这两项就是主音量和声波,如果是英文的就是volume和wave。声道主要是由volume控制的,声波则能优化声音性质,实际*作一下,反复对比你就会知道这两项都是怎么回事了。补充最重要的一点,你的电影必须是双声道的才能调节,如果做盘的把两个声道做到了一起,那怎么调就都白扯了。
播放中出现断续的问题, 放映过程中声音或图像出现断续,如果是网络因素,可能是影视服务器出现问题,局域网中的看电影的电脑都会这样,现象会很明显,这时应处理影视服务器,如果只是单机这样请重新播放,最次重新启动就能解决。
声像不一的问题,某部片子看的过程中出现声音和图像不一致的问题,这是系统处理时,放音设备和影像设备未能协调,通常关闭当前播放任务再重新打开就能解决。
播放不出来的问题,任凭怎样双击就是打不开电影文件,这是由于当前系统资源已无法调出播放程序,需要重新启动电脑才能解决(如果谁有更简便的解决办法别忘了告诉我啊^!^)
音量小的问题,如果你的声卡没有问题(有的声卡音量小,从软件方面不好解决,只能配有源音箱加大音量了), 除了将耳机音量和声音属性中的主音量放至最大外,调节声波属性也很关键,往往声波(wave)的设置不当可造成音量过小,请左右调节“均衡”,找出最佳效果。
[!--empirenews.page--]
好了,说了不少了,我还真有点累了,这些文字如果能给那些正处于迷茫状态的同仁带去些认识,我就最高兴不过了。如果你做出的影视系统切实的帮你提高了效益我就高兴的没法再更高兴了。当然,由于各人所处的具体环境不同,同时为避免理论与实际脱节,行文中我也尽量从实际出发,但出现些错误或不相容的结果也是不可避免的,欢迎大家指正并和我继续探讨网吧影视服务技术及经营上的问题!希望大家都有应有的收获!
补充两点
1,影视服务器的配置无需太高,我用过三种配置c400/64, c566/128, p3 733/256, 对客户机的观看效果并无太大的影响。
2. 一台服务器支持的客户机,10m网,一台可支持20个终端播放rm格式,但如果是mpeg格式只能支持10个左右,这里说的是达到较好的播放效果,如果终端超过这个数目,实际上也能支持,但效果就要下降(会出现偶尔的停顿或声像不一等情况)
很多朋友说要做流媒体服务器,说实话,我不建议网吧这样,这样做,因为,网吧都没有很专业的技术员,而且所有的软件都是D版,所有维护很麻烦,虽然网上有破解版,但是效果都不好,不过大家可以学习一下.
大多数人对Realplayerer已经是十分熟悉了,利用Realplayer在线看电影、听音乐,你是不是自己也想拥有一个Realplayer服务器呢?利网络流媒体服务器端软件Real Server能轻松实现你的愿望,下面笔者就介绍何利用它在局域网中建一个流媒体服务器。
什么是Real Server
RealNetworks 流服务器端软件,用它可以在网上发布Real格式的Audio、Video文件,以流格式(RTSP协议)进行网上传输播放,不必担心rm文件被下载。 要实现网上流视频的点播与直播,在硬件之上需要安装一个服务器端软件,这个就是Real Server。
一、组建多媒体播放系统的组网环境
多媒体播放系统的组网环境要求由主从结构或者对等结构组网的若干台多媒体电脑,带声卡、音响、耳塞、麦克风等发声设备,并不受有盘网络和无盘网络的限制。而服务器操作系统要求Windows NT、Windows 2000Professional 、Win2000 Server,服务器要求指定有固定 IP 地址或者是 Intranet 的虚拟 IP地址,工作站端要求装Realplayer7.0以上的版本。
二、下载、安装Real Server9.0
1. 如何下载
目前Real server已经有了9.0版,我们介绍的Real Server通过在线注册获得注册码可以免费使用一年,但在局域网内只允许25人同时使用。可在 RealNetworks 的网站下载 ,也可以到以下的地址直接下载:http://licensekey.realnetworks.com/rnforms/procts/servers/eval/index.html
当打开上述地址时,页面上要求你填写一些个人资料,需要特别注意的是,在填E-Mail时,一定要写一个可*的地址,因为系统要寄一个授权码(License Key) ,以便软件安装完备后,好在服务器上使用,下载文件的大小有9.7MB。
2. 如何安装
下载完备以后直接双击下载的文件,就可以自解压安装了。安装 Real Server 的过程和一般的软件安装差不多,在自解压完成后弹出图1的对话框,要你填写授权码。这时打开刚才下载软件时填写的信箱,把信箱中收到的授权码用Winzip解压到一某个目录中,在图1的“License File Location”下面填写上解压后保存的目录与文件名,这步很重要,服务器端能否使用全*它了。
点击“Next”,选择安装目录、接受协议后,弹出图2对话框。要求填写用户名(Usename)和密码(Password),因为安装的Realserver是一套影音服务器软件,有系统管理者(Administrator)的登录进行管理,在这里我们把username 和 password都设置为“test”。记住它,等一下安装成功启动“Helix Server Administrator”时要用它来登录。 再点“Next”弹出图3的对话框
上面的英文意思是:请键入一个端口号,这个端口将授权给PNA联接,这个联接地址以“PNA://”开头。下面的“7070”是安装默认的PNA联接端口号,不要改它,紧接着在后面的安装中要设置RTSP联接、HTTP联接、MMS联接的端口号,这些都不要改它,以默认的为好。 最后一步会弹出图4的对话框,在“Install Helix Server a NT servce”前面一定要打上勾。
完成安装后,桌面上自动生成两个图标,一个是Helix Server(流媒体服务),另一个是Helix Server Administrator(流媒体服务管理者)。这时系统虽然没有要求重新启动,但是根据本人的使用经验,最好在安装完成后启动一下计算机。
三、启动服务器
启动服务器之前,先确保局域网网络是否接通、每一台工作站是否安装有Realplayer媒体播放软件,最好用7.0以上的版本。 首先,点击服务器桌面上的Helix Server图标,启动Helix Server,程序是在DOS窗口中运行的,道次运行完成后不能自动关闭程序,要手动关闭,以后再启动运行完成后会自动关闭的。
四、启动管理器
服务器桌面上另一个名为Helix Server Administrator图标,是对整个播放系统进行服务管理的一个系统程序。我们点击它会弹出如图5的“输入网络密码”对话框,其中的“站点:js”中的js实际上是本服务器的计算机名,不同的计算机名有不同的“站点”。“领域:js AdminRealm” 是播放系统自建的网络域,下面就是要输入用户名与密码了。在前面我们进行系统安装时不是把用户名Username和Password都设置为“test”了吗?这时就可以把这个“test”填入用户名与密码中。
在图5中填写好密码点击“确定”后弹出启动IE浏览器如图6,图的左边共有五行黑字,也就是对播放系统进行全部管理的五项基本内容:ServerSetup(建立服务)、Security(安全性) 、Logging & Monitoring(登陆及管理)、Broadcasting(网络广播)、Content Management(内容管理), 这里的每一项的管理细节,大家可以多试试。我们先看看在服务器上对播放系统进行测试。
五、播放系统测试
点击管理项的第一项“ServerSetup”后下拉出一些细项目,点击其中的“Media Samples(媒体实例)”(如图6)
在图6的右边就可以看到一些媒体材料供播放测试用,我们随便选择一个例子来进行测试,例如我们双击“Play SMIL Sample 2 ”弹出Realplayer播放器窗口(如图7),开始时会在播放器的底部看到“正在联接”和“正在缓冲”并且在时间不断的跳动,这说明整个系统安装联接成功。随后Realplayer进行播放。在播放器的“位置”后可看到联接地址为rtsp://js:554/africag2/africa.smi。
在这个地址中我们可以看到,播放系统是采用RTSP联接方式进行播放的,js是服务器的计算机名或IP地址,后面的“554”是端口号可省略,“/africag2/africa.smi”是媒体文件保存的路径。
六、工作端的连接
在工作站中我们同样启动Realplayer,在播放器的“位置”后输入“rtsp://js:554/africag2/africa.smi”,“回车”,当我们同样在播放器的底部看到“正在联接”和“正在缓冲”并且在时间不断的跳动时,那么整个系统才算大功告成,播放文件默认存入路径在Helix Server安装目录下的Content子目录,你可以将rm格试的影片存放该目录下,然后在客户机Realplayer中播放器的位置输入rtsp://js/影片名.rm,你就可以慢慢的欣赏影片
Ⅱ 如何搭建一个局域网流媒体服务器
所谓流媒体技术,是指将连续的影像和声音信息经过压缩处理后放在网站服务器上,让用户能够一边下载一边观看、收听(即所谓的“在线欣赏”),而不需要等整
个压缩文件下载到自己的机器上才可以欣赏的网络传输技术。目前,在这个领域中的竞争者主要有微软、RealNetworks、Apple三家公司,例如微
软新近发布了Windows Media Services 9、RealNetworks公司新近发布的Helix
Platform、Apple新近发布的Darwin streaming server 4.1,意图在流媒体领域大干一场。
一般来说,一个完整的流媒体服务系统需要三个部分组成:编码器、流服务器和播放器。编码器通过对内容来源(如MP3文件或者麦克风输入)进行编码,并将编
码过的内容发送到流服务器;流服务器再将它们发布到Internet,这样客户端的播放器只要连接到流服务器就可以进行在线播放了。
利用Winamp架设MP3网络电台
当我们静静地在欣赏美妙的MP3音乐时,你是否曾经考虑过将这些原本属于个人的MP3音乐通过网络在局域网内进行发布,甚至还可以通过Internet进
行发布?这样就可以让遍布世界的朋友们与你一起共享MP3音乐之旅。其实,要做到这一点并不难,你只要将本机创建为一台MP3流媒体服务器,将自己所喜爱
的MP3音乐不停播放,然后通知朋友们访问你的这台MP3服务器就可以了。
说起MP3的播放,使用最广泛的莫过于Winamp了。对于MP3流媒体服务这个领域,Winamp的开发者Nullsoft公司当然不会放弃,专门发布
了面向MP3的流服务器SHOUTcast Server。虽然它的功能没有Windows Media Server和Real
Server强大,但它不仅对硬件的要求极低,更关键的是完全免费,使用起来没有后顾之忧。另外你还需要下载一个名为SHOUTcast DSP
Plug-in的插件,只有安装了这个不起眼的插件,Winamp才能支持流媒体服务。
首先打开Winamp(请注意版本号必须在2.22以上),切换到“Options” | “Preferences”|
“DSP/Effect”标签页,选中“Nullsoft SHOUTcast Source DSP
v1.8.2a[dsp_sc.dll]”下的“Configure”按钮。打开“SHOUTcast
Source”窗口,选择“Output”标签页,如图1所示,在“Address”栏内填入本机的IP地址。如果你想在Internet上广播MP3音
乐,则必须键入本机的外部IP地址,然后就可以从程序组中运行SHOUTcast
DAAS(GUI)程序以启动SHOUTcast服务。这时系统会自动连接到服务器,接下来请返回图1窗口点击“Connect”按钮。如果连接成功,该
按钮会变为“disconnect”字样,这样我们就完成了在本机架设MP3流服务器的全部过程。
架设REAL格式的视频点播中心
如果是架设视频点播服务器,那么选择Real格式是非常明智的。因为RealProcer Plus这款功能强大的软件操作相当简单,每次使用时会弹出一个向导对话框进行操作提示。目前最新版本是10.0,我们只要选择8.5.1以上的版本即可。
从“工具”菜单下选择“创建网页”命令,此时会弹出一个如图2所示的向导式对话框,点击“前进”按钮选择你希望用于创建Web页面的Real多媒体文件。
随后RealProcer会询问是创建“弹出式播放器”还是“嵌入式播放器”,一般建议选择后者,因为这样所需要的系统资源更低,当然启动速度也更
快。至于播放器的界面,可以选择“标准播放器”,很快就可以创建成功。
最后,RM文件对象所在的目录会增加一些文件,请将这些文件与RM对象一起上传,不过要注意保证RM文件与HTML文件在同一目录下,否则播放器可能无法找到播放对象。
架设WMP流媒体服务器
微软的手伸得很长,什么领域都要插足一下。凭借着Windows操作系统的影响力,Windows Media Player市场占有率越来越高,而微软的*.asf、*.wmv、*.wma、*.avi等格式也开始被越来越多的用户所接受。
架设WMP流媒体服务器,你需要安装Windows Media
Encoder才行,目前最新版本是9.0简体中文版。如图3所示,我们应该在这里选择“广播实况事件”,接着选择用来编码的音频和视频设备。注意请事先
将音频和视频设备与计算机正确连接,否则会无法检测到。接着你还需要指定服务和发布点,当然也可以使用现有的发布点。然后Windows Media
Encoder会自动创建服务器,并给出HTTP连接地址与局域网内部地址,请记住这些内容,最后点击“开始”按钮正式启动WMP流媒体服务器。
接下来,我们就可以将刚才记下的HTTP连接地址与局域网内部地址告诉给朋友们。他们只要打开IE,输入正确的IP地址和端口号,很快就可以访问WMP流媒体服务器。
架设QT流媒体服务器
平时,我们见到的大多是打造MWF(矢量地图窗口文件,Map Window
File)或RM流服务器,可是你可知道QuickTime(以下简称QT)流媒体服务器应该如何来打造吗?其实,借助苹果的QuickTime
Streaming Server工具,我们可以在短时间内快速打造出一台QT流服务器。
首先我们要准备一些工具,QuickTime媒体播放工具当然是必不可少的。目前最新版本是6.5简体中文版,到处都可以找到,或者直接到苹果公司的网站
下载,并且需要在服务器和客户端同时安装。Perl语言解析器,最低版本要求是5.0以上。QuickTime Streaming
Server与用户见面最早是在1999年,当时以其开放源代码和基于标准的实时传输协议/实时流协议(RTP/RTSP)引擎深深地动摇了流媒体工业的
基础,目前的最新版本是5.0,下载文件共9.2MB。
从地址可以免费下载,但你必须拥有Apple的注册用户名才能登录(注册是免费的),这里有Mac OS X、Red
Hat、Solaris、Windows
NT/2000/XP等版本可供选择。下载回来的是一个自解压文件,释放后执行Install.bat运行安装程序,运行过程在命令提示符窗口中完成,最
后还需要设置登录用户名、密码,如图4所示,当看到“Setup
Complete!”的提示信息时即大功告成。QT流媒体服务器建设过程和RM类似,在这里就不再赘述。
如何共享音频和视频
共享音频
前面,我们利用Winamp、SHOUTcast Server将本机架设为一台MP3流服务器,那么该如何让遍布天南海北的朋友或局域网中的同事欣赏这些美妙音乐呢?
这有两种方法:一种是打开Winamp,从“Play”菜单下选择“Location”命令,或者直接键入“Ctrl-L”组合键打开一个对话框,然后在
这里键入MP3流服务器的URL地址或者IP地址、端口号(缺省为8000),例如“”或者“”即可收听;另一种方法则更为简单,从IE中打开“”进入
Web管理页面,如图5所示,然后点击“收听”按钮就可以在线收听MP3流音乐。
共享视频
虽然苹果的QuickTime Player的市场占有率远远不如Real或Windows Media Player,但忠实的用户依然不少。而且苹果毕竟是网络流媒体的开山鼻祖,因此许多最新大片都是采用QT格式。
首先必须在机器上启动QT服务,然后通知朋友们在远程计算机中打开QuickTime。从“文件”菜单中选择“在新的播放窗口中打开URL”命令,键入
“rtsp://server/file.mov”来访问QT流服务器以实现远程播放。这里的“server”是服务器的IP地址,“file.mov”
是媒体文件名,默认的RTSP传输端口是554端口。如果网络连接没有什么问题的话,如图6所示,那么你很快就可以连接成功。
建立播放列表或点播系统
辛辛苦苦架设了一台流媒体服务器,我们还可以建立播放列表或点播系统,甚至可以进行网络直播,反正已经用上了宽带,不用也是浪费。
配置QT流媒体服务器
打开IE,在地址栏中输入“”,这里的“server”代表服务器的IP地址。如果前面的配置没有什么问题的话,很快就会进入如图7所示的管理页面,这里
以列表形式显示了当前的系统资源占用情况和相关的服务器信息。我们可以在这里查看连接到服务器的用户类型、IP地址、数据速率、数据传输量、包丢失比例、
连接时间、连接文件等内容,也可以在这里设置映射文件夹、加密传输、最大连接用户数、分配带宽、重置密码、更改端口,如果你需要的话,还可以查看错误日志
和操作日志。
创建播放列表
点击图7窗口右侧的“New MP3 Playlist”或“New
Movie
Playlist”按钮,我们可以创建一个MP3或影片的播放列表。不过这里需要说明的是,你需要将相关的媒体文件复制到C:\Program
Files\Darwin Streaming Server\Movies文件夹中才行。
如图8所示,我们可以在这里通过“Weight”旁边的小三角箭头重新调整播放列表的播放顺序,可惜的是QuickTime Streaming
Server对简体中文的支持十分差劲,显示的竟然是一些乱码字符。最后,点击窗口右下角的“Save
Changes”按钮就可以将这份新建的播放列表保存下来,以后如果需要更改的话可以选择“Edit Playlist”重新配置。
不过,如果你希望其他用户也能访问这份播放列表文件,还必须点击“Avaliable Playlists”列表框中的“Status”下的播放按钮,也就是让“Status”列的“Stopped”变为“Playing”才行。
实现网络直播
如果你还想在播放完MP3歌曲后说上一段话,那么简单的很,只要一个话筒就行了。不过,还需要在Winamp中进行一些设置,如图9所示,在“Input
Device”下拉列表框中选择“Soundcard Input”项,这样才会出现图中的SoundCard
Mixer设置项。如果使用默认的设置“Winamp(Recommended)”的话就只有Input Levels一项了,下面还有“Music
Level”、“BGMusic Level”、“Mic Level”几个滑块可以调节音量的大小,而“Fade Time”是用来设 置移出时间值。
现在,你无需进行其它设置,准备一番后,清清嗓子,点击“Push to Talk”按钮,然后再按下“Lock”按钮锁定当前话音输入模式。接下来就可以对着麦克风开始你的网络直播之旅了,结束请再次按下“Lock”按钮解锁。
Ⅲ 如何搭建一套完整的视频直播系统
一、直播的技术架汪山构:
直播视频采集SDK(PC/IOS/Anddroid)——直播CDN
(直播流分发加速)——直播视频播放器SDK(PC/IOS/Android)
二、音视频处理的一般流程:
数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示
1、数据采集:
摄像机及拾音器收集视频及音频数据,此时得到的为原始数据
涉及技术或协议:
摄像机:CCD、CMOS
拾音器:声电转换装置(咪头)、音频放大电路
2、数据编码:
使用相关硬件或软件对音视频原始数据进行编念燃码处理(数字化)及加工(如音视频困高中混合、打包封装等),得到可用的音视频数据
涉及技术或协议:
编码方式:CBR、VBR
编码格式
视频:H.265、H.264、MPEG-4等,封装容器有TS、MKV、AVI、MP4等
音频:G.711μ、AAC、Opus等,封装有MP3、OGG、AAC等
3、数据传输:
将编码完成后的音视频数据进行传输,早期的音视频通过同轴电缆之类的线缆进行传输,IP网络发展后,使用IP网络优传输
涉及技术或协议:
传输协议:RTP与RTCP、RTSP、RTMP、HTTP、HLS(HTTP Live Streaming)等
控制信令:SIP和SDP、SNMP等
4、解码数据:
使用相关硬件或软件对接收到的编码后的音视频数据进行解码,得到可以直接显示的图像/声音
涉及技术或协议:
一般对应的编码器都会带有相应的解码器,也有一些第三方解码插件等
5、播放显示:
在显示器(电视、监视屏等)或扬声器(耳机、喇叭等)里,显示相应的图像画面或声音
涉及技术或协议:
显示器、扬声器、3D眼镜等
三、常见的视频直播相关协议:
1、RTMP(Real Time Messaging Protocol,实时消息传送协议)
RTMP是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议。它有三种变种:
1)、工作在TCP之上的明文协议,使用端口1935;
2)、RTMPT封装在HTTP请求之中,可穿越防火墙;
3)、RTMPS类似RTMPT,但使用的是HTTPS连接;
RTMP协议是被Flash用于对象、视频、音频的传输。这个协议建立在TCP协议或者轮询HTTP协议之上。RTMP协议就像一个用来装数据包的容器,这些数据既可以是AMF格式的数据,也可以是FLV中的视音频数据。一个单一的连接可以通过不同的通道传输多路网络流,这些通道中的包都是按照固定大小的包传输的。
2、RTSP(Real Time Streaming Protocol,实时流传输协议)
RTSP定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP提供了一个可扩展框架,数据源可以包括实时数据与已有的存储的数据。该协议目的在于控制多个数据发送连接,为选择发送通道如UDP、组播UDP与TCP提供途径,并为选择基于RTP上发送机制提供方法。
RTSP语法和运作跟HTTP/1.1类似,但并不特别强调时间同步,所以比较能容忍网络延迟。代理服务器的缓存功能也同样适用于RTSP,并且因为RTSP具有重新导向功能,可根据实际负载情况来切换提供服务的服务器,以避免过大的负载集中于同一服务器而造成延迟。
3、RTP(Real-time Transport Protocol,实时传输协议)
RTP是针对多媒体数据流的一种传输层协议,详细说明了在互联网上传递音频和视频的标准数据包格式。RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通系统(配合H.323或SIP),使它成为IP电话产业的技术基础。
RTP是建立在UDP协议上的,常与RTCP一起使用,其本身并没有提供按时发送机制或其它服务质量(QoS)保证,它依赖于低层服务去实现这一过程。
RTP 并不保证传送或防止无序传送,也不确定底层网络的可靠性,只管发送,不管传输是否丢包,也不管接收方是否有收到包。RTP 实行有序传送,RTP中的序列号允许接收方重组发送方的包序列,同时序列号也能用于决定适当的包位置,如在视频解码中,就不需要顺序解码。
4、RTCP(Real-time Transport Control Protocol,实时传输控制协议)
RTCP是RTP的配套协议,为RTP媒体流提供信道外的控制。RTCP和RTP一起协作将多媒体数据打包和发送,定期在多媒体流会话参与者之间传输控制数据。
RTCP的主要功能是为RTP所提供的服务质量(QoS)提供反馈,收集相关媒体连接的统计信息,例如传输字节数,传输分组数,丢失分组数,单向和双向网络延迟等等。网络应用程序可以利用RTCP所提供的信息来提高服务质量,比如限制流量或改用压缩比小的编解码器。
Ⅳ 直播系统源码是如何实现视频直播以及直播系统搭建的
一、手机直播系统源码开发实现视频直播主要有以下四步:
1)前端采集编码设备:提供直播信号源的采集和编码压缩功能,并将信号推送到直播流媒体服务器上。
2)直播流媒体服务器:负责直播流的发布和转播分发功能。
3)WEB服务器:实现直播节目在终端上的展现。
4)终端设备:包括PC和移动终端。编码和协议 是实现直播的重要环节:1)网络协议:主要有3种 a. RTSP(Real Time Streaming Protocol)是用来控制声音或影像的多媒体串流协议, 由Real Networks和Netscape共同提出的;b. RTMP(Real Time Messaging Protocol):实时消息传送协议是Adobe公司为Flash播放器和服务器之间音频、视频和数据传输 开发的开放协议;c. HLS(HTTP Live Streaming):是苹果公司(Apple Inc.)实现的基于HTTP的流媒体传输协议; 2)视频编码: Mpeg4, H264等 3)音频编码: Mp3, AAC等4)视频分辨率: 标清通常指的是640×480(或768×480);高清指的是1280×720;全高清指的是1920×1080;超高清3840×2160。
二、直播系统源码搭建服务器部署重点
直播系统源码有哪几块组成,视频直播的过程一般可以分为采集、前处理、编码、传输、解码、渲染这几个环节,经过这几个环节之后,我们就可以通过PC端或者移动端进行视频直播的观看。直播系统在搭建时会用到多个业务服务器,共同完成直播系统的业务逻辑流程。通常在服务器部署时会采用动静分离分布式部署方式,保障了直播平台的稳定运行。主要用到以下的业务服务器。
1)消息服务器:主要用于消息推送,给用户推送房间聊天消息、私信消息。
2)业务服务器:手机直播的业务部分、好友关系、直播管理、货币系统、礼物系统等。
3)视频服务器:视频直播、点播、转码、存储和点播等。
4)IM即时聊天:使用Node.js服务自主搭建部署聊天服务器。
5)视频流(流媒体服务器):建议采用第三方CDN,开通账号即可使用。关于CDN方面的内容,我们会在以后的内容中做重点介绍。
6)业务服务器:网站逻辑基于php-tlinkphp、thinkcmf、mysql、redis。MYSQL 服务提供静态数据的存储,REDIS 服务提供数据的缓存、存储动态数据。
以上便是对直播系统源码如何实现视频直播以及搭建服务器的简单介绍。搭建直播开发平台之前就是找到一款优质的直播系统源码,直播系统源码开发原理比其他软件更加复杂,而且相对于技术以及其他方面都会有一定的要求。直播系统源码的稳定性和安全性决定了后期搭建出的直播平台的流畅度、高并发承载及用户的产品体验,所以选择直播源码的时候一定不要为了贪图价格便宜,而选择安全性低,系统功能不会正常更新,bug一堆的源码。直播系统源码的开发需要经过推流端(采集、前处理)、服务端处理(编码、转码、录制、截图、鉴黄)、播放器(拉流、解码、渲染和互动系统)。望采纳,谢谢
Ⅳ 怎么进行直播间搭建啊
1、摄像头:因为快手目前还是手机直播,所以安卓苹果旗舰二选一就行了。淘宝直播可以选择罗技系列:罗技c1000e,c920(初期完全够用),薇娅等大主播用的是天创恒达830,SDI线用秋叶原。但是请注意:淘宝平台初期最高只给720P,只有达到一定体量后淘宝才会给1080P高清的推流。不论你用的设备再怎么高清,最终观众看到的,也就是720p的分辨率,同理对于直播新手来说,USB高清视频采集卡之类的装备也是用不上的
2、麦克风:C1000E自带的完全足够了。不差钱的时候再买贵的就行
3.支架:云腾690+落地or桌面支架1个
4.灯光:两边各一个150w的补光灯(球形柔光罩)作为辅助灯。中间一个200w作为主灯(柔光箱)。品牌用金贝。至于顶灯可以用白灯,光线充足即可(不是规模大的直播间也不需要专门的去做顶灯,平常用的不暗就行了)
5.直播电脑:最新配置,5000块的完全够用
Ⅵ rtsp流浏览器播放方案
rtsp流在主流浏览器并不支持直接播放。比如大华的视频流:rtsp://admin:123456@
192.168.10.129/cam/realmonitor?channel=1&subtype=0,用vlc可以直接播放。但在浏览器会报ERR_UNKNOWN_URL_SCHEME。那如何在浏览器中播放呢哗备。
以下列出几种方案。
1、安装插件(chrome最新版基本都不支持)
类如:kurento,vlc插件(谷歌浏览器版本41以下),vgx插件(不支持高版本,chrome72.0版本可用)等。
2、安装软件(中间件,基本都付费)
类如:Appemit(调用vlc插件播放rtsp),可以免安装的,目前只能windows,免费版会有提示。
猿大师中间件(底层调用VLC的ActiveX控件,实现在主流浏览器网页中内嵌播放多路RTSP的实时视频流),中间件收费的。
PluginOK(牛插乱行毁)中间件。底层调用ActiveX控件VlcOcx.dll。(商业用途需付费使用)
3、服务器拉流转发及协议转换
示意图如下所示:
推流--------------服务器转发--------------拉流
方法一览:
a,vlc软件串流到http协议 ,网页显示几个视频需启动几个vlc,只适合应急场景。
b,html5 + websocket_rtsp_proxy 实现视频流直播 ,基于MSE(Media Source Extensions,W3C),扩展H5的功能。
步骤:服务器安装streamedian服务器,客户端通过video标签播放。
原型图:
价格:
c.基于nginx的rsmp转发
基于nginx实现rtmp转化,用flash实现播放。由于flash目前大多浏览器默认禁用,不推荐此方式。
步骤:安装ffmpeg工具,安装nginx。
另外nginx-rtmp-mole也支持HLS协议,可以搭建基于hls的直播服务器。
d.rtsp转hls播放带猛,通过ffmpeg转码
步骤:安装ffmpeg工具,ffmpeg转码。
形如:
ffmpeg -i "rtsp://admin:[email protected]/cam/realmonitor?channel=1&subtype=0" -c -f hls -hls_time 2.0 -hls_list_size 0 -hls_wrap 15 "D:/hls/test.m3u8"
缺点是直播流延时很大,对实时要求比较高的不满足要求。
案例:基于EasyDarwin拾建转码服务器。参考地址:https://blog.csdn.net/jyt0551/article/details/84189498
通过存储的m3u8去读取。
e.websocket代理推送,FFMPEG转码
此方法与a,b类似。但更实用。
以下提供两种方案:
(1)Gin+WebSocket+FFMPEG实现rtsp转码,参考:https://juejin.cn/post/6844904024072798216
通过FFMPEG把rstp转成http,ginrtsp作为转发服务器,但需要自己写相应接口,需要了解go语言。
(2)node + ffmpeg + websocket + flv.js,参考:https://juejin.cn/post/6908641550046068744
步骤:在node服务中建立websocket;通过fluent-ffmpeg转码,将RTSP 流转为flv格式;通过flv.js连接websocket,并对获取的flv格式视频数据进行渲染播放。
import WebSocket from 'ws'import webSocketStream from 'websocket-stream/stream'import ffmpeg from 'fluent-ffmpeg'// 建立WebSocket服务const wss = new WebSocket.Server({ port: 8888, perMessageDeflate: false })// 监听连接wss.on('connection', handleConnection)// 连接时触发事件function handleConnection (ws, req) { // 获取前端请求的流地址(前端websocket连接时后面带上流地址) const url = req.url.slice(1) // 传入连接的ws客户端 实例化一个流 const stream = webSocketStream(ws, { binary: true }) // 通过ffmpeg命令 对实时流进行格式转换 输出flv格式 const ffmpegCommand = ffmpeg(url) .addInputOption('-analyzeration', '100000', '-max_delay', '1000000') .on('start', function () { console.log('Stream started.') }) .on('codecData', function () { console.log('Stream codecData.') }) .on('error', function (err) { console.log('An error occured: ', err.message) stream.end() }) .on('end', function () { console.log('Stream end!') stream.end() }) .outputFormat('flv').videoCodec('').noAudio() stream.on('close', function () { ffmpegCommand.kill('SIGKILL') }) try { // 执行命令 传输到实例流中返回给客户端 ffmpegCommand.pipe(stream) } catch (error) { console.log(error) }}
优点全部基于js。前端即可搞定。
参考:https://www.hu.com/question/29973696
Ⅶ 记:rtmp,rtsp,http视频流播放
rtmp的视频流使用video-js插件即可直接播放。
rtsp的视频流无法直接樱族在浏览器端播放,http的视频流工作中需要播放格式为mjpeg的视频流,所以,也无法直接播放。
通过使用插件vlc可以使以上两类视频流直接播放,即在电脑上安装vlc插件,播放视频时打开该插件,并且播放好友时浏览器版本不可使用新版本的,我使用的是chrom 30.0可以正常播放这两类视频。
如果有用户名密码,可以在协议后方加入。
但由于使用插件及浏览器版本限制,这种方式并不是首选,只能用作备用。
rtsp视频流播放可以依据下方链接, 搭建nginx服务器 ,将rtsp流转成rtmp流脊袜弊后进行播放。