OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 unsigned char *src_ptr, | 92 unsigned char *src_ptr, |
93 int src_pixels_per_line, | 93 int src_pixels_per_line, |
94 int xoffset, | 94 int xoffset, |
95 int yoffset, | 95 int yoffset, |
96 unsigned char *dst_ptr, | 96 unsigned char *dst_ptr, |
97 int dst_pitch | 97 int dst_pitch |
98 ) | 98 ) |
99 { | 99 { |
100 const short *HFilter; | 100 const short *HFilter; |
101 const short *VFilter; | 101 const short *VFilter; |
102 DECLARE_ALIGNED_ARRAY(4, short, FData, 12*4); /* Temp data buffer used in fi
ltering */ | 102 DECLARE_ALIGNED(4, short, FData[12*4]); /* Temp data buffer used in filterin
g */ |
103 | 103 |
104 | 104 |
105 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ | 105 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ |
106 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ | 106 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ |
107 | 107 |
108 /* Vfilter is null. First pass only */ | 108 /* Vfilter is null. First pass only */ |
109 if (xoffset && !yoffset) | 109 if (xoffset && !yoffset) |
110 { | 110 { |
111 /*vp8_filter_block2d_first_pass_armv6 ( src_ptr, FData+2, src_pixels_per
_line, 4, 4, HFilter ); | 111 /*vp8_filter_block2d_first_pass_armv6 ( src_ptr, FData+2, src_pixels_per
_line, 4, 4, HFilter ); |
112 vp8_filter_block2d_second_pass_armv6 ( FData+2, dst_ptr, dst_pitch, 4, V
Filter );*/ | 112 vp8_filter_block2d_second_pass_armv6 ( FData+2, dst_ptr, dst_pitch, 4, V
Filter );*/ |
(...skipping 27 matching lines...) Expand all Loading... |
140 unsigned char *src_ptr, | 140 unsigned char *src_ptr, |
141 int src_pixels_per_line, | 141 int src_pixels_per_line, |
142 int xoffset, | 142 int xoffset, |
143 int yoffset, | 143 int yoffset, |
144 unsigned char *dst_ptr, | 144 unsigned char *dst_ptr, |
145 int dst_pitch | 145 int dst_pitch |
146 ) | 146 ) |
147 { | 147 { |
148 const short *HFilter; | 148 const short *HFilter; |
149 const short *VFilter; | 149 const short *VFilter; |
150 DECLARE_ALIGNED_ARRAY(4, short, FData, 16*8); /* Temp data buffer used in fi
ltering */ | 150 DECLARE_ALIGNED(4, short, FData[16*8]); /* Temp data buffer used in filterin
g */ |
151 | 151 |
152 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ | 152 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ |
153 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ | 153 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ |
154 | 154 |
155 if (xoffset && !yoffset) | 155 if (xoffset && !yoffset) |
156 { | 156 { |
157 vp8_filter_block2d_first_pass_only_armv6(src_ptr, dst_ptr, src_pixels_pe
r_line, 8, dst_pitch, HFilter); | 157 vp8_filter_block2d_first_pass_only_armv6(src_ptr, dst_ptr, src_pixels_pe
r_line, 8, dst_pitch, HFilter); |
158 } | 158 } |
159 /* Hfilter is null. Second pass only */ | 159 /* Hfilter is null. Second pass only */ |
160 else if (!xoffset && yoffset) | 160 else if (!xoffset && yoffset) |
(...skipping 21 matching lines...) Expand all Loading... |
182 unsigned char *src_ptr, | 182 unsigned char *src_ptr, |
183 int src_pixels_per_line, | 183 int src_pixels_per_line, |
184 int xoffset, | 184 int xoffset, |
185 int yoffset, | 185 int yoffset, |
186 unsigned char *dst_ptr, | 186 unsigned char *dst_ptr, |
187 int dst_pitch | 187 int dst_pitch |
188 ) | 188 ) |
189 { | 189 { |
190 const short *HFilter; | 190 const short *HFilter; |
191 const short *VFilter; | 191 const short *VFilter; |
192 DECLARE_ALIGNED_ARRAY(4, short, FData, 24*16); /* Temp data buffer used i
n filtering */ | 192 DECLARE_ALIGNED(4, short, FData[24*16]); /* Temp data buffer used in filt
ering */ |
193 | 193 |
194 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ | 194 HFilter = vp8_sub_pel_filters[xoffset]; /* 6 tap */ |
195 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ | 195 VFilter = vp8_sub_pel_filters[yoffset]; /* 6 tap */ |
196 | 196 |
197 if (xoffset && !yoffset) | 197 if (xoffset && !yoffset) |
198 { | 198 { |
199 vp8_filter_block2d_first_pass_only_armv6(src_ptr, dst_ptr, src_pixels_pe
r_line, 16, dst_pitch, HFilter); | 199 vp8_filter_block2d_first_pass_only_armv6(src_ptr, dst_ptr, src_pixels_pe
r_line, 16, dst_pitch, HFilter); |
200 } | 200 } |
201 /* Hfilter is null. Second pass only */ | 201 /* Hfilter is null. Second pass only */ |
202 else if (!xoffset && yoffset) | 202 else if (!xoffset && yoffset) |
203 { | 203 { |
204 vp8_filter_block2d_second_pass_only_armv6(src_ptr, dst_ptr, src_pixels_p
er_line, 16, dst_pitch, VFilter); | 204 vp8_filter_block2d_second_pass_only_armv6(src_ptr, dst_ptr, src_pixels_p
er_line, 16, dst_pitch, VFilter); |
205 } | 205 } |
206 else | 206 else |
207 { | 207 { |
208 if (yoffset & 0x1) | 208 if (yoffset & 0x1) |
209 { | 209 { |
210 vp8_filter_block2d_first_pass_16x16_armv6(src_ptr - src_pixels_per_l
ine, FData + 1, src_pixels_per_line, 16, 19, HFilter); | 210 vp8_filter_block2d_first_pass_16x16_armv6(src_ptr - src_pixels_per_l
ine, FData + 1, src_pixels_per_line, 16, 19, HFilter); |
211 vp8_filter4_block2d_second_pass_armv6(FData + 2, dst_ptr, dst_pitch,
16, VFilter); | 211 vp8_filter4_block2d_second_pass_armv6(FData + 2, dst_ptr, dst_pitch,
16, VFilter); |
212 } | 212 } |
213 else | 213 else |
214 { | 214 { |
215 vp8_filter_block2d_first_pass_16x16_armv6(src_ptr - (2 * src_pixels_
per_line), FData, src_pixels_per_line, 16, 21, HFilter); | 215 vp8_filter_block2d_first_pass_16x16_armv6(src_ptr - (2 * src_pixels_
per_line), FData, src_pixels_per_line, 16, 21, HFilter); |
216 vp8_filter_block2d_second_pass_armv6(FData + 2, dst_ptr, dst_pitch,
16, VFilter); | 216 vp8_filter_block2d_second_pass_armv6(FData + 2, dst_ptr, dst_pitch,
16, VFilter); |
217 } | 217 } |
218 } | 218 } |
219 | 219 |
220 } | 220 } |
221 #endif | 221 #endif |
OLD | NEW |