[FFmpeg-devel] [RFC] Event loop

Xiang Xiao xiaoxiang781216 at gmail.com
Mon Jan 4 16:15:07 EET 2021


Nicolas, thank you for bringing up this topic.
My team is working on similar functionality: the event loop is the
central point to integrate protocol, demux/mux, decoder/encoder, avfilter
and avdevice to form a complete multimedia subsystem(like DirectShow or
GStreamer). Without the builtin event loop, it is very hard to support it
with a clean and elegant way outside FFmpeg:

   1. Multiple streaming(either local or network)
   2. Multiple devices(either capture, playback even Bluetooth A2DP/SCO)
   3. Interact and coordinate between the components
   4. Provide a system wide and easy used API to application

We are very excited that the community is considering to provide the
generic event loop support and want to make the contribution.

Thanks
Xiang

On Mon, Jan 4, 2021 at 9:45 PM Nicolas George <george at nsup.org> wrote:

> Kieran Kunhya (12021-01-02):
> > In my opinion we should use libev as the default and make it a submodule
> > (possibly as part of some sort of plugin system for event loops). This
> > allows us to use modern things such as io_uring as they come.
>
> I can be on board with that, since I like libev very much, and I find it
> matches well the philosophy of FFmpeg's coding practices.
>
> But I am afraid I am not the one who will need convincing on this.
>
> Making sure any event loop can be used with a pluggable system is, IMHO,
> an absolute requisite. Based on this, providing a basic event loop,
> enough to run most of our protocols, would be compatible with FFmpeg's
> habits, and not that much work. And libev can be used if available for
> more complex protocols or better performance.
>
> But as I said, I would be fine with libev the main, official event loop
> for the project.
>
> Regards,
>
> --
>   Nicolas George
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list