FFynamic - 扩展FFmpeg的音视频处理库

FFdynamic封装了FFmpeg的底层音视频处理,提供一个将音视频不同组件进行组合的框架,以及在程序运行时可以动态的改变各组件状态的模块。

以下是使用FFdynamic开发的一个互动直播程序,效果如图:

介绍一个视频互动直播后台的开源项目

图示了自动分屏变化(由2个输入流到3个输入流)和通过request改变分屏(4分屏、9分屏)

更多信息:互动直播后台


FFdynamic 可将音视频处理的各模块进行组合, 开发自己的其他音视频应用

比如,我们开发了一个去雾模块,想对比下去雾的效果,我们可以将原始流和去雾后流合成到一个屏幕编码保存,这个场景如下:
  
Demux |-> Audio Decode -> |-> Audio Encode -----------------------------------------------> |
      |                                                                                                                               | -> Muxer
      |                                |-> Dehaze Filter -> |                                                              |
      |-> Video Decode -> |                               | Mix original and dehzed ->| Encode ->|
                                       | ----------------------> |

解复用后将视频流送入视频解码器,解码后的帧一路送入去雾模块,另一路送入video mix模块;去雾后的数据也输出到video mix模块,经mix后编码保存。效果如下:


介绍一个视频互动直播后台的开源项目

源代码


项目更多信息: https://github.com/Xingtao/FFdynamic

相关文章: