355
355
AudioChannelDescription *descs = layout->mChannelDescriptions;
357
MP_VERBOSE(ao, "layout: tag: <%d>, bitmap: <%d>, "
358
"descriptions <%d>\n",
359
layout->mChannelLayoutTag,
360
layout->mChannelBitmap,
361
layout->mNumberChannelDescriptions);
357
MP_VERBOSE(ao, "layout: tag: <%u>, bitmap: <%u>, "
358
"descriptions <%u>\n",
359
(unsigned) layout->mChannelLayoutTag,
360
(unsigned) layout->mChannelBitmap,
361
(unsigned) layout->mNumberChannelDescriptions);
363
363
for (int i = 0; i < layout->mNumberChannelDescriptions; i++) {
364
364
AudioChannelDescription d = descs[i];
365
MP_VERBOSE(ao, " - description %d: label <%d, %d>, flags: <%u>, "
366
"coords: <%f, %f, %f>\n", i,
368
ca_label_to_mp_speaker_id(d.mChannelLabel),
365
MP_VERBOSE(ao, " - description %d: label <%u, %u>, "
366
" flags: <%u>, coords: <%f, %f, %f>\n", i,
367
(unsigned) d.mChannelLabel,
368
(unsigned) ca_label_to_mp_speaker_id(d.mChannelLabel),
369
(unsigned) d.mChannelFlags,
370
370
d.mCoordinates[0],
371
371
d.mCoordinates[1],
372
372
d.mCoordinates[2]);
375
MP_VERBOSE(ao, " detected more than 32 channel descriptions, "
410
416
// to the waveextensible definition: this is the kind of
411
417
// descriptions we process here.
419
if (layout->mNumberChannelDescriptions > MP_NUM_CHANNELS) {
420
MP_VERBOSE(ao, "layout has too many descriptions (%u, max: %d)\n",
421
(unsigned) layout->mNumberChannelDescriptions,
413
426
for (int n = 0; n < layout->mNumberChannelDescriptions; n++) {
414
427
AudioChannelLabel label = layout->mChannelDescriptions[n].mChannelLabel;
415
428
uint8_t speaker = ca_label_to_mp_speaker_id(label);
416
429
if (label == kAudioChannelLabel_Unknown)
418
431
if (speaker < 0) {
419
MP_VERBOSE(ao, "channel label=%d unusable to build channel "
420
"bitmap, skipping layout\n", label);
432
MP_VERBOSE(ao, "channel label=%u unusable to build channel "
433
"bitmap, skipping layout\n", (unsigned) label);
434
goto coreaudio_error;
422
436
chmap->speaker[n] = speaker;
423
437
chmap->num = n + 1;