111 int sample_size, samples,
channel, num_dest_channels;
112 const int16_t *src16;
119 sample_size = (num_dest_channels *
121 samples =
frame->nb_samples;
123 pkt_size = sample_size * samples + 4;
131 src16 = (
const int16_t *)
frame->data[0];
141 samples *= num_dest_channels;
147 bytestream2_put_be16u(&pb, *src16++);
152 bytestream2_put_be24u(&pb, (*src32++) >> 8);
169 bytestream2_put_be16u(&pb, *src16++);
178 bytestream2_put_be24u(&pb, (*src32++) >> 8);
188 bytestream2_put_be16u(&pb, src16[0]);
189 bytestream2_put_be16u(&pb, src16[1]);
190 bytestream2_put_be16u(&pb, src16[2]);
191 bytestream2_put_be16u(&pb, src16[4]);
192 bytestream2_put_be16u(&pb, src16[5]);
193 bytestream2_put_be16u(&pb, src16[3]);
198 bytestream2_put_be24u(&pb, src32[0] >> 8);
199 bytestream2_put_be24u(&pb, src32[1] >> 8);
200 bytestream2_put_be24u(&pb, src32[2] >> 8);
201 bytestream2_put_be24u(&pb, src32[4] >> 8);
202 bytestream2_put_be24u(&pb, src32[5] >> 8);
203 bytestream2_put_be24u(&pb, src32[3] >> 8);
212 bytestream2_put_be16u(&pb, src16[0]);
213 bytestream2_put_be16u(&pb, src16[1]);
214 bytestream2_put_be16u(&pb, src16[2]);
215 bytestream2_put_be16u(&pb, src16[5]);
216 bytestream2_put_be16u(&pb, src16[3]);
217 bytestream2_put_be16u(&pb, src16[4]);
218 bytestream2_put_be16u(&pb, src16[6]);
224 bytestream2_put_be24u(&pb, src32[0] >> 8);
225 bytestream2_put_be24u(&pb, src32[1] >> 8);
226 bytestream2_put_be24u(&pb, src32[2] >> 8);
227 bytestream2_put_be24u(&pb, src32[5] >> 8);
228 bytestream2_put_be24u(&pb, src32[3] >> 8);
229 bytestream2_put_be24u(&pb, src32[4] >> 8);
230 bytestream2_put_be24u(&pb, src32[6] >> 8);
240 bytestream2_put_be16u(&pb, src16[0]);
241 bytestream2_put_be16u(&pb, src16[1]);
242 bytestream2_put_be16u(&pb, src16[2]);
243 bytestream2_put_be16u(&pb, src16[6]);
244 bytestream2_put_be16u(&pb, src16[4]);
245 bytestream2_put_be16u(&pb, src16[5]);
246 bytestream2_put_be16u(&pb, src16[7]);
247 bytestream2_put_be16u(&pb, src16[3]);
252 bytestream2_put_be24u(&pb, src32[0]);
253 bytestream2_put_be24u(&pb, src32[1]);
254 bytestream2_put_be24u(&pb, src32[2]);
255 bytestream2_put_be24u(&pb, src32[6]);
256 bytestream2_put_be24u(&pb, src32[4]);
257 bytestream2_put_be24u(&pb, src32[5]);
258 bytestream2_put_be24u(&pb, src32[7]);
259 bytestream2_put_be24u(&pb, src32[3]);
main external API structure.
AVChannelLayout ch_layout
Audio channel layout.
enum AVSampleFormat sample_fmt
audio sample format
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
int frame_size
Number of samples per channel in an audio frame.