Ушел в ЛАС
Технический директорArray
Репутация: лучше не знать
Регистрация
11.01.2004
Город/село
Столиця
Сообщений
13,050
Спасибо (Раздал)
11289
Спасибо (Получил)
14942
Re: USB DAC и USB Audio для Android
Сообщение от aluver
говорю, надо провести "чистый" эксперимент. не должно так все плохо быть
Провел серию экспериментов.
При воспроизведении напрямую RKHDMISPDIF через ALSA страдает только битность, 16 bit => 24bit:
На данное преобразование у alsa_aplay уходит время, влекущее потерю порядка 580 семплов при старте воспроизведения. Но это не проблема для плееров с опережающей буферизацией и преобразованием в нужный формат. Аналогичная картина наблюдается и на Ubuntu при преобразовании из одного формата в другой командой aplay.
Далее все проигрывается гладко, вплоть "до финальных аккордов".
Следовательно, с аппаратной частью rk3288 теперь больше ясности. 16bit/48KHz для этого SoC приемлемы.
Но происходящее в Андроиде не даунсемплинг к 44100 kHZ (!) При попытке воспроизвести материал изначально 16bit/44.1kHz наблюдается аналогичное "ускорение" = "потери" при воспроизведении через S/PDIF,
Следующий момент - попытки командой alsa_aplay передать напрямую через S/PDIF-интерфейс поток 16bit/44.1KHz приводят к ошибке синхронизации
aplay: pcm_write:1604: write error: I/O error
Складывается впечатление, что Андроид знает как и пытается сформировать аудиопоток нужного формата (16bit/48kHz), но не успевает это делать "на лету".
Сообщение от aluver
Предлагаю для первоначального "налаживания" контакта взять USB-DAC(SPDIF) и провести эксперимент с "прямым" воспроизведением без влияния андроида, а именно - посредством UAPP или другого аналогичного плеера, получить положительный результат, дабы быть уверенным в "железной" составляющей записи, а затем перейти к экспериментам с ядром.
Вторая карта USB с S/PDIF (ASUS Xonar U3) категорически не хочет воспроизводить через Digital на Radxa с ядром 3.10.0. UAPP также этого сделать может. Вроде бы все распознается, S/PDIF активирован, воспроизведение идет, но на выходе нет сигнала. Нужна вторая карта, более совместимая с Linux и UAPP.
Под Ubuntu также не получилось воспроизвести через S/PDIF этого ASUS. Под Windows после установки новых драйверов ASUS и некоторой последовательности подключения Creative (перетыканий) одновременно с ней-таки удалось записать с USB-карты на USB-карту, но вдвоем + третья встроенная данная комбинация интерфейсов уживается очень плохо.
На rk3066 вроде бы это получалось с той же картой и с "патченным" ядром, но без этого ядра не удается активировать цифровой выход. А пересобирать пока нет времени.
Второй карты с S/PDIF-In тоже нету под рукой.
Сообщение от aluver
во вложении - тест с Ubuntu?
На Ubuntu все предсказуемо.
Это воспроизведение+запись командами aplay и arecord из разных терминалов: потребовалось конвертация S32_LE => S24_3, на что тоже ушло время, и часть семплов при старте потерялась:
Во втором случае в качестве проигрывателя было использовано само приложение Audacity:
Социальные закладки