[FFmpeg-devel] [PATCH] h264 parallelized, (was: Parallelized h264 proof-of-concept)
Wed Jun 20 03:53:55 CEST 2007
2007/6/16, Andreas ?man <andreas at olebyn.nu>:
> Andreas ?man wrote:
> > Hi
> > Michael Niedermayer wrote:
> >> Hi
> >> av_free() + av_malloc() or pass an argument to MPV_common_init()
> > I'll extend MPV_common_init() with an additional argument then.
> >>> static void filter_mb_fast( H264Context *h, int mb_x, int mb_y, uint8_t *img_y, uint8_t *img_cb, uint8_t *img_cr, unsigned int linesize, unsigned int uvlinesize);
> >>> +static void execute_decode_slices(H264Context *h, int reset);
> >> cant you order the new functions so as to avoid that?
> > Hm, not really. decode_slice_header() needs to be able to
> > fire off any pending slices in case the deblocking-type changes
> > within a frame. (AFAIK this is valid according to the specs,
> > perhaps I'm wrong?)
> Okay, here are the finalized patches.
> #1 - Extend MPV_common_init() with an addition arg for context size
> when doing multi threading.
> #2 - Factor out init_scan_tables()
> #3 - Decouple bit context from h264 context in decode_ref_pic_marking()
> #4 - Slice level parallelism for deblocking type 0 and 2
> regression tests passes
Don't forget to add ff_check_alignment on thread entry:-)
Beauty is truth,
While truth is beauty.
PGP KeyID: E8555ED6
More information about the ffmpeg-devel