~ubuntu-branches/ubuntu/hardy/avidemux/hardy

« back to all changes in this revision

Viewing changes to avidemux/mpeg2enc/altivec/altivec_motion.h

  • Committer: Bazaar Package Importer
  • Author(s): Matvey Kozhev
  • Date: 2007-12-18 13:53:04 UTC
  • mfrom: (1.1.7 upstream)
  • Revision ID: james.westby@ubuntu.com-20071218135304-cdqec2lg2bglyz15
Tags: 1:2.4~preview3-0.0ubuntu1
* Upload to Ubuntu. (LP: #163287, LP: #126572)
* debian/changelog: re-added Ubuntu releases.
* debian/control:
  - Require debhelper >= 5.0.51 (for dh_icons) and imagemagick.
  - Build-depend on libsdl1.2-dev instead of libsdl-dev.
  - Build against newer libx264-dev. (LP: #138854)
  - Removed libamrnb-dev, not in Ubuntu yet.
* debian/rules:
  - Install all icon sizes, using convert (upstream installs none).
  - Added missing calls to dh_installmenu, dh_installman, dh_icons and
    dh_desktop.
* debian/menu, debian/avidemux-qt.menu:
  - Corrected package and executable names.
* debian/avidemux-common.install: Install icons.
* debian/avidemux.common.manpages: Install man/avidemux.1.
* debian/links, debian/avidemux-cli.links, debian/avidemux-gtk.links:
  - Link manpages to avidemux.1.gz.
* debian/install, debian/avidemux-qt.install, debian/avidemux-gtk.desktop,
  debian/avidemux-qt.desktop: Install desktop files.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* altivec_motion.h, this file is part of the
2
 
 * AltiVec optimized library for MJPEG tools MPEG-1/2 Video Encoder
3
 
 * Copyright (C) 2002  James Klicman <james@klicman.org>
4
 
 *
5
 
 * This library is free software; you can redistribute it and/or modify
6
 
 * it under the terms of the GNU General Public License as published by
7
 
 * the Free Software Foundation; either version 2 of the License, or
8
 
 * (at your option) any later version.
9
 
 *
10
 
 * This program is distributed in the hope that it will be useful,
11
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 
 * GNU General Public License for more details.
14
 
 *
15
 
 * You should have received a copy of the GNU General Public License
16
 
 * along with this program; if not, write to the Free Software
17
 
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
 
 */
19
 
 
20
 
#include <stdint.h>
21
 
#include "../motionsearch.h"
22
 
 
23
 
#include "altivec_conf.h"
24
 
 
25
 
 
26
 
#define ALTIVEC_TEST_MOTION /* {{{ */                                        \
27
 
    ( ( defined(ALTIVEC_BENCHMARK) || defined(ALTIVEC_VERIFY) ) &&           \
28
 
      ( ALTIVEC_TEST_FUNCTION(build_sub44_mests) ||                          \
29
 
        ALTIVEC_TEST_FUNCTION(build_sub22_mests) ||                          \
30
 
        ALTIVEC_TEST_FUNCTION(find_best_one_pel) ||                          \
31
 
        ALTIVEC_TEST_FUNCTION(sub_mean_reduction) ||                         \
32
 
        ALTIVEC_TEST_FUNCTION(sad_00) ||                                     \
33
 
        ALTIVEC_TEST_FUNCTION(sad_01) ||                                     \
34
 
        ALTIVEC_TEST_FUNCTION(sad_10) ||                                     \
35
 
        ALTIVEC_TEST_FUNCTION(sad_11) ||                                     \
36
 
        ALTIVEC_TEST_FUNCTION(bsad) ||                                       \
37
 
        ALTIVEC_TEST_FUNCTION(sumsq) ||                                      \
38
 
        ALTIVEC_TEST_FUNCTION(sumsq_sub22) ||                                \
39
 
        ALTIVEC_TEST_FUNCTION(bsumsq) ||                                     \
40
 
        ALTIVEC_TEST_FUNCTION(bsumsq_sub22) ||                               \
41
 
        ALTIVEC_TEST_FUNCTION(subsample_image) ||                            \
42
 
        ALTIVEC_TEST_FUNCTION(variance) ) )                                  \
43
 
    /* }}} */
44
 
 
45
 
 
46
 
#ifdef __cplusplus
47
 
extern "C" {
48
 
#endif
49
 
 
50
 
void enable_altivec_motion(void);
51
 
 
52
 
ALTIVEC_FUNCTION(build_sub44_mests, int,
53
 
  (
54
 
    me_result_set *sub44set,
55
 
    int ilow, int jlow, int ihigh, int jhigh, 
56
 
    int i0, int j0,
57
 
    int null_ctl_sad,
58
 
    uint8_t *s44org, uint8_t *s44blk, 
59
 
    int qrowstride, int qh,
60
 
    int reduction
61
 
  ));
62
 
 
63
 
ALTIVEC_FUNCTION(build_sub22_mests, int,
64
 
  (
65
 
    me_result_set *sub44set,
66
 
    me_result_set *sub22set,
67
 
    int i0,  int j0, int ihigh, int jhigh, 
68
 
    int null_ctl_sad,
69
 
    uint8_t *s22org,  uint8_t *s22blk, 
70
 
    int frowstride, int fh,
71
 
    int reduction
72
 
  ));
73
 
 
74
 
ALTIVEC_FUNCTION(find_best_one_pel, void,
75
 
  (
76
 
    me_result_set *sub22set,
77
 
    uint8_t *org, uint8_t *blk,
78
 
    int i0, int j0,
79
 
    int ihigh, int jhigh,
80
 
    int rowstride, int h,
81
 
    me_result_s *best_so_far
82
 
  ));
83
 
 
84
 
ALTIVEC_FUNCTION(sub_mean_reduction, void,
85
 
        (me_result_set *matchset, int times, int *minweight_res));
86
 
 
87
 
ALTIVEC_FUNCTION(sad_00,int,
88
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int h, int distlim));
89
 
 
90
 
ALTIVEC_FUNCTION(sad_01, int,
91
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int h));
92
 
 
93
 
ALTIVEC_FUNCTION(sad_10, int,
94
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int h));
95
 
 
96
 
ALTIVEC_FUNCTION(sad_11, int,
97
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int h));
98
 
 
99
 
ALTIVEC_FUNCTION(bsad, int,
100
 
        (uint8_t *pf, uint8_t *pb, uint8_t *p2, int rowstride,
101
 
         int hxf, int hyf, int hxb, int hyb, int h));
102
 
 
103
 
 
104
 
ALTIVEC_FUNCTION(sumsq, int,
105
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int hx, int hy, int h));
106
 
 
107
 
ALTIVEC_FUNCTION(sumsq_sub22, int,
108
 
        (uint8_t *blk1, uint8_t *blk2, int rowstride, int h));
109
 
 
110
 
 
111
 
ALTIVEC_FUNCTION(bsumsq, int,
112
 
        (uint8_t *pf, uint8_t *pb, uint8_t *p2, int rowstride,
113
 
         int hxf, int hyf, int hxb, int hyb, int h));
114
 
 
115
 
ALTIVEC_FUNCTION(bsumsq_sub22, int,
116
 
        (uint8_t *blk1f, uint8_t *blk1b, uint8_t *blk2, int rowstride, int h));
117
 
 
118
 
 
119
 
ALTIVEC_FUNCTION(subsample_image, void,
120
 
        (uint8_t *image, int rowstride,
121
 
         uint8_t *sub22_image, uint8_t *sub44_image));
122
 
 
123
 
ALTIVEC_FUNCTION(variance, void,
124
 
        (uint8_t *p, int size, int rowstride,
125
 
         unsigned int *p_var, unsigned int *p_mean));
126
 
 
127
 
#ifdef __cplusplus
128
 
}
129
 
#endif