iOS SDK
  • 帮助与文档 直播 播放SDK iOS SDK

    苏宁视频云直播推流SDK使用说明(iOS)

    下载地址: http://download.pplive.com/ppcloud/ios_play_push_sdk.zip

    一、功能特点

    [硬件编码]
    [网络自适应]:可根据实际网络情况动态调整目标码率,保证流畅性
    音频编码:AAC
    视频编码:H.264
    推流协议:RTMP
    [视频分辨率]:支持360P, 480P, 540P和720P
    音视频目标码率:可设
    支持固定竖屏推流
    支持前、后置摄像头动态切换
    闪光灯:开/关
    [内置美颜功能]
    [支持手动指定自动对焦测光区域]

    二、运行环境

    • 最低支持版本为iOS8.0
    • 支持的CPU架构:armv7,armv7s,arm64

    三、快速集成

    配置工程文件:

    在工程文件->General->Embedded Binaries项中导入动态库:PPYLiveKit,MediaPlayerFramework,MediaStreamerFramework.


    引入头文件

    #import <PPYLiveKit/PPYLiveKit.h>
                                    

    接口说明:

    初始化推流引擎:

    
     PPYPushEngine *pushEngine = [[PPYPushEngine alloc]initWithAudioConfiguration:self.audioConfig
     andVideoConfiguration:self.videoConfig pushRTMPAddress:self.rtmpAddress];;
                                    

    参数配置:

    • 音频

      
      PPYAudioConfiguration *audioConfigure = [PPYAudioConfiguration defaultAudioConfiguration];
                                              
    • 视频

      
      PPYVideoConfiguration *videoConfigure = [PPYVideoConfiguration defaultVideoCOnfiguration];
                                              
    • 支持音视频参数Level调解:

      
      +(instancetype)videoConfigurationWithVideoQuality:
      (PPYVideoQuality)videoQuality;
      +(instancetype)audioConfigurationWithAudioQuality:
      (PPYAudioQuality)audioQuality;
                                              
    • 支持音视频参数自定义,可以调用:

      
      +(instancetype)audioConfigurationWithSamplerate:
      (PPYAudioSampleRate)samplerate andChannelCount:
      (int)channelCount andBirate:(PPYAudioBitRate)bitrate;
      +(instancetype)videoConfigurationWithPreset:
      (PPYCaptureSessionPreset)videoPreset andFPS:
      (PPYCaptureFPS)fps andBirate:(int)bitrate; //kbps
                                              
    • 设置代理:

      
      pushEngine.delegate = self;
                                              
    • 代理监听流状态,流信息,抛出异常

      
      -(void)didStreamStateChanged:(PPYPushEngineStreamStatus)status{
      }
      
      -(void)didStreamErrorOccured:(PPYPushEngineErrorType)error{
      }
      
      -(void)didStreamInfoThrowOut:(PPYPushEngineStreamInfoType)type infoValue:(int)value{
      }
                                              
    • 建立视频预览:

      
      pushEngine.preview = self.view
                                              
    • 开始视频预览:

      
      pushEngine.running = YES;
                                              
    • 开始推流:

      
      [pushEngine start]
                                              
    • 结束推流:

      
      [pushEngine stop];
                                              
    • 切换摄像头:

      
      pushEngine.cameraPosition = AVCaptureDevicePositionFront;
      pushEngine.cameraPosition = AVCaptureDevicePositionBack;
                                              
    • 闪光灯:

      
      pushEngine.torch = YES;
      pushEngine.torch = NO;
                                              
    • 自动连续对焦:

      
      if(pushEngine.hasFocus){
          pushEngine.autoFocus = YES;
      }
      if(pushEngine.hasFocus){
          pushEngine.autoFocus = NO;
      }
                                              
    • 手动对焦:

      
      CGPoint location = [touch locationInView:self.view];
      [pushEngine doFocusOnPoint:location onView:self.view needDisplayLocation:YES];
                                              
    • 美颜三档参数可调,调节范围0~1.0:

      
      pushEngine.beautify = YES;
      pushEngine.beautyLevel = 0.5;
      pushEngine.brightLevel = 0.5;
      pushEngine.toneLevel = 0.5;
                                              
    • 静音开关:

      
      pushEngine.mute = YES;
                                              
    • 文本导读:
    • 功能特点
    • 运行环境
    • 快速集成
苏宁视频云服务