только сходил за попкорном, а тут такое вложение от Rover... на 62 страницы, да не по нашему.... пока народ его осилит, пока поймет, что его не туда послали.......
маХЕРовый
Начальник сменыArray
Репутация: лучше не знать
Регистрация
05.06.2006
Город/село
г. Жуковский
Сообщений
1,851
Спасибо (Раздал)
848
Спасибо (Получил)
4412
Re: USB DAC и USB Audio для Android
Сообщение от Insomniac
О чем спор? Андроид посредство UAPP отлично играет хай-рез черех м2теч, это на практике доказано, Максим Вы своими ушами слышали что играет.
А по какому протоколу он играет USB AUDIO или USB AUDIO2 ?
Вот для наглядности пример - берём многканальную USB AUDIO карту. Под Андроидом она запускается как стереокарта - работать работает, но....
Или пример из винды - поставили мы новую видюху, без дров, она тоже работает....
Мысль понятна?
А по какому протоколу он играет USB AUDIO или USB AUDIO2 ?
Вот для наглядности пример - берём многканальную USB AUDIO карту. Под Андроидом она запускается как стереокарта - работать работает, но....
Или пример из винды - поставили мы новую видюху, без дров, она тоже работает....
Мысль понятна?
Если я правильно понял вопрос, то m2tech это uac2 устройство. Если учесть что передача идёт вплоть до 192кгц то и работает он именно как uac2 устройство. Лично проверял посредством внешних устройств частоту дискретизации, все по честному там.
А по какому протоколу он играет USB AUDIO или USB AUDIO2 ?
Вы путаете протоколы и классы. Android 5 на данный момент поддерживает UAC1 и UAC2 без каких-либо танцев с бубном.
Класс определяется подключаемым устройством. Некоторые производители, правда, делают хитрые переключатели для большей совместимости (например, обсуждавшийся HiFiME UH1-Digital).
Среди режимов работы USB-Audio устройств нас интересует только HOST (Accessory устарел, имеет ограничения).
Как посмотреть, что именно выдает ваше устройство, тут уже не раз писалось Hosstia. Устройству скармливается обычный формат PCM, с параметрами, которые всегда можно посмотреть в терминале командой cat /proc/asound/cardX/stream0, где X - номер вашей карты (USB-DAC) в системе.
Пример вывода Sabre U2 на SGS4
HiFimeDIY Audio SA9023 USB Audio at usb-exynos-xhci.0-1, full speed : USB Audio
По поводу многоканальности и прочих "плюшек" (входов-выходов, режимов работы и т.д.).
Для этого конечно не как в винде (где тоже, несмотря на ее Plug&Play, нам порой приходится ручками ставить драйвера), но зато как в линуксе, надо поработать ручками. Настроить многоканал можно через конфиг альсы. Если у вас ее нет, ее всегда можно доустановить. А хардварный режим работы для "сложных" карт с определенным успехом можно установить через параметр AlternateSettings. Вобщем, в этом надо просто один раз разобраться. Для этого интернет и придумали.
---------- Сообщение добавлено 21.11.2015 в 21:39 ----------
у меня на sgs3 (cm12.1 lollipop) и sgs4 (lollipop) то же самое.
Если в audiopolicy.conf у тебя dynamic, то используется максимальное аппаратно поддерживаемое устройством вывода разрешение.
Другое дело - насколько хорош такой вариант, и насколько хорош ресемплер андроида...
Можно было бы ограничить 44.1/16 (или 44.1/24 - для цифровой регулировки громкости без потерь).
Но каждый раз менять конфиг и перезагружаться под прослушиваемый формат во избежание ресемплинга - тоже не дело, если слушается разношерстный контент.
Если обратиться в сторону топовых плееров, играющих на USB-DAC средствами ядра андроида, то обнаруживается интересная картина.
Poweramp кроме 16 бит и 44.1 (или 48 - в зависимости от устройства) кГц ничего на выходе не дает. То есть, даже если в системе мы имеем устройство 96/24 и захотим проиграть файл формата 24/96, poweramp сначала даунсемплит в 16/44, а потом андроид уже своей библиотекой апсемплит на 24/96 (если настроено как описано выше).
Получше ситуация с Neutron - там мы хотя бы можем выставить битрейт и частоту на выхлопе, и выбрать его собственный улучшенный алгоритм ресемплирования - аудиофил. Всё получше, чем андроидовскмй ресемплер. Кстати, новая фича нейтрона - собственный модуль вывода USB Audio - с нашей саброй u2 ужасно глючит и практически не работает - звук срывается в шип при любом телодвижении (изменении громкости например). Так что приходится использовать звуковой функционал ядра андроида.
Мне на рокчипе 3066 ввиду отсутствия в прошивке библиотеки ресемплера последний вариант видится неплохим для получения вывода без потерь в 24 битах с регулировкой громкости на ГУ.
Сравнивал на sgs3 звук сабры u2 через наушники AKG 271 mkII при воспроизведении лосслесса 44.1/16 на правильно настроенных Poweramp (с апсемплингом до 24/96 средствами ядра) и Neutron (с собственным апсемплингом Аудиофил до 24/96) - разницы особой не услышал. У нейтрона может самую малость меньше "зерно".
у меня на sgs3 (cm12.1 lollipop) и sgs4 (lollipop) то же самое.
Если в audiopolicy.conf у тебя dynamic, то используется максимальное аппаратно поддерживаемое устройством вывода разрешение.
А, ну теперь все ясно)
Кстати PowerAmp лучший в плане дизайна и юзабилити, но звук через него заметно хуже, чем через USB Player Pro....хм..может из излишнего ресеплера до 96к?
И потом, наш с тобой нищебродсикй мдлаб дсп8 вроде как более 16\48 не хавает, возможно даже не 16, а 12бит ))
но звук через него заметно хуже, чем через USB Player Pro....хм..может из излишнего ресеплера до 96к?
у меня нет USB Player Pro - не могу проверить, но с Hiby Music на 44.1 сравнивал - разницы не узрел.
попробуй ограничить частоту, может правда ресемплер...
Сообщение от rage2
И потом, наш с тобой нищебродсикй мдлаб дсп8 вроде как более 16\48 не хавает, возможно даже не 16, а 12бит ))
у меня не мдлаб, у меня рязанский продукт этот хавает 96/24 спокойно, более того он все сразу в 96/24 конвертит аппаратным ресемплером от Cirrus Logic. По поводу 12 бит - это как? Откуда инфа?
На их сайте написано
При подключении источника по оптическому каналу процессор поддерживает воспроизведение файлов Hi-Res Audio (звук высокого разрешения) 96 кГц / 24-бит
Социальные закладки