Skip to content

Instantly share code, notes, and snippets.

@happyj2me
Created August 23, 2019 05:59
Show Gist options
  • Save happyj2me/0ca02f5b0597994d31d0a3e6399d677f to your computer and use it in GitHub Desktop.
Save happyj2me/0ca02f5b0597994d31d0a3e6399d677f to your computer and use it in GitHub Desktop.
1. 默认linux下没有开启h264编解码,开启编码方式
proprietary_codecs = true
ffmpeg_branding = "Chrome"
is_component_ffmpeg = false
2. is_component_ffmpeg 控制 webrtc 编译的ffmpeg是静态库还是动态库,webrtc编译ffmpeg的时候,做了大量的裁剪,avutils avdevice swresample等
很多功能都裁减掉了,所以如果有其他的库依赖ffmpeg,很难去共用webrtc里面的ffmpeg, 建议的处理方式如下:
2.1 webrtc自身的ffmpeg编译成静态库, webrtc也编译成静态库,这样webrtc只依赖它自身裁剪过的静态库
2.2 其他依赖ffmpeg的开源库,额外下载对应的ffmpeg版本去依赖
2.3 链接的时候,最后连接webrtc, 这样的目的是查找ffmpeg符号的时候, 最后一个去查找阉割过的webrtc静态库里面的ffmpeg
@LxzBUG
Copy link

LxzBUG commented Oct 12, 2021

好像没用诶 webrtc自身的ffmpeg编译成静态库, webrtc也编译成静态库之后怎么用呢?是libwebrtc.a 和 libffmpeg_internal.a一起引入嘛?

然后自己再依赖单独的ffmpeg是用动态库还是静态库呀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment