[FFmpeg-devel] [PATCH] Rearrange MpegEncContext to simplify access from asm

Michael Niedermayer michaelni
Sat Jan 29 18:03:20 CET 2011


On Sat, Jan 29, 2011 at 04:53:44PM +0000, Mans Rullgard wrote:
> This moves the fields needed by asm near the top, before any
> structs or other members which complicate the offset calculation.
> Modifying other structs will no longer require updating the offsets,
> and the asm code is slightly simpler due to the smaller offsets.

[...]
> @@ -247,6 +244,20 @@ typedef struct MpegEncContext {
>      Picture **input_picture;   ///< next pictures on display order for encoding
>      Picture **reordered_input_picture; ///< pointer to the next pictures in codedorder for encoding
>  
> +    int y_dc_scale, c_dc_scale;
> +    int ac_pred;
> +    int block_last_index[12];  ///< last non zero coefficient in block
> +    int h263_aic;              ///< Advanded INTRA Coding (AIC)
> +
> +    /* scantables */
> +    ScanTable inter_scantable; ///< if inter == intra then intra should be used to reduce tha cache usage
> +    ScanTable intra_scantable;
> +    ScanTable intra_h_scantable;
> +    ScanTable intra_v_scantable;
> +
> +    /** bit output */
> +    PutBitContext pb;
> +
>      int start_mb_y;            ///< start mb_y of this thread (so current thread should process start_mb_y <= row <

i think you should add a comment that documents that these fields are used from
asm and that their position moving requires updating the offsets

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you really think that XML is the answer, then you definitly missunderstood
the question -- Attila Kinali
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20110129/44bb04df/attachment.pgp>



More information about the ffmpeg-devel mailing list