iOS摄像头推流(2)

1. 纯音频推流

若是您的直播场景是纯音频直播,不须要视频画面,那么您能够不执行 第4步中的操做,取而代之的是开启 TXLivePushConfig 中的enablePureAudioPush配置。javascript

[](javascript: void 0;)java

//经过修改 enablePureAudioPush 开关,开启纯音频推流
TXLivePushConfig *_config = [[TXLivePushConfig alloc] init];
_config.enablePureAudioPush = YES;   // YES 为启动纯音频推流,只有在调用 startPush 前设置才会生效。

TXLivePush *_pusher = [[TXLivePush alloc] initWithConfig: _config]; 
NSString* rtmpUrl = @"rtmp://test.com/live/xxxxxx";    
[_pusher startPush:rtmpUrl];

若是您启动纯音频推流,可是 rtmp、flv 、hls 格式的播放地址拉不到流,那是由于线路配置问题,请提工单 联系咱们帮忙修改配置。算法

2. 设定画面清晰度

调用 TXLivePush 中的setVideoQuality接口,能够设定观众端的画面清晰度。之因此说是观众端的画面清晰度,是由于主播看到的视频画面是未经编码压缩过的高清原画,不受设置的影响。而setVideoQuality经过设定视频编码器的编码质量,使观众端感觉到画质的差别。详情请参考 设定画面质量
segmentfault

3. 美颜美白和红润特效

调用 TXLivePush 中的setBeautyStyle接口能够设置美颜效果,SDK 中提供了两种磨皮算法(beautyStyle):ide

美颜风格函数

效果说明编码

BEAUTY_STYLE_SMOOTHurl

光滑风格,算法更加注重皮肤的光滑程度,适合秀场直播类场景下使用。spa

BEAUTY_STYLE_NATUREiOS开发交流技术群:563513413,无论你是大牛仍是小白都欢迎入驻设计

天然风格,算法更加注重保留皮肤细节,适合对真实性要求更高的主播。

[](javascript: void 0;)

//     beautyStyle     : 美颜算法,目前支持 天然 和 光滑 两种。
//     beautyLevel     : 磨皮级别,取值范围 0 - 9; 0 表示关闭 1 - 9值越大 效果越明显。
//     whitenessLevel  : 美白级别,取值范围 0 - 9; 0 表示关闭 1 - 9值越大 效果越明显。
//     ruddinessLevel  : 红润级别,取值范围 0 - 9; 0 表示关闭 1 - 9值越大 效果越明显。
(void)setBeautyStyle:(int)beautyStyle beautyLevel:(float)beautyLevel 
          whitenessLevel:(float)whitenessLevel ruddinessLevel:(float)ruddinessLevel;

4. 色彩滤镜效果

调用 TXLivePush 中的setFilter接口能够设置色彩滤镜效果。所谓色彩滤镜,是指一种将整个画面色调进行区域性调整的技术,例如将画面中的淡黄色区域淡化实现肤色亮白的效果,或者将整个画面的色彩调暖让视频的效果更加清新和温和。

调用 TXLivePush 中的setSpecialRatio接口能够设定滤镜的浓度,设置的浓度越高,滤镜效果也就越明显。

从手机 QQ 和 Now 直播的经验来看,单纯经过setBeautyStyle调整磨皮效果是不够的,只有将美颜效果和setFilter配合使用才能达到更加多变的美颜效果。因此,咱们的设计师团队提供了17种默认的色彩滤镜,并将其默认打包在 (Demo)中供您使用。

[](javascript: void 0;)

NSString * path = [[NSBundle mainBundle] pathForResource:@"FilterResource" ofType:@"bundle"];
path = [path stringByAppendingPathComponent:lookupFileName];

UIImage *image = [UIImage imageWithContentsOfFile:path];
[_pusher setFilter:image];
[_pusher setSpecialRatio:0.5f];

5. 控制摄像头

TXLivePush 提供了一组 API 用户控制摄像头的行为:

API 函数

功能说明

备注说明

switchCamera

切换先后摄像头

Mac 平台对应的函数为 selectCamera

toggleTorch

打开或关闭闪光灯

仅在当前是后置摄像头时有效。

setZoom

调整摄像头的焦距

焦距大小,取值范围:1 - 5,默认值建议设置为1便可。

setFocusPosition

设置手动对焦位置

须要将 TXLivePushConfig 中的touchFocus选项设置为 YES 后才能使用。

相关文章
相关标签/搜索