libsrtp2库是写webrtc-gw时常使用的库,用于srtp协议和srtcp协议的加密与解密,但是当在火狐浏览器上测试时,发现调用srtp_create函数会直接失败。这是因为之前编译的libsrtp2库采用的是默认编译选择,有些加解密方式是不支持的,而火狐浏览器dtls协商完成后,使用的是AES_128_GCM这种加解密方式,默认的编译选项不支持。解决办法是采用如下的编译选项重新编译libsrtp2库:
./configure --enable-openssl --with-openssl-dir=/home/webrtc/mybuild/install/openssl1.1.0 --prefix=/home/webrtc/mybuild/install/libsrtp2_2.4.2
make -j4
make install
上面的编译选项是使用openssl进行加解密,这样那些加解密方式都支持了