~medibuntu-maintainers/mplayer/medibuntu.natty

« back to all changes in this revision

Viewing changes to libmpcodecs/vf_decimate.c

  • Committer: Gauvain Pocentek
  • Date: 2010-09-25 09:39:02 UTC
  • mfrom: (66.1.6 maverick)
  • Revision ID: gauvain@images-20100925093902-9q2akz3ls3qzhaaw
* Merge from Ubuntu:
  - put back faac support
  - recommends apport-hooks-medibuntu
  - change Maintainer, Uploaders & Vcs-* fields.
* merge from debian, remaining changes:
  - build depend against, lame, x264, xvid
* debian/patches/60eval-api.patch, backport patch from upstream to
  unbreak compilation for eval.h move not yet in 0.6
* gmplayer is gone now, please see smplayer as alternative frontend.
  LP: #503537, #493088, #467534, #467524, #460326, #390399, #285570,
      #208680, #118709, #513065, #459595, #455913, #179918, #65165.
* enable the mencoder package
* sort build depends alphabetically
* enable dvdnav support, Closes: #582508, #488226, LP: #611749
* prepare new upload
* no longer build mplayer-gui, it doesn't build anymore with shared
  swscale
* merge from debian/experimental, remaining changes:
  - build depend against, lame, x264, xvid
  - enable mencoder and mplayer-gui
* ensure that quilt patches are actually applied
* New Upstream Version, LP: #539315
* Build (against) again the System FFmpeg 
* tighten dependency on FFmpeg 0.6
* remove patches merged upstream
* remove 22disable-xscreensaver.patch
* refresh patches
* readd x264, xvid and mp3lame support, LP: #606125
* remove old parallel building mechanism, fixes FTBFS
* New upstream version
* compile against internal ffmpeg for now, LP: #587203, #588097
* recompile for directfb transtion, LP: #587163
* remove patches that were merged upstream
* avoid removing DOCS/html directory. it is included in release
  tarball
* convert to source Format: 3.0 (quilt)
* refreshed patches
* remove files that are included in upstream tarball
* rework debian/rules file
  - support parallel building
  - merge build rules for mplayer and mencoder package
  - remove unreferenced COMMON_CONFIGURE_FLAGS macro
  - rename DEB_BUILD_CONFIGURE -> CONFIGURE_FLAGS
  - don't build documentation - release tarballs have them prebuilt
  - build HTML documentation only if not already avaiable in the build
    tree
  - remove remaining references to debian/strip.sh from debian/rules
* remove copied vdpau headers
* copy in mencoder.c from upstream
* enable mplayer-gui (Closes: #579925) and mencoder packages. 
  (Closes: #396954, #400940, #580168)
* Fix rtsp vulnerability. Patch applied by DSA. Closes: #581245
* Fix another integer overflow, Closes: #524805
* prepare new upload
* sync libao2/ao_pulse.c with svn r30062, Closes: #558196, #580113
* make configure use pkg-config for fribidi checks. Closes: #582784,
  LP: #556200
* document 23mplayer-debug-printf.patch
* avoid mentioning of GTK frontend in mplayer description
* improve package descriptions of mplayer-doc and mplayer-dbg
* medium urgency because of fixed security issue
* fix SVN_VERION regex in debian rules to unbreak get-orig-source
  target. Closes: #582369
* forcefully disable arts support. Closes: #581225
* Remove mencoder from Depends in mplayer-dbg package.
* new upstream snapshot from rc3 branch.
* remove patches applied upstream:
  
  - 24_enable_fontconfig_by_default.diff
  - 30_add_gmplayer_man_rules.diff
  - 40_improve_desktop_file.patch
  - 41_fix_forcedsubsonly.patch
  - 50_fix_crashes_with_invalid_SDPs.patch
  - 50_fix_initial_volume_setting_pulse_output.patch
  - 61-malloc-bsd.patch
  - 62-disable-vidix-on-kfreebsd-amd64.patch
  - 63-sys-kd-include.patch
* don't install apport hook
* gross hack to avoid building mplayer-nogui and mplayer-gui packages
* add md5sum to remove to avoid spurious conffile prompt, Closes: #568272
* Make mplayer build on kFreeBSD (backports from upstream), Closes: #578622
  - Revert obscure hack that disables the malloc.h check on certain BSD
    platforms. 
  - disable vidix on kFreeBSD-amd64
  - rename 'struct keypad' -> 'struct m_keypad' to avoid FTBFS on
    kFreeBSD/amd64
* enable fontconfig by default. (Closes: #573257)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * This file is part of MPlayer.
 
3
 *
 
4
 * MPlayer is free software; you can redistribute it and/or modify
 
5
 * it under the terms of the GNU General Public License as published by
 
6
 * the Free Software Foundation; either version 2 of the License, or
 
7
 * (at your option) any later version.
 
8
 *
 
9
 * MPlayer is distributed in the hope that it will be useful,
 
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
 * GNU General Public License for more details.
 
13
 *
 
14
 * You should have received a copy of the GNU General Public License along
 
15
 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
 
16
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
17
 */
 
18
 
1
19
#include <stdio.h>
2
20
#include <stdlib.h>
3
21
#include <string.h>
27
45
                "movl $8, %%ecx \n\t"
28
46
                "pxor %%mm4, %%mm4 \n\t"
29
47
                "pxor %%mm7, %%mm7 \n\t"
30
 
                
 
48
 
31
49
                ASMALIGN(4)
32
50
                "1: \n\t"
33
 
                
 
51
 
34
52
                "movq (%%"REG_S"), %%mm0 \n\t"
35
53
                "movq (%%"REG_S"), %%mm2 \n\t"
36
54
                "add %%"REG_a", %%"REG_S" \n\t"
48
66
                "paddw %%mm1, %%mm4 \n\t"
49
67
                "paddw %%mm2, %%mm4 \n\t"
50
68
                "paddw %%mm3, %%mm4 \n\t"
51
 
                
 
69
 
52
70
                "decl %%ecx \n\t"
53
71
                "jnz 1b \n\t"
54
72
                "movq %%mm4, (%%"REG_d") \n\t"
55
73
                "emms \n\t"
56
 
                : 
 
74
                :
57
75
                : "S" (old), "D" (new), "a" ((long)os), "b" ((long)ns), "d" (out)
58
76
                : "%ecx", "memory"
59
77
                );
110
128
                new->w*(new->bpp/8), new->h, old->stride[0], new->stride[0]);
111
129
}
112
130
 
113
 
static int put_image(struct vf_instance_s* vf, mp_image_t *mpi, double pts)
 
131
static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts)
114
132
{
115
133
        mp_image_t *dmpi;
116
134
 
132
150
        }
133
151
        vf->priv->last++;
134
152
        vf->priv->cnt=0;
135
 
        
 
153
 
136
154
        memcpy_pic(dmpi->planes[0], mpi->planes[0], mpi->w, mpi->h,
137
155
                dmpi->stride[0], mpi->stride[0]);
138
156
        if (mpi->flags & MP_IMGFLAG_PLANAR) {
146
164
        return vf_next_put_image(vf, dmpi, pts);
147
165
}
148
166
 
149
 
static void uninit(struct vf_instance_s* vf)
 
167
static void uninit(struct vf_instance *vf)
150
168
{
151
169
        free(vf->priv);
152
170
}
153
171
 
154
 
static int open(vf_instance_t *vf, char* args)
 
172
static int vf_open(vf_instance_t *vf, char *args)
155
173
{
156
174
        struct vf_priv_s *p;
157
175
        vf->put_image = put_image;
175
193
    "decimate",
176
194
    "Rich Felker",
177
195
    "",
178
 
    open,
 
196
    vf_open,
179
197
    NULL
180
198
};
181
 
 
182