On Mon, 26 Oct 2015 13:15:39 -0700 Dale Curtis <dalecur...@chromium.org> wrote:
> On Sun, Oct 25, 2015 at 4:56 AM, Ronald S. Bultje <rsbul...@gmail.com> > wrote: > > > > So this is likely because we init all tables instead of just these that we > > need, right? So how about having one ff_once per table? That should be > > trivial to implement. > > > > (from the right account this time) > > Just so we're all on the same page, this is trivial, but will get a bit > messy unless I'm missing something. The ff_thread_once() API only takes a > void(void) function, so unless there's partial specialization hiding > somewhere we need prototypes for each partial initialization. I.e. > ff_init_ff_cos_static_table_init_4(), ff_init_ff_cos_static_table_init_5(), > ff_init_ff_cos_static_table_init_6(), etc for 4..16. We would also then > have an array of AVOnce items for entries 4..16 where each entry would > correspond to calling the paired initialization function. > > Is this what everyone had in mind? Now that you're saying it, this is inconvenient. You could just initialize a static mutex (using AVOnce, since we don't have a static mutex initializer that works on all platforms), and guard initialization with this mutex. But I'd say this is not worth the effort, unless Michael disagrees? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel