绝对独创---关于直播(推流-拉流-服务器搭建)

1.公司有风声要做直播,赶好这段有时间,自己研究了一下.其实走过的弯路比较多,后来在拉流/推流/服务器搭建都完成之后,思路变得很清晰.

2.首先从服务器搭建说起,关于三种主流的HLS/RTMP/FLV,这里我使用的是RTMP,关于其中的切换,我们需要看一下ngnix的配置文件的相关参数文档.

我使用的是ngnix+rtmp,也就是本地搭建ngnix服务器,另外在ngnix服务器上添加了rtmp的模块.闭门造车容易猝死,我参考的是简书上的,请移步:http://www.jianshu.com/p/5ee84e403ea8

参照上边链接中几个注意点:

1):当你对于linux的命令行熟练运用的时候,homebrew确实好用.

2):

这一步骤有可能会一直提示失败,但是多尝试几次,就会成功.

3):

注意自己安装的ngnix版本,进行查看

4):当你完成了nginx配置rtmp之后,上边链接后续的部分可以忽略.

3.推流,推流我使用的是LFLivePlayer开源框架,使用极其简单,并且功能比较完善

截取最主要的代码:

1):LFLiveSession是核心类,可以重点研究其属性与方法,使用方式简单.

4.拉流,拉流我使用的是IJKMediaFramework,使用及其简单,并且功能完善

截取最主要的代码:

1):IJKFFMoviePlayerController是核心类,使用简单.

5.程序截图

1.推流端:

2.拉流端:

6.感谢

感谢简书作者 满山李子 的mac上搭建直播服务器nginx这么好的文章

感谢LFLivePlayer以及IJKMediaFramework的作者,以及对开源社区做出贡献的IT码农.

7.附言

Demo请email     sunny_1v@163.com

时间: 2024-08-27 13:11:59

绝对独创---关于直播(推流-拉流-服务器搭建)的相关文章

【转】Red5流服务器搭建(实现在线直播,流媒体视频播放和在线视频会议)

来自:http://blog.csdn.net/sunroyi666/article/details/52981639 一. 先介绍一下流媒体技术:所谓流媒体技术,是指将连续的影像和声音信息经过压缩处理后放在网站服务器上,让用户能够一边下载一边观看.收听(即所谓的"在线欣赏"),而不需要等整个压缩文件下载到自己的机器上才可以欣赏的网络传输技术. 一般来说,一个完整的流媒体服务系统需要三个部分组成:编码器.流服务器和播放器.. 编码器通过对内容来源(如MP3文件或者麦克风输入)进行编码,

iOS简单直播实现(三:IJKMediaFramework拉流)

推流完成后,需要拉流才能进行完整的直播.拉流我们采用的也是一个开源的第三方库IJKMediaFramework. 这个库本质是一个播放器,能播放flv格式的播放器.用起来和ios自带的AVPlayer很相似. 实现功能:1.拉流播放.2.监听. 一.创建占位图和卡顿占位动效,代码如下: //直播前的占位图片- (UIImageView *)placeHolderView { if (!_placeHolderView) { _placeHolderView = [[UIImageView all

【转】直播流程,视频推流,视频拉流,简介,SMTP、RTMP、HLS、 PLPlayerKit

原:https://www.cnblogs.com/baitongtong/p/11248966.html 1 .音视频处理的一般流程: 数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示1.数据采集:摄像机及拾音器收集视频及音频数据,此时得到的为原始数据涉及技术或协议:摄像机:CCD.CMOS拾音器:声电转换装置(咪头).音频放大电路2.数据编码:使用相关硬件或软件对音视频原始数据进行编码处理(数字化)及加工(如音视频混合.打包封装等),得到可用的音视频数据涉及技术或协议:编码

直播-拉流和推流概述 转载

拉流(播放): 根据协议类型(如RTMP.RTP.RTSP.HTTP等),与服务器建立连接并接收数据: 解析二进制数据,从中找到相关流信息: 根据不同的封装格式(如FLV.TS)解复用(demux): 分别得到已编码的H.264视频数据和AAC音频数据: 使用硬解码(对应系统的API)或软解码(FFMpeg)来解压音视频数据: 经过解码后得到原始的视频数据(YUV)和音频数据(AAC): 因为音频和视频解码是分开的,所以我们得把它们同步起来,否则会出现音视频不同步的现象,比如别人说话会跟口型对不

直播系统搭建:拉流端的三个环节及服务器部署重点

拉流端的三个环节 1. 用户想看直播就要去服务器进行拉流,什么是拉流?你打开视频网站,点击视频,你点击视频和视频打开之间的时间段,就是你的客户端去向服务器请求拉流了,这一步要注意的是首屏开启时间,时间越短,观众越有可能被留下. 2. 有编码就要有解码,编码上会出现安卓适配问题,那解码上当然也会出现该问题,网络视频直播系统自带编解码程序的优势就在于它能够避免因手机机型不同,视频格式不同而产生的不同机型无法播放的情况. 3. 渲染环节交给手机就可以了,播放之后用户就可以进行观看了. 直播系统源码搭建

直播推流之blibli和拉流LFLiveKit

执行上面操作后,导入合成的拉流blibli包到工程中,然后新建个播放控制器来设置播放 1.  播放的一些操作. 2. 高斯模糊. 3. 新建聊天控制器. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. [self initPlayer];//添加播放器 [self loadUI]; //添加高斯模糊 [self loadChatVC

推流和拉流的概念以及RTMP和HLS协议

https://www.bbsmax.com/A/x9J2wZM56o/ 推流为将直播内容推送至服务器的过程:拉流为服务器已有直播内容,用指定地址进行拉取的过程. rtmp rtmp是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写.该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种.RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进

直播系统推拉流端技术

想要搭建网络视频直播系统就要明白视频直播的过程是什么样的,而直播流程可以分为采集.前处理.压缩编码.推流.拉流.解码.渲染播放这几个环节,其中涉及到推流端.拉流端和服务器三端的知识点,服务器方面的知识点很多,拓幻科技这里先简单说下推流端和拉流端的一些知识点,服务器方面可以先看我以前写的文章. 一. 推流端的四个环节1. 首先是采集环节:采集是指对图像和声音的采集,简单说就是能让网络视频直播系统和主播摄像头连起来,软件能获取到外界的音视频信息.然后是前处理阶段:这里也是俗称美颜的阶段,这要求我们在

极速搭建RTMP直播流服务器+webapp (vue) 简单实现直播效果

在尝试使用webRTC实现webapp直播失败后,转移思路开始另外寻找可行的解决方案.在网页上尝试使用webRTC实现视频的直播与看直播,在谷歌浏览器以及safari浏览器上测试是可行的.但是基于基座打包为webapp后不行,所以直播的话建议还是原生的好.HBuilder自带的H5+有提供了原生的视频播放和推流录制上传,但是需要有一个rtmp直播流服务器,用于测试和开发,这时就需要自建rtmp服务推流了. 极速搭建简单RTMP直播流服务器 开发环境:macOS 需要安装并启动docker:??