首页 > 应用开发 > IT综合 > 交友直播APP源码开发中,服务端与客户端的环境搭建
服务端与客户端的区别是什么?简单地说:一般客户端负责和用户的交互,也就是屏幕显示(UI/UE),服务端负责数据存储,也就是你的用户数据,而计算能力,客户端和服务端一般各负责一部分。
1、服务端
在部署服务端环境其实包含很多东西的,最常用的web服务nginx,数据库Mysql、Nosql,api开发最多的三种选择:
java环境,需要jdk,tomcat/jboss
php环境,需要安装php,odp
lua环境,需要安装lua、luajit
考虑使用缓存技术,则主要包含redis和memcached。如果还要其他的日志统计(kafka什么的)需求则还需要更多的环境,我们这里不讨论,只是简单叙述
对于直播而言,我们需要部署两个东西,nginx(含nginx-rtmp-module)、ffmpeg,这两个是直播服务端的关键,下面我们简单讲述如何安装nginx(含nginx-rtmp-module)和ffmpeg以及如何配置nginx.conf。
首先安装nginx和nginx-rtmp-module,在安装nginx的时候,会需要openssl、pcre、zlib这几个库。cd 进入nginx解压目录
其中–prefix是指安装后nginx的目录,–with-pcre需要pcre库,/path/to/your/pcre/是指的pcre源代码路径,其他的同理。–add-module=/path/to/your/nginx-rtmp-module 这个是添加nginx-rtmp-module,将nginx-rtmp-module嵌入到nginx中,这样是nginx的强大之处-插件功能。
如果安装成功后会,在终端中输入 ffmpeg -version会显示相关的信息。如果没有则可能没有安装成功。
安装完成之后我们来看看nginx.conf的配置信息。
其中http相关的标签我这边不做详细的介绍。下面我们看看rtmp标签,rtmp标签的意思是声明一个 RTMP 实例。在rtmp标签下面有server,它的意思是给 NGINX 添加一个监听端口以接收 RTMP 连接。
application标签是创建一个 RTMP 应用,application名的模式并不类似于 http location。
2、客户端
部署客户端环境:在android平台,编译导入android studio等等过程是很复杂的,ios平台还好。
播放流程的解析:
解码,缩放,时间基线选择,缓存队列,画面渲染,声音播放等等。
整合数据是为了将音频数据和视频数据添加到相应的队列中,以便播放使用,针对音视频中一些基本参数的,做解码,播放速度控制,音视频同步等等。
3、直播服务器配置:
直播服务器的各方面参数配置要看直播平台用户的注册数量,要能够满足用户在线的良好体验为基准。举例来说,480P高清视频码率一般可以受用4-8MBPS的带宽,而每天总计有200人在线,且同时有20人在线,要保证不会卡顿,那么视频的比特率要在600KBPS以上,20个人一起在线播放,就需要0.6*20=12Mbps带宽,这样才能够保证完全济的进行播放。如果是国内的直播,那么服务器配置没办法具体到哪个省市,建议选择多线路的服务器。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980878/viewspace-2749980/ ,如需转载,请注明出处,否则将追究法律责任。