Mac搭建Nginx流媒体服务器,进行推流,拉流

Mac搭建Nginx流媒体服务器,进行推流,拉流,第1张

Nginx 是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择

下面介绍如何在Mac上搭建流媒体服务器,以便后续的自己研究的项目或者demo向服务器上进行推流

首先需要安装brew,brew是一款管理软件的第三方平台,安装的方式也很简单,请自行查阅安装方式

执行下面2句命令,即可安装rtmp推流的nginx服务器

执行完后,可以查看ngix安装在哪里

可以看到M1 是安装在这个目录下/usr/local/etc/nginx

打开这个目录,可以看到有个nginx.conf文件,这里就是服务器的一个配置文件,如果支持rtmp,则里面的内容会有一个rtmp的json

这个json说明:

1.你本地的nginx服务器会监听1935端口号,

2.服务器会创建一个mytv的程序

后续你可以向这个地址进行推流,并且进行拉流播放

后面我们会使用ffmpeg向这个地址推流

rtmp://localhost:1935/mytv/room

并且用vlc拉取这个地址的流进行播放

执行命令,即可启动nginx服务器

验证是否启动成功,只需要在浏览器中访问下以下链接

在浏览器地址栏输入: http://localhost:8080

出现Welcome to nginx ,代表nginx安装成功了。

打开配置文件 /usr/local/etc/nginx/nginx.conf

这里推的是flv流,可以正常推,这里需要注意的是服务器地址一定要写正确,我的nginx.conf里application配置的是mytv,所以路径就是mytv,room则是随便写都行,代表向程序mytv下的room文件推流

然后电脑上打开vlc这个播放器软件 点击File---->Open Network 在弹出来的框中选择Network然后输入URL:

验证时,推流的文件最好搞大点,不然一下推完了,你才去拉取播放,则播放不了,因为这是实时的

vlc使用如下

3.点击播放即可

可以看到左边是画面,右边是ffmpeg在推流

参考: https://www.jianshu.com/p/cf74a34af15d

是媒体播放器

所谓流媒体技术,是指将连续的影像和声音信息经过压缩处理后放在网站服务器上,让用户能够一边下载一边观看、收听(即所谓的“在线欣赏”),而不需要等整个压缩文件下载到自己的机器上才可以欣赏的网络传输技术。目前,在这个领域中的竞争者主要有微软、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服务。这时系统会自动连接到http://yp.shoutcast.com服务器,接下来请返回图1窗口点击“Connect”按钮。如果连接成功,该按钮会变为“disconnect”字样,这样我们就完成了在本机架设MP3流服务器的全部过程。

架设REAL格式的视频点播中心

如果是架设视频点播服务器,那么选择Real格式是非常明智的。因为RealProducer Plus这款功能强大的软件操作相当简单,每次使用时会弹出一个向导对话框进行操作提示。目前最新版本是10.0,我们只要选择8.5.1以上的版本即可。

从“工具”菜单下选择“创建网页”命令,此时会弹出一个如图2所示的向导式对话框,点击“前进”按钮选择你希望用于创建Web页面的Real多媒体文件。随后RealProducer会询问是创建“弹出式播放器”还是“嵌入式播放器”,一般建议选择后者,因为这样所需要的系统资源更低,当然启动速度也更快。至于播放器的界面,可以选择“标准播放器”,很快就可以创建成功。

最后,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。

从http://developer.apple.com/darwin/projects/streaming/地址可以免费下载,但你必须拥有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),例如“http://192.168.0.1:8000”或者“http://61.277.1.24:8000”即可收听;另一种方法则更为简单,从IE中打开“http://192.168.0.1:8000”进入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,在地址栏中输入“http://server:1220”,这里的“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”按钮解锁。

是的,Mac可以播放双杜比(Dolby)视频。事实上,macOS 10.13版本以上支持在其中运行的流媒体应用程序中播放双杜比音频,同时,macOS 10.15版本以上也支持播放片段内双杜比(Dolby)格式的视频文件。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/372059.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存