1mlib_SignalConvertShift_U8_mSe8d_iSaaLti(b3MLLiIbBrm)alriyb_FSuingcntailoCnosnvertShift_U8_S8_Sat(3MLIB)
2
3
4
6 mlib_SignalConvertShift_U8_S8_Sat, mlib_SignalConvertShift_U8_S16_Sat,
7 mlib_SignalConvertShift_U8_S32_Sat, mlib_SignalConvertShift_U8_F32_Sat,
8 mlib_SignalConvertShift_U8S_S8S_Sat, mlib_SignalCon‐
9 vertShift_U8S_S16S_Sat, mlib_SignalConvertShift_U8S_S32S_Sat, mlib_Sig‐
10 nalConvertShift_U8S_F32S_Sat, mlib_SignalConvertShift_S8_U8_Sat,
11 mlib_SignalConvertShift_S8_S16_Sat, mlib_SignalConvertShift_S8_S32_Sat,
12 mlib_SignalConvertShift_S8_F32_Sat, mlib_SignalCon‐
13 vertShift_S8S_U8S_Sat, mlib_SignalConvertShift_S8S_S16S_Sat, mlib_Sig‐
14 nalConvertShift_S8S_S32S_Sat, mlib_SignalConvertShift_S8S_F32S_Sat,
15 mlib_SignalConvertShift_S16_U8_Sat, mlib_SignalConvertShift_S16_S8_Sat,
16 mlib_SignalConvertShift_S16_S32_Sat, mlib_SignalCon‐
17 vertShift_S16_F32_Sat, mlib_SignalConvertShift_S16S_U8S_Sat, mlib_Sig‐
18 nalConvertShift_S16S_S8S_Sat, mlib_SignalConvertShift_S16S_S32S_Sat,
19 mlib_SignalConvertShift_S16S_F32S_Sat, mlib_SignalCon‐
20 vertShift_S32_U8_Sat, mlib_SignalConvertShift_S32_S8_Sat, mlib_Signal‐
21 ConvertShift_S32_S16_Sat, mlib_SignalConvertShift_S32_F32_Sat,
22 mlib_SignalConvertShift_S32S_U8S_Sat, mlib_SignalCon‐
23 vertShift_S32S_S8S_Sat, mlib_SignalConvertShift_S32S_S16S_Sat,
24 mlib_SignalConvertShift_S32S_F32S_Sat - data type convert with shifting
25
27 cc [ flag... ] file... -lmlib [ library... ]
28 #include <mlib.h>
29
30 mlib_status mlib_SignalConvertShift_U8_S8_Sat(mlib_u8 *dst,
31 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
32
33
34 mlib_status mlib_SignalConvertShift_U8_S16_Sat(mlib_u8 *dst,
35 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
36
37
38 mlib_status mlib_SignalConvertShift_U8_S32_Sat(mlib_u8 *dst,
39 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
40
41
42 mlib_status mlib_SignalConvertShift_U8_F32_Sat(mlib_u8 *dst,
43 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
44
45
46 mlib_status mlib_SignalConvertShift_U8S_S8S_Sat(mlib_u8 *dst,
47 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
48
49
50 mlib_status mlib_SignalConvertShift_U8S_S16S_Sat(mlib_u8 *dst,
51 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
52
53
54 mlib_status mlib_SignalConvertShift_U8S_S32S_Sat(mlib_u8 *dst,
55 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
56
57
58 mlib_status mlib_SignalConvertShift_U8S_F32S_Sat(mlib_u8 *dst,
59 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
60
61
62 mlib_status mlib_SignalConvertShift_S8_U8_Sat(mlib_s8 *dst,
63 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
64
65
66 mlib_status mlib_SignalConvertShift_S8_S16_Sat(mlib_s8 *dst,
67 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
68
69
70 mlib_status mlib_SignalConvertShift_S8_S32_Sat(mlib_s8 *dst,
71 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
72
73
74 mlib_status mlib_SignalConvertShift_S8_F32_Sat(mlib_s8 *dst,
75 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
76
77
78 mlib_status mlib_SignalConvertShift_S8S_U8S_Sat(mlib_s8 *dst,
79 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
80
81
82 mlib_status mlib_SignalConvertShift_S8S_S16S_Sat(mlib_s8 *dst,
83 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
84
85
86 mlib_status mlib_SignalConvertShift_S8S_S32S_Sat(mlib_s8 *dst,
87 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
88
89
90 mlib_status mlib_SignalConvertShift_S8S_F32S_Sat(mlib_s8 *dst,
91 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
92
93
94 mlib_status mlib_SignalConvertShift_S16_U8_Sat(mlib_s16 *dst,
95 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
96
97
98 mlib_status mlib_SignalConvertShift_S16_S8_Sat(mlib_s16 *dst,
99 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
100
101
102 mlib_status mlib_SignalConvertShift_S16_S32_Sat(mlib_s16 *dst,
103 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
104
105
106 mlib_status mlib_SignalConvertShift_S16_F32_Sat(mlib_s16 *dst,
107 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
108
109
110 mlib_status mlib_SignalConvertShift_S16S_U8S_Sat(mlib_s16 *dst,
111 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
112
113
114 mlib_status mlib_SignalConvertShift_S16S_S8S_Sat(mlib_s16 *dst,
115 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
116
117
118 mlib_status mlib_SignalConvertShift_S16S_S32S_Sat(mlib_s16 *dst,
119 const mlib_s32 *src, mlib_s32 shift, mlib_s32 n);
120
121
122 mlib_status mlib_SignalConvertShift_S16S_F32S_Sat(mlib_s16 *dst,
123 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
124
125
126 mlib_status mlib_SignalConvertShift_S32_U8_Sat(mlib_s32 *dst,
127 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
128
129
130 mlib_status mlib_SignalConvertShift_S32_S8_Sat(mlib_s32 *dst,
131 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
132
133
134 mlib_status mlib_SignalConvertShift_S32_S16_Sat(mlib_s32 *dst,
135 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
136
137
138 mlib_status mlib_SignalConvertShift_S32_F32_Sat(mlib_s32 *dst,
139 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
140
141
142 mlib_status mlib_SignalConvertShift_S32S_U8S_Sat(mlib_s32 *dst,
143 const mlib_u8 *src, mlib_s32 shift, mlib_s32 n);
144
145
146 mlib_status mlib_SignalConvertShift_S32S_S8S_Sat(mlib_s32 *dst,
147 const mlib_s8 *src, mlib_s32 shift, mlib_s32 n);
148
149
150 mlib_status mlib_SignalConvertShift_S32S_S16S_Sat(mlib_s32 *dst,
151 const mlib_s16 *src, mlib_s32 shift, mlib_s32 n);
152
153
154 mlib_status mlib_SignalConvertShift_S32S_F32S_Sat(mlib_s32 *dst,
155 const mlib_f32 *src, mlib_s32 shift, mlib_s32 n);
156
157
159 Each of these functions performs data type convert with shifting.
160
161
162 The following equation is used:
163
164 dst[i] = saturate(src[i] * 2**shift)
165
166
167
168 See the following tables for available variations of this group of data
169 type convert functions.
170
171
172
173
174 Type [*] U8 S8 S16 S32
175 ────────────────────────────────────────────────────────────────────
176 U8 Y Y Y
177 S8 Y Y Y
178 ────────────────────────────────────────────────────────────────────
179 S16 Y Y Y
180 ────────────────────────────────────────────────────────────────────
181 S32 Y Y Y
182 ────────────────────────────────────────────────────────────────────
183 F32 Y Y Y Y
184
185
186
187
188
189 Type [*] U8S S8S S16S S32S
190 ────────────────────────────────────────────────────────────────────
191 U8S Y Y Y
192 ────────────────────────────────────────────────────────────────────
193 S8S Y Y Y
194 ────────────────────────────────────────────────────────────────────
195 S16S Y Y Y
196 ────────────────────────────────────────────────────────────────────
197
198
199 S32S Y Y Y
200 ────────────────────────────────────────────────────────────────────
201 F32S Y Y Y Y
202
203
204
205 [*] Each row represents a source data type. Each column represents a
206 destination data type.
207
209 Each of the functions takes the following arguments:
210
211 dst Destination signal array.
212
213
214 src Source signal array.
215
216
217 shift Left shifting factor.
218
219
220 n Number of samples in the source signal arrays.
221
222
224 Each of the functions returns MLIB_SUCCESS if successful. Otherwise it
225 returns MLIB_FAILURE.
226
228 See attributes(5) for descriptions of the following attributes:
229
230
231
232
233 ┌─────────────────────────────┬─────────────────────────────┐
234 │ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
235 ├─────────────────────────────┼─────────────────────────────┤
236 │Interface Stability │Committed │
237 ├─────────────────────────────┼─────────────────────────────┤
238 │MT-Level │MT-Safe │
239 └─────────────────────────────┴─────────────────────────────┘
240
242 mlib_SignalConvertShift_F32_U8(3MLIB), attributes(5)
243
244
245
246SunOS 5.11 2 Marml2i0b0_7SignalConvertShift_U8_S8_Sat(3MLIB)