summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorDavid Conrad <lessen42@gmail.com>2009-05-22 21:32:13 +0000
committerDavid Conrad <lessen42@gmail.com>2009-05-22 21:32:13 +0000
commitef516f73778aee928826e7158ad0506d26ed9ab0 (patch)
treec9fe31f00a0f6cd08c0c5e4025b522b881be8ce8 /libavcodec
parent4969cc0bd84e5f69355f6428cddee22ba61ff897 (diff)
Move ALIGN macro to libavutil/common.h and use it in various places
Originally committed as revision 18898 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/svq1dec.c8
-rw-r--r--libavcodec/utils.c8
-rw-r--r--libavcodec/vp3.c4
-rw-r--r--libavcodec/zmbvenc.c2
4 files changed, 10 insertions, 12 deletions
diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c
index f31b69f2a1..3d7749d4e4 100644
--- a/libavcodec/svq1dec.c
+++ b/libavcodec/svq1dec.c
@@ -696,13 +696,13 @@ static int svq1_decode_frame(AVCodecContext *avctx,
for (i=0; i < 3; i++) {
int linesize;
if (i == 0) {
- width = (s->width+15)&~15;
- height = (s->height+15)&~15;
+ width = FFALIGN(s->width, 16);
+ height = FFALIGN(s->height, 16);
linesize= s->linesize;
} else {
if(s->flags&CODEC_FLAG_GRAY) break;
- width = (s->width/4+15)&~15;
- height = (s->height/4+15)&~15;
+ width = FFALIGN(s->width/4, 16);
+ height = FFALIGN(s->height/4, 16);
linesize= s->uvlinesize;
}
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 141d97b149..75da609eef 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -134,8 +134,6 @@ typedef struct InternalBuffer{
#define INTERNAL_BUFFER_SIZE 32
-#define ALIGN(x, a) (((x)+(a)-1)&~((a)-1))
-
void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height){
int w_align= 1;
int h_align= 1;
@@ -193,8 +191,8 @@ void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height){
break;
}
- *width = ALIGN(*width , w_align);
- *height= ALIGN(*height, h_align);
+ *width = FFALIGN(*width , w_align);
+ *height= FFALIGN(*height, h_align);
if(s->codec_id == CODEC_ID_H264)
*height+=2; // some of the optimized chroma MC reads one line too much
}
@@ -317,7 +315,7 @@ int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic){
if((s->flags&CODEC_FLAG_EMU_EDGE) || !size[2])
buf->data[i] = buf->base[i];
else
- buf->data[i] = buf->base[i] + ALIGN((buf->linesize[i]*EDGE_WIDTH>>v_shift) + (EDGE_WIDTH>>h_shift), stride_align[i]);
+ buf->data[i] = buf->base[i] + FFALIGN((buf->linesize[i]*EDGE_WIDTH>>v_shift) + (EDGE_WIDTH>>h_shift), stride_align[i]);
}
if(size[1] && !size[2])
ff_set_systematic_pal((uint32_t*)buf->data[1], s->pix_fmt);
diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
index 43a3658c33..9f7dfb62d7 100644
--- a/libavcodec/vp3.c
+++ b/libavcodec/vp3.c
@@ -1636,8 +1636,8 @@ static av_cold int vp3_decode_init(AVCodecContext *avctx)
s->version = 1;
s->avctx = avctx;
- s->width = (avctx->width + 15) & 0xFFFFFFF0;
- s->height = (avctx->height + 15) & 0xFFFFFFF0;
+ s->width = FFALIGN(avctx->width, 16);
+ s->height = FFALIGN(avctx->height, 16);
avctx->pix_fmt = PIX_FMT_YUV420P;
avctx->chroma_sample_location = AVCHROMA_LOC_CENTER;
if(avctx->idct_algo==FF_IDCT_AUTO)
diff --git a/libavcodec/zmbvenc.c b/libavcodec/zmbvenc.c
index 5268b939d9..21882d503f 100644
--- a/libavcodec/zmbvenc.c
+++ b/libavcodec/zmbvenc.c
@@ -284,7 +284,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
av_log(avctx, AV_LOG_ERROR, "Can't allocate compression buffer.\n");
return -1;
}
- c->pstride = (avctx->width + 15) & ~15;
+ c->pstride = FFALIGN(avctx->width, 16);
if ((c->prev = av_malloc(c->pstride * avctx->height)) == NULL) {
av_log(avctx, AV_LOG_ERROR, "Can't allocate picture.\n");
return -1;