iOS直播研发初了解

先转一张图


直播类的app基本的思维导图:

1.音视频的采集

    通过AVFoundation框架来获取来获取音视频数据。

2.视频处理

    视频也就是一张张的图片图片构成。那么图片就能做很多事情,但是又不可能如同图片那么简单的处理。需要用到GPUImage框架。

3.音视频编码

    FFempeg,X264框架,videoToolbox,AudioToolbox

    数据是AVFoundation采集,最后在 AVCaptureVideoDataOutputSampleBufferDelegate 的代理方法中获取。也就是

-(void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection

中,通过AVCaptureOutput来确定收集的是音频还是视频,分别是:AVCaptureVideoDataOutput

和AVCaptureAudioDataOutput。

4.推流

    根据服务端的流媒体进行数据传输

5.分发(服务端)

    这个进行数据分发,在分发之前可以有鉴黄,截屏,实时转码

6.拉流

    没啥好说的

7.音视频解码

    FFempeg,X264框架,videoToolbox,AudioToolbox

    用以上框架进行解码

8.播放

以上内容就是对直播研发的初步了解,其实也就是一个流程或者思维导图。

其实直播这块需要学的还有很多,如:音频及视频的基础知识这些。了解后对音视频的开发会有很多帮助。

以后如有更多的好东西继续学习并记录。

    

猜你喜欢

转载自blog.csdn.net/u011279386/article/details/81015364
今日推荐