-
Notifications
You must be signed in to change notification settings - Fork 271
KSYGPUStreamerKit_Guide
Franken Zeng edited this page May 26, 2017
·
8 revisions
KSYGPUStreamerKit 主要是将本SDK推流提供的组件化API组合到一起,将模块连接的底层工作屏蔽掉了。
同时提供了一些添加水印等工具功能。
KSYGPUStreamerKit提供了组件化API的示例,从v1.8.0开始开源KSYGPUStreamerKit,并停止blockDemo的维护。所有blockDemo的调用,都可以在KSYGPUStreamerKit中找到对应的示例。
开源代码请见
KSYGPUStreamerKit实现了基础的音视频采集、处理、编码和推流工作。如果希望其他个性化的操作:
- 支持在线url,用于背景音播放;
- 画中画推流
- 录制播放画面
- 背景图推流
请移步:多种开源kit代码
如果你有其他场景需要kit代码示例的,请开issue说明
为了避免API重复封装,使用KSYGPUStreamerKit时,一些比较少用的操作还是通过其内部的组件成员进行的。
- 视频采集相关的属性查询和操作可以通过 kit.vCapDev 进行
- 音频采集相关的属性查询和操作可以通过 kit.aCapDev 进行
- 图像处理相关的滤镜,可以通过 kit.filter 进行,kit.filter 是通过 kit.setupFilter设置进来的
- 预览相关的,可以通过 kit.preview进行
- 背景音乐相关,可以通过 kit.bgmPlayer
- 混音相关操作,可以通过 kit.aMixer
- 图像混合的相关操作,可以通过 kit.vMixer
- 推流相关的操作, 可以通过 kit.streamerBase 进行
- 先构造kit类的实例
KSYGPUStreamerKit * kit = [[KSYGPUStreamerKit alloc] initWithDefaultCfg];
此时kit类已经配置好了一系列的默认参数,如果默认参数不能满足要求,可以再启动采集和推流前修改即可。
[kit startPreview:self.view];
传入的视图作为预览视图的容器, 预览视图会填满self.view并置于底部.
NSString *rtmpSrv = @"rtmp://test.uplive.ksyun.com/live/888";
NSURL* _hostURL = [[NSURL alloc] initWithString:rtmpSrv];
[kit.streamerBase startStream:_hostURL];
[kit.streamerBase stopStream];
[kit.streamerBase stopPreview];
[kit focusAtPoint:point];
[kit exposureAtPoint:point];
[kit setPinchZoomFactor:zoomFactor];