summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-04-10 21:02:16 +0200
committerwm4 <wm4@nowhere>2015-04-10 21:02:16 +0200
commit41151122e73f82d0bc9a806c80165878e930dc07 (patch)
tree6db2f28cf57cba6fcfe20f9229c4b9e27343cca1
parentb3495d9ccf5ad1d5d84284affed1083eee5887ee (diff)
downloadmpv-41151122e73f82d0bc9a806c80165878e930dc07.tar.bz2
mpv-41151122e73f82d0bc9a806c80165878e930dc07.tar.xz
mp_image: remove redundant chroma_x/y_shift fields
-rw-r--r--sub/draw_bmp.c6
-rw-r--r--video/filter/vf_dlopen.c8
-rw-r--r--video/filter/vf_eq.c4
-rw-r--r--video/mp_image.c2
-rw-r--r--video/mp_image.h2
5 files changed, 9 insertions, 13 deletions
diff --git a/sub/draw_bmp.c b/sub/draw_bmp.c
index 228d8a2dde..78fb33ca9f 100644
--- a/sub/draw_bmp.c
+++ b/sub/draw_bmp.c
@@ -334,13 +334,13 @@ static void draw_ass(struct mp_draw_sub_cache *cache, struct mp_rect bb,
static void get_swscale_alignment(const struct mp_image *img, int *out_xstep,
int *out_ystep)
{
- int sx = (1 << img->chroma_x_shift);
- int sy = (1 << img->chroma_y_shift);
+ int sx = (1 << img->fmt.chroma_xs);
+ int sy = (1 << img->fmt.chroma_ys);
for (int p = 0; p < img->num_planes; ++p) {
int bits = img->fmt.bpp[p];
// the * 2 fixes problems with writing past the destination width
- while (((sx >> img->chroma_x_shift) * bits) % (SWS_MIN_BYTE_ALIGN * 8 * 2))
+ while (((sx >> img->fmt.chroma_xs) * bits) % (SWS_MIN_BYTE_ALIGN * 8 * 2))
sx *= 2;
}
diff --git a/video/filter/vf_dlopen.c b/video/filter/vf_dlopen.c
index 00e6245a2e..0424e83a61 100644
--- a/video/filter/vf_dlopen.c
+++ b/video/filter/vf_dlopen.c
@@ -82,11 +82,11 @@ static void set_imgprop(struct vf_dlopen_picdata *out, const mp_image_t *mpi)
out->plane[i] = mpi->planes[i];
out->planestride[i] = mpi->stride[i];
out->planewidth[i] =
- i ? (/*mpi->chroma_width*/ mpi->w >> mpi->chroma_x_shift) : mpi->w;
+ i ? (/*mpi->chroma_width*/ mpi->w >> mpi->fmt.chroma_xs) : mpi->w;
out->planeheight[i] =
- i ? (/*mpi->chroma_height*/ mpi->h >> mpi->chroma_y_shift) : mpi->h;
- out->planexshift[i] = i ? mpi->chroma_x_shift : 0;
- out->planeyshift[i] = i ? mpi->chroma_y_shift : 0;
+ i ? (/*mpi->chroma_height*/ mpi->h >> mpi->fmt.chroma_ys) : mpi->h;
+ out->planexshift[i] = i ? mpi->fmt.chroma_xs : 0;
+ out->planeyshift[i] = i ? mpi->fmt.chroma_ys : 0;
}
}
diff --git a/video/filter/vf_eq.c b/video/filter/vf_eq.c
index 3381f248f7..deacfff0e6 100644
--- a/video/filter/vf_eq.c
+++ b/video/filter/vf_eq.c
@@ -191,8 +191,8 @@ static struct mp_image *filter(struct vf_instance *vf, struct mp_image *src)
if ((eq2->buf_w[0] != src->w) || (eq2->buf_h[0] != src->h)) {
eq2->buf_w[0] = src->w;
eq2->buf_h[0] = src->h;
- eq2->buf_w[1] = eq2->buf_w[2] = src->w >> src->chroma_x_shift;
- eq2->buf_h[1] = eq2->buf_h[2] = src->h >> src->chroma_y_shift;
+ eq2->buf_w[1] = eq2->buf_w[2] = src->w >> src->fmt.chroma_xs;
+ eq2->buf_h[1] = eq2->buf_h[2] = src->h >> src->fmt.chroma_ys;
img_n = eq2->buf_w[0]*eq2->buf_h[0];
if(src->num_planes>1){
img_c = eq2->buf_w[1]*eq2->buf_h[1];
diff --git a/video/mp_image.c b/video/mp_image.c
index 2c1e01cef9..c4ad6bd4c2 100644
--- a/video/mp_image.c
+++ b/video/mp_image.c
@@ -148,8 +148,6 @@ void mp_image_setfmt(struct mp_image *mpi, int out_fmt)
mpi->fmt = fmt;
mpi->flags = fmt.flags;
mpi->imgfmt = fmt.id;
- mpi->chroma_x_shift = fmt.chroma_xs;
- mpi->chroma_y_shift = fmt.chroma_ys;
mpi->num_planes = fmt.num_planes;
mp_image_set_size(mpi, mpi->w, mpi->h);
}
diff --git a/video/mp_image.h b/video/mp_image.h
index 95fe8ad20e..92f779136c 100644
--- a/video/mp_image.h
+++ b/video/mp_image.h
@@ -85,8 +85,6 @@ typedef struct mp_image {
struct mp_imgfmt_desc fmt;
enum mp_imgfmt imgfmt;
int num_planes;
- int chroma_x_shift; // horizontal
- int chroma_y_shift; // vertical
int w,h; // visible dimensions
uint8_t *planes[MP_MAX_PLANES];