[FFmpeg-devel] Parallelized h264 proof-of-concept

Hervé W. H.O.W.aka.V+ffmpeg
Wed Jun 6 12:33:16 CEST 2007


On 06/06/07, Andreas ?man <andreas at olebyn.nu> wrote:
[...]

> >> Okay, a few words about the changes.
> >>
> >> A new structure H264Thread (name suggestions very welcome) is
> >> passed around to almost all functions. This structure is
> >> local for every slice (perhaps H264Slice would be a better
> >> name) and contains all members from H264Context that
> >> changed during slice decode. I also moved a few things
> >> (most notably mb_[xy]) from MpegEncContext here.
> >
> > what about copying the MpegEncContect & H264Context for each thread
> > and using them, this should significantly reduce the changes
> > needed (note i didnt look at your patch at all ...)
>
> Yeps, thats how it'd done now.
>
> There is some uglyness after MPV_common_init() since the
> threads allocated are sizeof(MpegEncContext).
>
> A simple av_realloc() dosent work since it does not correctly align
> stuff when CONFIG_MEMALIGN
>
> I see a few options here,

[...]

> * "Fix" av_realloc to correctly align (by using free + memaling +
> memcpy)

If you go this way, there have been a couple of attempts/threads about
this already.

* [RFC] another attempt at memalign realloc

* [PATCH] av_realloc, unneccesary memcpy and possibly leaks after r5992

* [Ffmpeg-cvslog] r5996 - trunk/libavutil/mem.c

it's possible there have been more.

good luck, how ever you decide to solve the problem you ran into.

-V




More information about the ffmpeg-devel mailing list