Mercurial > libavcodec.hg
comparison mpegvideo_xvmc.c @ 8855:6ce8ebfc9d86 libavcodec
use ff_xvmc for function names instead of XVMC_
author | iive |
---|---|
date | Sat, 14 Feb 2009 18:25:41 +0000 |
parents | aee8c48ff4b0 |
children | e5cf06287032 |
comparison
equal
deleted
inserted
replaced
8854:897a2b1f883e | 8855:6ce8ebfc9d86 |
---|---|
34 //XvMC emulation could be performed | 34 //XvMC emulation could be performed |
35 | 35 |
36 #include "xvmc.h" | 36 #include "xvmc.h" |
37 | 37 |
38 //set s->block | 38 //set s->block |
39 void XVMC_init_block(MpegEncContext *s) | 39 void ff_xvmc_init_block(MpegEncContext *s) |
40 { | 40 { |
41 struct xvmc_render_state * render; | 41 struct xvmc_render_state * render; |
42 render = (struct xvmc_render_state*)s->current_picture.data[2]; | 42 render = (struct xvmc_render_state*)s->current_picture.data[2]; |
43 assert(render); | 43 assert(render); |
44 if (!render || (render->magic != AV_XVMC_RENDER_MAGIC)) { | 44 if (!render || (render->magic != AV_XVMC_RENDER_MAGIC)) { |
46 return;//make sure that this is a render packet | 46 return;//make sure that this is a render packet |
47 } | 47 } |
48 s->block = (DCTELEM *)(render->data_blocks+(render->next_free_data_block_num)*64); | 48 s->block = (DCTELEM *)(render->data_blocks+(render->next_free_data_block_num)*64); |
49 } | 49 } |
50 | 50 |
51 void XVMC_pack_pblocks(MpegEncContext *s, int cbp) | 51 void ff_xvmc_pack_pblocks(MpegEncContext *s, int cbp) |
52 { | 52 { |
53 int i,j; | 53 int i,j; |
54 const int mb_block_count = 4 + (1 << s->chroma_format); | 54 const int mb_block_count = 4 + (1 << s->chroma_format); |
55 | 55 |
56 j = 0; | 56 j = 0; |
65 } | 65 } |
66 } | 66 } |
67 | 67 |
68 //These functions should be called on every new field and/or frame. | 68 //These functions should be called on every new field and/or frame. |
69 //They should be safe if they are called a few times for the same field! | 69 //They should be safe if they are called a few times for the same field! |
70 int XVMC_field_start(MpegEncContext*s, AVCodecContext *avctx) | 70 int ff_xvmc_field_start(MpegEncContext*s, AVCodecContext *avctx) |
71 { | 71 { |
72 struct xvmc_render_state * render, * last, * next; | 72 struct xvmc_render_state * render, * last, * next; |
73 | 73 |
74 assert(avctx); | 74 assert(avctx); |
75 | 75 |
110 } | 110 } |
111 | 111 |
112 return -1; | 112 return -1; |
113 } | 113 } |
114 | 114 |
115 void XVMC_field_end(MpegEncContext *s) | 115 void ff_xvmc_field_end(MpegEncContext *s) |
116 { | 116 { |
117 struct xvmc_render_state * render; | 117 struct xvmc_render_state * render; |
118 render = (struct xvmc_render_state*)s->current_picture.data[2]; | 118 render = (struct xvmc_render_state*)s->current_picture.data[2]; |
119 assert(render); | 119 assert(render); |
120 | 120 |
121 if (render->filled_mv_blocks_num > 0) | 121 if (render->filled_mv_blocks_num > 0) |
122 ff_draw_horiz_band(s,0,0); | 122 ff_draw_horiz_band(s,0,0); |
123 } | 123 } |
124 | 124 |
125 void XVMC_decode_mb(MpegEncContext *s) | 125 void ff_xvmc_decode_mb(MpegEncContext *s) |
126 { | 126 { |
127 XvMCMacroBlock * mv_block; | 127 XvMCMacroBlock * mv_block; |
128 struct xvmc_render_state * render; | 128 struct xvmc_render_state * render; |
129 int i,cbp,blocks_per_mb; | 129 int i,cbp,blocks_per_mb; |
130 | 130 |