直播时代--IOS直播客户端SDK,美艳直播【开源】

看到该文章我非常喜欢,为了方便自己查看和参考所以将其复制过来,源文地址:http://www.cnblogs.com/runner42/p/5241407.html

请支持原作者。原作者如看到请原谅复制您的,纯属为了方便查阅。

当前视频直播非常火爆,手机端的视频直播也非常火爆,PGC、UGC的视频直播门槛都降低了很多。

本文介绍一个:IOS 客户端直播的SDK,代码完全开源。

直播时代:让IOS普通开发者一天内做出一个RTMP直播客户端,并且带有美艳直播功能。(文章最下面有github源码地址)

包含一下功能:

1, 提供IOS苹果手机的RTMP推流;

填写RTMP服务地址,直接就可以进行推流。

2,美颜直播

美不美都能装的直播,IOS OPENGL美艳加速,手机完全不发烫。

3,前后摄像头随时切换

4,提供RTMP连接状态的回调

一,首先简单扫盲

当前直播都是用RTMP协议,推流到RTMP服务器。

然后RTMP服务器提供RTMP视频服务;

当然通常RTMP服务器也提供HLS,把视音频流切片成ts流,然后用户可以直接播放xxx.m3u8的流媒体。

二,SDK使用简介

1,初始化

[LiveVideoCoreSDK sharedinstance]:全局独立的SDK实例,你不用管理对象的申请和释放;

初始化RTMP连接和视频参数,非常简单:

[[LiveVideoCoreSDK sharedinstance] LiveInit:RtmpUrl Preview:self.view VideSize:LIVE_VIEDO_SIZE_CIF BitRate:LIVE_BITRATE_500Kbps FrameRate:LIVE_FRAMERATE_20];

参数:

RtmpUrl: rtmp服务器地址参数,如rtmp://192.168.30.191/live/123456

Preview: IOS本地预览显示的UIVIEW对象,现在都喜欢全屏直播模式,这里直接用self.view

VideSize: 视频分辨率。这里提供了几种视频分辨率,CIF(320*640),D1(540*960),720P(720*1280)

BitRate: 视频码率。有500kbps对应CIF,800kbps对应D1, 2Mbps对应720p,怎么配置就看你手机当前的带宽情况了。

FrameRate: 视频帧率。这个决定视频流畅程度,帧率越高越流畅。这里提供:15帧/s,20帧/s,25帧/s,20帧/s

2,连接RTMP视频服务器

[[LiveVideoCoreSDK sharedinstance] connect];

调用这个接口后,开始打开iphone本地手机预览,并且开始连接RTMP服务器。

如果网络没有问题,RTMP服务器没有问题,直播就开始了,简单吧!

3,设置滤镜:提供美艳效果

- (void)setFilter:(LIVE_FILTER_TYPE) type;

当前提供了美白效果,设置一个LIVE_FILTER_BEAUTY这个参数,看看你有多美白。

4,设置前后摄像头

- (void)setCameraFront:(Boolean)bCameraFrontFlag;

前后摄像头随时动态切换,想怎么拍就怎么拍。

5,设置RTMP连接状态回调

[LiveVideoCoreSDK sharedinstance].delete = self;

在你的viewcontroller中实现协议:LIVEVCSessionDelegate,如下,这样你可以随时知道RTMP连接的状态了。

//rtmp status delegate:

- (void) LiveConnectionStatusChanged: (LIVE_VCSessionState) sessionState{

dispatch_async(dispatch_get_main_queue(), ^{

switch (sessionState) {

case LIVE_VCSessionStatePreviewStarted:

_RtmpStatusLabel.text = @"RTMP状态: 预览未连接";

break;

case LIVE_VCSessionStateStarting:

_RtmpStatusLabel.text = @"RTMP状态: 连接中...";

break;

case LIVE_VCSessionStateStarted:

_RtmpStatusLabel.text = @"RTMP状态: 已连接";

break;

case LIVE_VCSessionStateEnded:

_RtmpStatusLabel.text = @"RTMP状态: 未连接";

break;

case LIVE_VCSessionStateError:

_RtmpStatusLabel.text = @"RTMP状态: 错误";

break;

default:

break;

}

});

}

6,直播结束,断开rtmp连接

[[LiveVideoCoreSDK sharedinstance] disconnect];简单吧,不解释了。

GitHub地址: https://github.com/runner365/LiveVideoCoreSDK

时间: 2024-10-12 04:41:29

直播时代--IOS直播客户端SDK,美艳直播【开源】的相关文章

2017全民直播时代的终结还是来了?

互联网时代,总是能够催生出各种名目繁多的浪潮或者"新时代".只有在一股脑的蜂拥而上劲头过后,才能看到其本质.此前的全民做电商时代,最终是个人小店被淘汰出局,只剩下资本雄厚的品牌大鳄或成长起来的电商小品牌.而目前炒得火热的全民直播时代,也逐渐呈现出虚火过旺的一面,开始走了下坡路. 当下,全民直播时代在快速过度到经纪公司.公会等执掌"天下"的时代.后者在培养大主播上的天价投入.积累的丰富经验.垄断性的流量和粉丝数等,都将成为小主播群体发展起来的"拦路虎&quo

转: 如何选CDN:互联网大直播时代的CDN选择指南

from:  http://www.chnvideo.com/blog-classic-cdn.html SRS 编码器 如何选CDN:互联网大直播时代的CDN选择指南 CDN是一个服务型的公司,也就是服务+技术.一般的说法是,CDN的技术只是扯逼用的,服务才是一切.在技术没有差异化的图文时代,用运维和客服就可以搞定一切:在视频能造成技术差异化的时代,还行得通吗?不必用嘴巴打架,以下功能要求,是结合在CDN两年的工作经验,还有最近这两年所听到的各家CDN还有各种客户对开源软件提的要求.对于一个流

如何选CDN:互联网大直播时代的CDN选择指南

转: 如何选CDN:互联网大直播时代的CDN选择指南 from:  http://www.chnvideo.com/blog-classic-cdn.html SRS 编码器 CDN是一个服务型的公司,也就是服务+技术.一般的说法是,CDN的技术只是扯逼用的,服务才是一切. 在技术没有差异化的图文时代,用运维和客服就可以搞定一切:在视频能造成技术差异化的时代,还行得通吗?不必用嘴巴打架,以下功能要求,是结合在CDN两年的工作经验,还有最近这两年所听到的各家CDN还有各种客户对开源软件提的要求.

Spydroid还是大牛直播内置RTSP服务SDK

废话不多说,先列二者功能: 1. Spydroid: The stream can be directly read by VLC which is great because VLC is a very powerful tool, for example you can really easily record the stream in a file. [FAQ See the FAQ to find out how]. You can enable/disable sound or vi

从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直播程序员写代码> 来介绍它. Livecoding.tv是在2015年2月在美国正式上线的.公司的总部位于旧金山,创办人也是一位程序员. 网上直播已经不是新鲜事了,但正儿八经地直播程序员写代码确实少见.难怪品玩的编辑在他的文章中这样写道:"这么逗的一个东西,你跟我说它是一个教育平台?呃,然而好

基于anyrtc的sdk实现直播连麦互动

基于anyrtc的sdk实现直播连麦互动 前言 1.由于粘贴了较大的代码,造成内容比较长,可能会花费您较长的时间. 2.项目里面没有做权限判断,所以如果发现有页面发生崩溃可能是权限没有打开,请打开权限后再进行尝试. 3.录制的GIF画质好差,真实环境很好. 一.有图有真相 主播端 :     http://d2.freep.cn/3tb_160831194207x8fa572812.gif 游客端 : http://d3.freep.cn/3tb_160831194126nt2e572812.g

游戏录屏直播的图文教程(基于云直播平台)

原创教程 ( 转载请注明出处 ) 2017-6-26,今天来做一下是电脑游戏桌面录屏直播的教程,就是把桌面的游戏直播出去,加上话筒做讲解.最终实现在电脑.手机.微信中都可以观看到游戏的直播和讲解画面. 提示:1. 本教程说的是游戏录屏直播的图文教程(基于云直播平台,不是基于自建流媒体直播平台) 2. 若要基于自建的流媒体平台,可以用OBS之类的软件来实现,OBS取流发送到自建平台上,实现直播. STEP1 . 硬件准备及设备连接 场景说明: 1.用户做一场电脑游戏桌面直播,实现PC端.手机端(A

直播APP开发是怎么搭建的直播平台?

直播的热潮从未退去,直播APP开发也随着直播的兴起火爆起来,这项实现了无数人"镜头下的梦想"的技术到底是怎样搭建起直播平台的呢? 直播APP开发的基础是直播源码,在直播源码搭建出下,直播APP开发才将直播平台转化未现实,具体步骤如下: 1.采集 采集的技术难度与设备息息相关.一般来说,iOS系统的设备采集是比较简单的,而Android设备则要做些机型适配工作,最麻烦的是传统PC上的各种奇葩摄像头驱动.所以一般会建议放弃PC只支持手机主播,从实际应用来看,也确实没有用电脑摄像头直播的必要

开源高效的直播源码,为您解析直播系统功能

随着直播行业的迅猛发展,直播平台如同雨后春笋般生长起来.做的人多了,自然就会有人有疑问,直播系统怎么开发呢?小编来带您深入了解直播平台,并为您解答! 现在使用最多的直播平台算是手机直播APP了!那么直播系统怎么开发?我们先来看下APP的功能. 1.视频直播功能,这是一款直播App最主要的功能,要能支持视频直播RTMP推流,使画传输流畅.清晰.  2. 聊天功能,用户之间的互动聊天,包括文字和表情.   3. 互动功能,用户与主播间的互动,点亮个灯,送一束花等等 4. 支付&提现功能,用户用现金购