Lines Matching refs:channel
279 avpriv_request_sample(avctx, "channel count %d", avctx->ch_layout.nb_channels);
836 * Get the number of samples (per channel) that will be decoded from the packet.
1029 bytestream2_skip(gb, 4); // channel size
1106 for (int channel = 0; channel < channels; channel++) {
1107 ADPCMChannelStatus *cs = &c->status[channel];
1131 channel, cs->step_index);
1135 samples = samples_p[channel];
1234 for (int channel = 0; channel < avctx->ch_layout.nb_channels; channel++) {
1235 samples = samples_p[channel];
1239 channel, block_predictor);
1242 c->status[channel].coeff1 = ff_adpcm_AdaptCoeff1[block_predictor];
1243 c->status[channel].coeff2 = ff_adpcm_AdaptCoeff2[block_predictor];
1244 c->status[channel].idelta = sign_extend(bytestream2_get_le16u(&gb), 16);
1245 c->status[channel].sample1 = sign_extend(bytestream2_get_le16u(&gb), 16);
1246 c->status[channel].sample2 = sign_extend(bytestream2_get_le16u(&gb), 16);
1247 *samples++ = c->status[channel].sample2;
1248 *samples++ = c->status[channel].sample1;
1251 *samples++ = adpcm_ms_expand_nibble(&c->status[channel], byte >> 4 );
1252 *samples++ = adpcm_ms_expand_nibble(&c->status[channel], byte & 0x0F);
1296 for (int channel = 0; channel < channels; channel += 2) {
1298 c->status[channel ].step = bytestream2_get_le16u(&gb) & 0x1f;
1299 c->status[channel + 1].step = bytestream2_get_le16u(&gb) & 0x1f;
1300 c->status[channel ].predictor = sign_extend(bytestream2_get_le16u(&gb), 16);
1302 c->status[channel + 1].predictor = sign_extend(bytestream2_get_le16u(&gb), 16);
1306 samples_p[channel][n ] = adpcm_mtaf_expand_nibble(&c->status[channel], v & 0x0F);
1307 samples_p[channel][n + 1] = adpcm_mtaf_expand_nibble(&c->status[channel], v >> 4 );
1311 samples_p[channel + 1][n ] = adpcm_mtaf_expand_nibble(&c->status[channel + 1], v & 0x0F);
1312 samples_p[channel + 1][n + 1] = adpcm_mtaf_expand_nibble(&c->status[channel + 1], v >> 4 );
1317 for (int channel = 0; channel < channels; channel++) {
1318 ADPCMChannelStatus *cs = &c->status[channel];
1323 channel, cs->step_index);
1366 /* for this algorithm, c->status[0] is the sum channel and
1367 * c->status[1] is the diff channel */
1369 /* process the first predictor of the sum channel */
1373 /* process the diff channel predictor */
1382 /* process the second predictor of the sum channel */
1396 for (int channel = 0; channel < channels; channel++) {
1397 ADPCMChannelStatus *cs = &c->status[channel];
1402 channel, cs->step_index);
1423 for (int channel = 0; channel < channels; channel++) {
1424 ADPCMChannelStatus *cs = &c->status[channel];
1429 channel, cs->step_index);
1435 for (int channel = 0; channel < channels; channel++) {
1436 samples = samples_p[channel] + 256 * subframe;
1439 *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3);
1440 *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3);
1446 for (int channel = 0; channel < channels; channel++) {
1447 ADPCMChannelStatus *cs = &c->status[channel];
1448 samples = samples_p[channel];
1473 for (int channel = 0; channel < channels; channel++) {
1475 *samples++ = adpcm_ima_qt_expand_nibble(&c->status[channel], v >> 4 );
1476 samples[st] = adpcm_ima_qt_expand_nibble(&c->status[channel], v & 0x0F);
1483 for (int channel = 0; channel < channels; channel++) {
1485 *samples++ = adpcm_ima_alp_expand_nibble(&c->status[channel], v >> 4 , 2);
1486 samples[st] = adpcm_ima_alp_expand_nibble(&c->status[channel], v & 0x0F, 2);
1492 for (int channel = 0; channel < channels; channel++) {
1493 int16_t *smp = samples_p[channel];
1496 *smp++ = adpcm_ima_cunning_expand_nibble(&c->status[channel], v & 0x0F);
1497 *smp++ = adpcm_ima_cunning_expand_nibble(&c->status[channel], v >> 4);
1509 for (int channel = 0; channel < channels; channel++) {
1510 ADPCMChannelStatus *cs = &c->status[channel];
1515 channel, cs->step_index);
1525 for (int channel = 0; channel < channels; channel++) {
1526 *samples++ = adpcm_ima_expand_nibble(&c->status[channel], byte[channel] & 0x0F, 3);
1528 for (int channel = 0; channel < channels; channel++) {
1529 *samples++ = adpcm_ima_expand_nibble(&c->status[channel], byte[channel] >> 4 , 3);
1535 for (int channel = 0; channel < channels; channel++) {
1536 int16_t *smp = samples_p[channel];
1540 *smp++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3);
1541 *smp++ = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3);
1546 for (int channel = 0; channel < channels; channel++) {
1548 *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3);
1549 samples[st] = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3);
1660 for (int channel = 0; channel < channels; channel++) {
1663 coeff[channel][i] = ea_adpcm_table[(byte >> 4) + 4*i];
1664 shift[channel] = 20 - (byte & 0x0F);
1672 for (int channel = 0; channel < channels; channel++) {
1673 int sample = sign_extend(byte[channel] >> i, 4) * (1 << shift[channel]);
1675 c->status[channel].sample1 * coeff[channel][0] +
1676 c->status[channel].sample2 * coeff[channel][1] + 0x80) >> 8;
1677 c->status[channel].sample2 = c->status[channel].sample1;
1678 c->status[channel].sample1 = av_clip_int16(sample);
1679 *samples++ = c->status[channel].sample1;
1689 /* channel numbering
1701 for (unsigned channel = 0; channel < channels; channel++)
1702 offsets[channel] = (big_endian ? bytestream2_get_be32(&gb) :
1706 for (unsigned channel = 0; channel < channels; channel++) {
1709 bytestream2_seek(&gb, offsets[channel], SEEK_SET);
1710 samplesC = samples_p[channel];
1716 current_sample = c->status[channel].predictor;
1717 previous_sample = c->status[channel].prev_sample;
1754 av_log(avctx, AV_LOG_WARNING, "per-channel sample count mismatch\n");
1759 c->status[channel].predictor = current_sample;
1760 c->status[channel].prev_sample = previous_sample;
1770 for (int channel=0; channel < channels; channel++) {
1772 int16_t *s = samples_p[channel];
1785 s = &samples_p[channel][m];
1802 for (int channel = 0; channel < channels; channel++) {
1803 ADPCMChannelStatus *cs = &c->status[channel];
1808 channel, cs->step_index);
1942 for (int channel = 0; channel < channels; channel++) {
1943 samples = samples_p[channel];
1946 *samples++ = adpcm_yamaha_expand_nibble(&c->status[channel], v & 0x0F);
1947 *samples++ = adpcm_yamaha_expand_nibble(&c->status[channel], v >> 4 );
1964 for (int channel = 0; channel < channels; channel++) {
1965 int prev1 = c->status[channel].sample1;
1966 int prev2 = c->status[channel].sample2;
1968 samples = samples_p[channel] + m * 16;
1969 /* Read in every sample for this channel. */
1996 c->status[channel].sample1 = prev1;
1997 c->status[channel].sample2 = prev2;
2045 /* Read in every sample for this channel. */
2076 for (int channel = 0; channel < channels; channel++) {
2077 samples = samples_p[channel];
2079 /* Read in every sample for this channel. */
2082 if (channel)
2085 bytestream2_skipu(&gb, 3 - channel);
2093 prev = (c->status[channel].sample1 * 0x3c);
2096 prev = (c->status[channel].sample1 * 0x73) - (c->status[channel].sample2 * 0x34);
2099 prev = (c->status[channel].sample1 * 0x62) - (c->status[channel].sample2 * 0x37);
2108 if (!channel)
2115 c->status[channel].sample2 = c->status[channel].sample1;
2116 c->status[channel].sample1 = sampledat;
2119 if (!channel)
2126 for (int channel = 0; channel < channels; channel++) {
2127 samples = samples_p[channel] + block * nb_samples_per_block;
2130 /* Read in every sample for this channel. */
2154 sample = (int)((scale >> shift) + (c->status[channel].sample1 * xa_adpcm_table[filter][0] + c->status[channel].sample2 * xa_adpcm_table[filter][1]) / 64);
2157 c->status[channel].sample2 = c->status[channel].sample1;
2158 c->status[channel].sample1 = sample;
2179 * Each block relies on the previous two samples of each channel.
2183 for (int channel = 0; channel < avctx->ch_layout.nb_channels; channel++) {
2184 ADPCMChannelStatus *cs = c->status + channel;
2187 samples = samples_p[channel] + block * 32;
2209 for (int channel = 0; channel < channels; channel++) {
2211 *samples++ = adpcm_ima_mtf_expand_nibble(&c->status[channel], v >> 4);
2212 samples[st] = adpcm_ima_mtf_expand_nibble(&c->status[channel], v & 0x0F);