[FFmpeg-devel] Discussion related to the use of a global thread pool rather than the current threading model

Eli Kara eli at algotec.co.il
Fri Jan 8 15:43:19 CET 2016

Web applications are fast becoming more and more complex, it's no surprise. I do mainly sever side work but a bit client side. The amount of data in a web page's DOM can be huge.
Many applications use videos in several places, this isn't a theoretical problem. And with people having 30 tabs open this really adds up.

The demand for more complicated applications is getting larger as well, fast.
Let web devs fine tune their pages if they're too bloated or inefficient but the browser should be able to make the most out of the HW in a smart way, so threading should be controllable.

Threading should be determined by the client code. There should be an API to determine how many threads to use for a decoder or allow a thread pool with tasks for heavy intensive pages.

There's no doubt this is needed, it's just a question of how to introduce such an API in a smart way.

Sent from Eli's Nexus

On Jan 8, 2016 4:23 PM, compn <tempn at mi.rr.com> wrote:
On Fri, 8 Jan 2016 10:51:39 +0100
wm4 <nfxjfg at googlemail.com> wrote:

> On Fri, 8 Jan 2016 09:42:52 +0000 (UTC)
> Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:
> > wm4 <nfxjfg <at> googlemail.com> writes:
> >
> > > On Fri, 8 Jan 2016 17:55:38 +1100
> > > Jean-Yves Avenard <jyavenard <at> gmail.com> wrote:
> > >
> > > > One of the issues we've faced was with our reftest
> > > > tests, with pages creating hundreds of small video
> > > > elements (the test change orientation, sizes,
> > > > transparency and the like and check that there's
> > > > no regression on how things are displayed).
> > >
> > > Do I understand right that only your tests do this?
> >
> > I may have misunderstood myself but I believe the
> > issue actually only happens on Windows XP;-)
> I suppose the larger memory usage would be considered a problem too,
> and also can hit 32 bit boundaries even on non-XP.
> Anyway, as another point I would argue:
> - discouraging web devs from creating too many video elements, and

i think mozilla should share one test page with the hundred elements so
that we can see first hand the destruction.

does this also happen with webp ? e.g. if all images are vp8 webp and if
you used libavcodec to decode them?

because 100 images would be a real world test, and it would explain why
this is needed.

i've seen html pages with 100 videos, thats just a forum with a music
thread where people post youtube music videos. set forum to display 100
posts at a time and thats easily 100 video elements on one page,
although of course not playing at the same time.

free file hosting / porn websites also utilize multiple video ads at
the same time. easily using 16 video elements at the same time. i've
seen many websites slow the web browser down to nothing with flash
video (which is why i do not use firefox on many sites).

asking web developers to not show so many video ads is a bit
shortsighted imo.

ffmpeg-devel mailing list
ffmpeg-devel at ffmpeg.org

More information about the ffmpeg-devel mailing list