Webrtc定制开发(一)

2022-06-14 09:05:36 浏览数 (1)

前一篇《webrtc方案漫谈》我们分析了webrtc的方案特点,根据实际的应用场景我们需要对webrtc native代码进行定制开发,下面对webrtc常规需求进行定制。

一、去掉流加密和解密流程

加密和解密是一种对CPU开销比较大的操作,PC端性能不是问题,但在嵌入式单板上,CPU资源非常宝贵,去掉加密和解密流程就显得非常迫切了。

                                                              加密模式的密钥协商

修改代码如下:

                                                                    去掉加密相关修改

                                                                                        未加密模式的,无密钥协商

二、开启h264视频编码格式

Webrtc默认采用VPX编码,如需要实现h264编码,需要做以下工作:

1) 开启h264相关宏,使webrtc代码上支持

配置命令为:

gn gen out/h264Debug --args="proprietary_codecs=true ffmpeg_branding="Chrome"",

会默认打开h264相关宏,将h264相关文件编译进去。Webrtc编码采用是openh264,解码采用的是ffmpeg软解.

2)调整编码格式优先级顺序,让h264成为第一优先级

                                                                   H264协商代码修改(一)

                                                               H264协商代码修改(二)

以上只是去流加密和增加h264的编码格式的定制

0 人点赞