直播SDK使用说明

该Lib支持三种模式:直播、先拍后传、断点续传。通常来说,客户端应用程序的做法如下:

主要包括设置 AudioSession 和 Delegate。

[XpaiInterface initAudioSession:MOVIE_RECORD]; 
[XpaiInterface setDelegate:self];
[XpaiInterface initRecorder:AVCaptureDevicePositionBack
workMode:VIDEO_MODE resolution:RESOLUTION_MEDIUM
audioSampleRate:22050 focusMode:AVCaptureFocusModeAutoFocus
torchMode:AVCAptureTorchModeAuto glView:nil prevRect:self.view.bounds
captureVideoOrientation:captureVideoOrientation];

注意预览画面 AVCaptureVideoPreviewLayer *_prevLayer = [[AVCaptureVideoPreviewLayer layerWithSession:[XpaiInterface getVideoCaptureSession]]retain]的 videoGravity属性得设置为AVLayerVideoGravityResize,如果设置为AVLayerVideoGravityResizeAspectFill会导致预览画面比观看端实际看见的视频画面小

  • 连接视频服务器
  • 开始拍摄,记录下来当前的 ID
  • didStreamIdNotify被调用时,记录下来当前的streamIDstreamPath
  • 结束拍摄,等待视频上传完毕的函数被调用didCompleteUpload
  • 视频直播结束
  • 直播过程中,根据didSendToServer的参数,显示相应的信息
  • 直播中网络断开

初始化音频录制器

[XpaiInterface initAudioRecorder];

启动音频录制

[XpaiInterface startAudioRecord];

结束录制,利用返回的文件名进行后续处理

[XpaiInterface stopAudioRecord];

释放资源

[XpaiInterface releaseAudioRecorder];