Skip to content

KSYGPUStreamerKit_Guide

Franken Zeng edited this page May 26, 2017 · 8 revisions

KSYGPUStreamerKit 使用说明

KSYGPUStreamerKit 主要是将本SDK推流提供的组件化API组合到一起,将模块连接的底层工作屏蔽掉了。
同时提供了一些添加水印等工具功能。

1. 代码开源

KSYGPUStreamerKit提供了组件化API的示例,从v1.8.0开始开源KSYGPUStreamerKit,并停止blockDemo的维护。所有blockDemo的调用,都可以在KSYGPUStreamerKit中找到对应的示例。
开源代码请见

1.1 其他kit

KSYGPUStreamerKit实现了基础的音视频采集、处理、编码和推流工作。如果希望其他个性化的操作:

  • 支持在线url,用于背景音播放;
  • 画中画推流
  • 录制播放画面
  • 背景图推流

请移步:多种开源kit代码

如果你有其他场景需要kit代码示例的,请开issue说明

2. kit类中的子模块

为了避免API重复封装,使用KSYGPUStreamerKit时,一些比较少用的操作还是通过其内部的组件成员进行的。

  • 视频采集相关的属性查询和操作可以通过 kit.vCapDev 进行
  • 音频采集相关的属性查询和操作可以通过 kit.aCapDev 进行
  • 图像处理相关的滤镜,可以通过 kit.filter 进行,kit.filter 是通过 kit.setupFilter设置进来的
  • 预览相关的,可以通过 kit.preview进行
  • 背景音乐相关,可以通过 kit.bgmPlayer
  • 混音相关操作,可以通过 kit.aMixer
  • 图像混合的相关操作,可以通过 kit.vMixer
  • 推流相关的操作, 可以通过 kit.streamerBase 进行

3. kit类使用示例

  • 先构造kit类的实例
KSYGPUStreamerKit * kit = [[KSYGPUStreamerKit alloc] initWithDefaultCfg];

此时kit类已经配置好了一系列的默认参数,如果默认参数不能满足要求,可以再启动采集和推流前修改即可。

3.1 启动采集

[kit startPreview:self.view];

传入的视图作为预览视图的容器, 预览视图会填满self.view并置于底部.

3.2 启动推流

NSString *rtmpSrv  = @"rtmp://test.uplive.ksyun.com/live/888";
NSURL* _hostURL = [[NSURL alloc] initWithString:rtmpSrv];
[kit.streamerBase startStream:_hostURL];

3.3 停止推流

[kit.streamerBase stopStream];

3.4 停止采集

[kit.streamerBase stopPreview];

3.5 摄像头自动对焦

[kit focusAtPoint:point];

3.6 摄像头自动曝光

[kit exposureAtPoint:point];

3.7 摄像头焦距缩放

[kit setPinchZoomFactor:zoomFactor];

1. 推流环节说明

2. 特色功能说明

2.1 采集

2.2 音频处理

2.3 视频处理

2.4 编码

2.5 推流

2.6 输入多样化

2.7 集成

3. 第三方功能

4. 技术专栏

5. 已知问题

8. FAQ

金山云计算

Clone this wiki locally