具体代码请看:NDKPractice项目的ffmpeg88livepush
1.实现视频加背景音乐
1 |
|
2.详解H.264协议
首先需要明确 H264 可以分为两层,对于 VCL 具体的编解码算法这里暂时先不介绍,只介绍常用的 NAL 层,即网络提取层,这是解码的基础。:
1.VCL video codinglayer(视频编码层)
2.NAL network abstraction layer(网络提取层)。
- SPS:序列参数集
- PPS:图像参数集
- I帧:帧内编码帧,可独立解码生成完整的图片。
- P帧: 前向预测编码帧,需要参考其前面的一个I 或者B 来生成一张完整的图片。
- B帧: 双向预测内插编码帧,则要参考其前一个I或者P帧及其后面的一个P帧来生成一张完整的图片
4.获取 MediaCodec 的 sps 和 pps
- SPS:Sequence Paramater Set,又称作序列参数集。SPS中保存了一组编码视频序列(Coded video sequence)的全局参数。所谓的编码视频序列即原始视频的一帧一帧的像素数据经过编码之后的结构组成的序列
- PPS:除了序列参数集SPS之外,H.264中另一重要的参数集合为图像参数集Picture Paramater Set(PPS)。
1 | /** |