diff options
author | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-12-11 07:52:57 +0000 |
---|---|---|
committer | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-12-11 07:52:57 +0000 |
commit | 6ffdc2c7714bb90eea0a987438000112ce91b407 (patch) | |
tree | 8741813668e71614806523ba102ad5eabee9dc25 /libmpcodecs/vf_pullup.c | |
parent | 50aa753a2314eca3803ffbd038267c9a0605b378 (diff) | |
download | mpv-6ffdc2c7714bb90eea0a987438000112ce91b407.tar.bz2 mpv-6ffdc2c7714bb90eea0a987438000112ce91b407.tar.xz |
simplified frame decision logic and reduced the occurrance of length=1
frames in output. this will make it easier for the caller to do timing
or framerate regulation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11629 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/vf_pullup.c')
-rw-r--r-- | libmpcodecs/vf_pullup.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/libmpcodecs/vf_pullup.c b/libmpcodecs/vf_pullup.c index a901dff814..fe1c4bf2a0 100644 --- a/libmpcodecs/vf_pullup.c +++ b/libmpcodecs/vf_pullup.c @@ -56,7 +56,7 @@ static void init_pullup(struct vf_instance_s* vf, mp_image_t *mpi) c->junk_left = c->junk_right = 1; c->junk_top = c->junk_bottom = 4; - c->verbose = 0; + c->verbose = verbose; if (gCpuCaps.hasMMX) c->cpu |= PULLUP_CPU_MMX; if (gCpuCaps.hasMMX2) c->cpu |= PULLUP_CPU_MMX2; @@ -166,25 +166,24 @@ static int put_image(struct vf_instance_s* vf, mp_image_t *mpi) break; } /* Direct render fields into output buffer */ - p = f->parity; - my_memcpy_pic(dmpi->planes[0], f->fields[p]->planes[0], + my_memcpy_pic(dmpi->planes[0], f->ofields[0]->planes[0], mpi->w, mpi->h/2, dmpi->stride[0]*2, c->stride[0]*2); my_memcpy_pic(dmpi->planes[0] + dmpi->stride[0], - f->fields[p^1]->planes[0] + c->stride[0], + f->ofields[1]->planes[0] + c->stride[0], mpi->w, mpi->h/2, dmpi->stride[0]*2, c->stride[0]*2); if (mpi->flags & MP_IMGFLAG_PLANAR) { - my_memcpy_pic(dmpi->planes[1], f->fields[p]->planes[1], + my_memcpy_pic(dmpi->planes[1], f->ofields[0]->planes[1], mpi->chroma_width, mpi->chroma_height/2, dmpi->stride[1]*2, c->stride[1]*2); my_memcpy_pic(dmpi->planes[1] + dmpi->stride[1], - f->fields[p^1]->planes[1] + c->stride[1], + f->ofields[1]->planes[1] + c->stride[1], mpi->chroma_width, mpi->chroma_height/2, dmpi->stride[1]*2, c->stride[1]*2); - my_memcpy_pic(dmpi->planes[2], f->fields[p]->planes[2], + my_memcpy_pic(dmpi->planes[2], f->ofields[0]->planes[2], mpi->chroma_width, mpi->chroma_height/2, dmpi->stride[2]*2, c->stride[2]*2); my_memcpy_pic(dmpi->planes[2] + dmpi->stride[2], - f->fields[p^1]->planes[2] + c->stride[2], + f->ofields[1]->planes[2] + c->stride[2], mpi->chroma_width, mpi->chroma_height/2, dmpi->stride[2]*2, c->stride[2]*2); } |