annotate ivi_dsp.h @ 12530:63edd10ad4bc libavcodec tip

Try to fix crashes introduced by r25218 r25218 made assumptions about the existence of past reference frames that weren't necessarily true.
author darkshikari
date Tue, 28 Sep 2010 09:06:22 +0000
parents 0885e7a93ed4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
1 /*
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
2 * DSP functions for Indeo Video Interactive codecs (Indeo4 and Indeo5)
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
3 *
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
4 * Copyright (c) 2009 Maxim Poliakovski
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
5 *
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
6 * This file is part of FFmpeg.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
7 *
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
8 * FFmpeg is free software; you can redistribute it and/or
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
9 * modify it under the terms of the GNU Lesser General Public
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
10 * License as published by the Free Software Foundation; either
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
11 * version 2.1 of the License, or (at your option) any later version.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
12 *
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
13 * FFmpeg is distributed in the hope that it will be useful,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
16 * Lesser General Public License for more details.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
17 *
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
18 * You should have received a copy of the GNU Lesser General Public
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
19 * License along with FFmpeg; if not, write to the Free Software
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
21 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
22
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
23 /**
11644
7dd2a45249a9 Remove explicit filename from Doxygen @file commands.
diego
parents: 11054
diff changeset
24 * @file
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
25 * DSP functions (inverse transforms, motion compensations, wavelet recompostion)
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
26 * for Indeo Video Interactive codecs.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
27 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
28
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
29 #ifndef AVCODEC_IVI_DSP_H
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
30 #define AVCODEC_IVI_DSP_H
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
31
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
32 #include "avcodec.h"
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
33 #include "ivi_common.h"
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
34
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
35 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
36 * 5/3 wavelet recomposition filter for Indeo5
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
37 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
38 * @param[in] plane pointer to the descriptor of the plane being processed
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
39 * @param[out] dst pointer to the destination buffer
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
40 * @param[in] dst_pitch pitch of the destination buffer
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
41 * @param[in] num_bands number of wavelet bands to be processed
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
42 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
43 void ff_ivi_recompose53(const IVIPlaneDesc *plane, uint8_t *dst,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
44 const int dst_pitch, const int num_bands);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
45
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
46 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
47 * two-dimensional inverse slant 8x8 transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
48 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
49 * @param[in] in pointer to the vector of transform coefficients
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
50 * @param[out] out pointer to the output buffer (frame)
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
51 * @param[in] pitch pitch to move to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
52 * @param[in] flags pointer to the array of column flags:
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
53 * != 0 - non_empty column, 0 - empty one
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
54 * (this array must be filled by caller)
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
55 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
56 void ff_ivi_inverse_slant_8x8(const int32_t *in, int16_t *out, uint32_t pitch,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
57 const uint8_t *flags);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
58
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
59 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
60 * two-dimensional inverse slant 4x4 transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
61 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
62 * @param[in] in pointer to the vector of transform coefficients
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
63 * @param[out] out pointer to the output buffer (frame)
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
64 * @param[in] pitch pitch to move to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
65 * @param[in] flags pointer to the array of column flags:
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
66 * != 0 - non_empty column, 0 - empty one
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
67 * (this array must be filled by caller)
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
68 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
69 void ff_ivi_inverse_slant_4x4(const int32_t *in, int16_t *out, uint32_t pitch,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
70 const uint8_t *flags);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
71
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
72 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
73 * DC-only two-dimensional inverse slant transform.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
74 * Performing the inverse slant transform in this case is equivalent to
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
75 * spreading (DC_coeff + 1)/2 over the whole block.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
76 * It works much faster than performing the slant transform on a vector of zeroes.
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
77 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
78 * @param[in] in pointer to the dc coefficient
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
79 * @param[out] out pointer to the output buffer (frame)
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
80 * @param[in] pitch pitch to move to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
81 * @param[in] blk_size transform block size
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
82 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
83 void ff_ivi_dc_slant_2d(const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
84
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
85 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
86 * inverse 1D row slant transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
87 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
88 * @param[in] in pointer to the vector of transform coefficients
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
89 * @param[out] out pointer to the output buffer (frame)
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
90 * @param[in] pitch pitch to move to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
91 * @param[in] flags pointer to the array of column flags (unused here)
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
92 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
93 void ff_ivi_row_slant8(const int32_t *in, int16_t *out, uint32_t pitch,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
94 const uint8_t *flags);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
95
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
96 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
97 * inverse 1D column slant transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
98 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
99 * @param[in] in pointer to the vector of transform coefficients
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
100 * @param[out] out pointer to the output buffer (frame)
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
101 * @param[in] pitch pitch to move to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
102 * @param[in] flags pointer to the array of column flags:
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
103 * != 0 - non_empty column, 0 - empty one
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
104 * (this array must be filled by caller)
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
105 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
106 void ff_ivi_col_slant8(const int32_t *in, int16_t *out, uint32_t pitch,
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
107 const uint8_t *flags);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
108
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
109 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
110 * DC-only inverse row slant transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
111 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
112 void ff_ivi_dc_row_slant(const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
113
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
114 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
115 * DC-only inverse column slant transform
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
116 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
117 void ff_ivi_dc_col_slant(const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
118
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
119 /**
12024
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 11644
diff changeset
120 * Copy the pixels into the frame buffer.
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
121 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
122 void ff_ivi_put_pixels_8x8(const int32_t *in, int16_t *out, uint32_t pitch, const uint8_t *flags);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
123
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
124 /**
12024
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 11644
diff changeset
125 * Copy the DC coefficient into the first pixel of the block and
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 11644
diff changeset
126 * zero all others.
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
127 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
128 void ff_ivi_put_dc_pixel_8x8(const int32_t *in, int16_t *out, uint32_t pitch, int blk_size);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
129
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
130 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
131 * 8x8 block motion compensation with adding delta
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
132 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
133 * @param[in,out] buf pointer to the block in the current frame buffer containing delta
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
134 * @param[in] ref_buf pointer to the corresponding block in the reference frame
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
135 * @param[in] pitch pitch for moving to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
136 * @param[in] mc_type interpolation type
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
137 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
138 void ff_ivi_mc_8x8_delta(int16_t *buf, const int16_t *ref_buf, uint32_t pitch, int mc_type);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
139
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
140 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
141 * 4x4 block motion compensation with adding delta
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
142 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
143 * @param[in,out] buf pointer to the block in the current frame buffer containing delta
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
144 * @param[in] ref_buf pointer to the corresponding block in the reference frame
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
145 * @param[in] pitch pitch for moving to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
146 * @param[in] mc_type interpolation type
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
147 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
148 void ff_ivi_mc_4x4_delta(int16_t *buf, const int16_t *ref_buf, uint32_t pitch, int mc_type);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
149
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
150 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
151 * motion compensation without adding delta
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
152 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
153 * @param[in,out] buf pointer to the block in the current frame receiving the result
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
154 * @param[in] ref_buf pointer to the corresponding block in the reference frame
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
155 * @param[in] pitch pitch for moving to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
156 * @param[in] mc_type interpolation type
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
157 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
158 void ff_ivi_mc_8x8_no_delta(int16_t *buf, const int16_t *ref_buf, uint32_t pitch, int mc_type);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
159
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
160 /**
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
161 * 4x4 block motion compensation without adding delta
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
162 *
12181
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
163 * @param[in,out] buf pointer to the block in the current frame receiving the result
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
164 * @param[in] ref_buf pointer to the corresponding block in the reference frame
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
165 * @param[in] pitch pitch for moving to the next y line
0885e7a93ed4 Fix Doxygen @param command attribute syntax.
diego
parents: 12024
diff changeset
166 * @param[in] mc_type interpolation type
11054
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
167 */
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
168 void ff_ivi_mc_4x4_no_delta(int16_t *buf, const int16_t *ref_buf, uint32_t pitch, int mc_type);
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
169
3b79a8709f43 Indeo Video Interactive 4 and 5 common code and DSP functions.
kostya
parents:
diff changeset
170 #endif /* AVCODEC_IVI_DSP_H */