diff options
author | Mike Melanson <mike@multimedia.cx> | 2003-06-21 03:58:57 +0000 |
---|---|---|
committer | Mike Melanson <mike@multimedia.cx> | 2003-06-21 03:58:57 +0000 |
commit | 2a06f90f75f6e99af8b39d41e78dc6f6850fe68d (patch) | |
tree | e215f9e2dbfef6eea251880179c3f73c6765f489 /src/libffmpeg/libavcodec/h264.c | |
parent | 7ec65b9aeaded392195543631da79bcf912382ab (diff) | |
download | xine-lib-2a06f90f75f6e99af8b39d41e78dc6f6850fe68d.tar.gz xine-lib-2a06f90f75f6e99af8b39d41e78dc6f6850fe68d.tar.bz2 |
major purpose of this update is to import the rearranged MC edge
emulation facilities
CVS patchset: 5079
CVS date: 2003/06/21 03:58:57
Diffstat (limited to 'src/libffmpeg/libavcodec/h264.c')
-rw-r--r-- | src/libffmpeg/libavcodec/h264.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/libffmpeg/libavcodec/h264.c b/src/libffmpeg/libavcodec/h264.c index 0df229b53..97af5b95c 100644 --- a/src/libffmpeg/libavcodec/h264.c +++ b/src/libffmpeg/libavcodec/h264.c @@ -197,9 +197,10 @@ typedef struct H264Context{ int halfpel_flag; int thirdpel_flag; + int unknown_svq3_flag; int next_slice_index; - + SPS sps_buffer[MAX_SPS_COUNT]; SPS sps; ///< current sps @@ -1897,7 +1898,7 @@ static inline void mc_dir_part(H264Context *h, Picture *pic, int n, int square, || full_my < 0-extra_height || full_mx + 16/*FIXME*/ > s->width + extra_width || full_my + 16/*FIXME*/ > s->height + extra_height){ - ff_emulated_edge_mc(s, src_y - 2 - 2*s->linesize, s->linesize, 16+5, 16+5/*FIXME*/, full_mx-2, full_my-2, s->width, s->height); + ff_emulated_edge_mc(s->edge_emu_buffer, src_y - 2 - 2*s->linesize, s->linesize, 16+5, 16+5/*FIXME*/, full_mx-2, full_my-2, s->width, s->height); src_y= s->edge_emu_buffer + 2 + 2*s->linesize; emu=1; } @@ -1910,13 +1911,13 @@ static inline void mc_dir_part(H264Context *h, Picture *pic, int n, int square, if(s->flags&CODEC_FLAG_GRAY) return; if(emu){ - ff_emulated_edge_mc(s, src_cb, s->uvlinesize, 9, 9/*FIXME*/, (mx>>3), (my>>3), s->width>>1, s->height>>1); + ff_emulated_edge_mc(s->edge_emu_buffer, src_cb, s->uvlinesize, 9, 9/*FIXME*/, (mx>>3), (my>>3), s->width>>1, s->height>>1); src_cb= s->edge_emu_buffer; } chroma_op(dest_cb, src_cb, s->uvlinesize, chroma_height, mx&7, my&7); if(emu){ - ff_emulated_edge_mc(s, src_cr, s->uvlinesize, 9, 9/*FIXME*/, (mx>>3), (my>>3), s->width>>1, s->height>>1); + ff_emulated_edge_mc(s->edge_emu_buffer, src_cr, s->uvlinesize, 9, 9/*FIXME*/, (mx>>3), (my>>3), s->width>>1, s->height>>1); src_cr= s->edge_emu_buffer; } chroma_op(dest_cr, src_cr, s->uvlinesize, chroma_height, mx&7, my&7); |