On Sat, Jul 17, 2021 at 8:09 PM Nicolas George <geo...@nsup.org> wrote:
> Hi. > > Some time ago, I started working on the project to update libavformat's > protocols to run with a proper event loop, instead of the several > half-assed > event loops we have here and there in the code. > > I started by writing the documentation for the low-level API, making sure > it > is an API that (1) is sufficient for the high-level API and (2) I can > deliver on Unix using poll() and pthreads and could deliver with GLib, > libev > and probably libuv. > > Please have a look at it. In particular, if you know system/event > programming for other operating systems, please have a look to tell me if > there are flaws in that regard. > > Here are a few comments: > > The structure of my projects are: > > - AVWorker, single-threaded low-level API, with the possibility of having > several implementations to accommodate different operating systems or > integrate into existing frameworks. > > - AVScheduler, multi-threaded high-level API, with the possibility of > having > several implementations to integrate into existing frameworks. > > - Redesign AVIO so that it works as tasks in an AVScheduler. > > - Redesign libavfilter so that activating filters is tasks in an > AVScheduler. > > Note that I have made implementation choices different from what we are > used > to. In particular, when it comes to making the API future-proof. Adding > low-level tasks needs to be extremely lightweight, to the exclusion of > dynamic allocation: our old and t[ier]+d foo_alloc() / foo_free() / add > fields at the end does not cut it. If you want to criticize these choices, > please make sure you understand how they work, what constraints I am > working > with and what benefit they bring, and preferably have an alternate > proposal. > > Here is the current state of worker.h. Now I will be working on > scheduler.h. > > Regards, > > Nicolas, do you have any more progress? I am very interested in your proposal and want to test your change in our special device. Thanks Xiang > -- > Nicolas George > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".