1、采集 通过调用摄像头、麦克风直接采集视音频数据,一般视频采集的数据用RGB或者YUV格式、音频采集数据采用PCM格式,由于采集的原始数据体积非常大,需要经过压缩技术处理来提高传输效率。并且对于采集的视频可以做一些前处理,比如美颜、水印等等。 2、数据编码 在编码方面,有两种编码方式,硬编码(硬件)与软编码(软件)。如果说你要实现720P的高清效果,那么就需要采用硬编码,如果对清晰度没有要求那么可以使用软编码(不过目前直播都看高清的了)。 为了便于手机视频的推流、拉流以及存储,通常采用视音频编码压缩技术来减少体积,编码方式:CBR、VBR。 视频-编码格式:H.265、H.264、MPEG-4等,封装容器有TS、MKV、AVI、MP4等。现在比较常用的视频编码是H.264。 音频-编码格式:G.711μ、AAC、Opus等,封装有MP3、OGG、AAC等,比较常用的是AAC编码格式。 视频经过编码压缩大大提高了视频的存储和传输效率,当然,经过压缩后的视频在播放时必须进行解码。 3、数据传输 数据经过推流端采集和预处理,编码之后推流到服务端。推流作为视频源的传输,在稳定性速度上都比拉流高得多,实现推拉流的技术线没有雄厚的人才与资金是不现实的。