FFmpeg内部去做,不需要用户调用API去注册。
以codec编解码器为例:
1:在configure的时候生成要注册的组件
./configure:7203:print_enabled_components libavcodec/codec_list.c
AVCodec codec_list $CODEC_LIST
这里会生成一个codec_list.c文件,里面只有static const AVCodec const codec_list[] 数组。
2.在libavcodec/allcodecs.c将static const AVCodec * const codec_list[] 的编解码器用链表的方式组织起来。