PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Звук

Ответ
 
Опции темы Поиск в этой теме
Старый 13.09.2014, 00:58   #201
Rage2
Banned
 
Регистрация: 06.11.2009
Возраст: 38
Город: Nizhniy Novgorod
Регион: 52
Машина: Ford Focus III
Сообщений: 1,776
Rage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant future
По умолчанию

а не пробывал подкинуть правленую либу libtinyalsa.sо от нексуса?
http://pccar.ru/showpost.php?p=306106&postcount=4684 правда она под 4.4.4
Rage2 вне форума   Ответить с цитированием
Старый 13.09.2014, 10:37   #202
tsynik
Старший Пользователь
 
Регистрация: 17.03.2011
Город: Moscow
Регион: 77, 97, 99, 177
Машина: Alfa Romeo
Сообщений: 322
tsynik has a spectacular aura abouttsynik has a spectacular aura abouttsynik has a spectacular aura about
По умолчанию

Цитата:
Сообщение от aluver Посмотреть сообщение
То есть абсолютно не хочет откликаться на команду вывода контролов.
Куда копать?
В синтаксис, а так же читать alsa.org ;-) Насколько я все позабыл, в качестве девайса нужно указывать то что у /dev/sndxCx по номеру, и все параметры важны то есть нужно писать примерно:

alsa_amixer -c 1 [2? 3?] -D 0 -d
alsa_amixer -c 1 [2? 3?] -D 0 scontrols
и тд.

Как минимум указать номер карты с контролом к которому обращаетесь.

На A10 я без проблем крутил микшер из консоли через alsa_amixer, но, там была фишка (как минимум в библиотеке), что нужно было инициализировать контрол через обращение к микшеру и установке мастер громкости в 0, после этого все крутилось ;-)
tsynik вне форума   Ответить с цитированием
Старый 13.09.2014, 14:49   #203
aluver
Старший Пользователь
 
Регистрация: 05.07.2014
Возраст: 47
Регион: 34
Сообщений: 179
aluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of light
По умолчанию

Цитата:
Сообщение от tsynik Посмотреть сообщение
В синтаксис ...
Как минимум указать номер карты с контролом к которому обращаетесь.
Уже пробовал - пишет ошибку контрола. У меня все просто Card 2 Device 1
Соответственно пишу
alsa_amixer -c 2 -D 0 scontrols
а он ругается.
Пробовал и стоковый звук крутить (карта 0) - тоже не поддается.
Ошибку не вспомню конкретно... Надо повторить.
И с дебагом не пробовал.
Цитата:
Сообщение от tsynik Посмотреть сообщение
нужно было инициализировать контрол через обращение к микшеру и установке мастер громкости в 0, после этого все крутилось ;-)
Интересно... Спасибо. Посмотрю в asound.conf как мастер обозван и попробую...
Единственное сомнение. У меня тоже правкой so по методу Rage2 роутинг на USB сделан. То есть при такой подмене получается, что USB-DAC "наследует" настройки альсы (название контролов и т.д.) из asound.conf или нет?
aluver вне форума   Ответить с цитированием
Старый 14.09.2014, 13:21   #204
aluver
Старший Пользователь
 
Регистрация: 05.07.2014
Возраст: 47
Регион: 34
Сообщений: 179
aluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of light
По умолчанию

Попробовал. Вот такая ошибка.
Код:
u0_a71@android:/ $ su
root@android:/ # alsa_amixer -c 0 -D 0 -d
ALSA lib external/alsa-lib/src/control/control.c:902:(snd_ctl_open_noupdate) Invalid CTL 0
amixer: Mixer attach 0 error: No such file or directory
1|root@android:/ # alsa_aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: RK29WM8731 [RK29_WM8731], device 0: wm8731 PCM wm8731-hifi-0 []
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 1: RKHDMII2S [RK-HDMI-I2S], device 0: HDMI PCM rk-hdmi-i2s-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
root@android:/ #
Что бы это значило?
aluver вне форума   Ответить с цитированием
Старый 14.09.2014, 14:09   #205
tsynik
Старший Пользователь
 
Регистрация: 17.03.2011
Город: Moscow
Регион: 77, 97, 99, 177
Машина: Alfa Romeo
Сообщений: 322
tsynik has a spectacular aura abouttsynik has a spectacular aura abouttsynik has a spectacular aura about
По умолчанию

Цитата:
Сообщение от aluver Посмотреть сообщение
Что бы это значило?
Хм, попробовал на свистке с RockChip - такая же история. Не работает микшер. Тут может или версия старая, или в ядре что недовключено например...
tsynik вне форума   Ответить с цитированием
Старый 14.09.2014, 15:28   #206
aluver
Старший Пользователь
 
Регистрация: 05.07.2014
Возраст: 47
Регион: 34
Сообщений: 179
aluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of light
По умолчанию

А если поменять местами порядок указания карты и девайса, то ошибки нет, и проглатывает. Но достучаться до контролов не получается...
Код:
root@android:/ # alsa_amixer --device 0 --card 0 controls
root@android:/ # alsa_amixer --device 0 --card 0 contents
root@android:/ # alsa_amixer --device 0 --card 0 scontents
1|root@android:/ # alsa_amixer --device 0 --card 0 cget 'Speaker Playback Volume'
Wrong control identifier: Speaker Playback Volume
1|root@android:/ # alsa_amixer --device 0 --card 0 sget 'Speaker Playback Volume'
amixer: Unable to find simple control 'Speaker Playback Volume',0

1|root@android:/ # alsa_amixer --device 0 --card 0 sset 0 'Speaker Playback Volume'
amixer: Unable to find simple control '0',0

1|root@android:/ # alsa_amixer --device 0 --card 0 sget 'DAC L2 MUX'
amixer: Unable to find simple control 'DAC L2 MUX',0

1|root@android:/ # alsa_amixer --device 0 --card 0 cget 'DAC L2 MUX'
Wrong control identifier: DAC L2 MUX
1|root@android:/ # alsa_amixer --device 0 --card 0 cget 'Speaker Playback Switch'
Wrong control identifier: Speaker Playback Switch
1|root@android:/ # alsa_amixer --device 0 --card 0 cget 'Mono DAC Playback Volume'
Wrong control identifier: Mono DAC Playback Volume
1|root@android:/ # alsa_amixer --device 0 --card 0 cset 'Mono DAC Playback Volume' 0
Wrong control identifier: Mono DAC Playback Volume
root@android:/ # alsa_amixer --device 0 --card 0 controls -i
root@android:/ # alsa_amixer --device 0 --card 0 scontrols -i
root@android:/ # alsa_amixer -c 0 -D 0 scontrols -i
ALSA lib external/alsa-lib/src/control/control.c:902:(snd_ctl_open_noupdate) Invalid CTL 0
amixer: Mixer attach 0 error: No such file or directory

1|root@android:/ # alsa_amixer -D 0 -c 0 controls -i
root@android:/ #
asound.conf во вложении. Куда копать - ума не приложу
Вложения
Тип файла: zip asound.zip (3.4 Кб, 353 просмотров)
aluver вне форума   Ответить с цитированием
Старый 14.09.2014, 16:18   #207
tsynik
Старший Пользователь
 
Регистрация: 17.03.2011
Город: Moscow
Регион: 77, 97, 99, 177
Машина: Alfa Romeo
Сообщений: 322
tsynik has a spectacular aura abouttsynik has a spectacular aura abouttsynik has a spectacular aura about
По умолчанию

Цитата:
Сообщение от aluver Посмотреть сообщение
asound.conf во вложении. Куда копать - ума не приложу
AlsaMixer я так понимаю тоже будет молчать ;-)
Если список контролов драйвером отдается другим (отуда названия?), может помочь замена библиотеки libasound.so и бинарников. Просто в вашей сборке они не рабочие к примеру (так как их никто не пользует и не проверял) ;-) Ну а может alsa и в вашем ядре урезана / выключена вообще? Потому как есть 100 вариантов без оной! Что за ядро / устройство?
Вот ссылки на git библиотеки и утилит, если есть желание собрать самостоятельно под 4.4:
https://github.com/Matricom/external_alsa-utils
https://github.com/Matricom/external_alsa-lib
(отсюда)

ХМ, к примеру на рокчипе 3188 для HDMI нет никаких контролов. Подключаю внешний DAC (PCM2704) - там всего 2 штуки, причем уровень громкости отсутствует в scontrols, но регулируется через controls:

root@rk3188:/ # cat /proc/asound/cards
0 [RKHDMII2S ]: RK-HDMI-I2S - RK-HDMI-I2S
RK-HDMI-I2S
3 [DAC ]: USB-Audio - USB Audio DAC
Burr-Brown from TI USB Audio DAC at usb-usb20_host-1, full speed
root@rk3188:/ # ls /dev/snd
controlC0 controlC3 pcmC0D0p pcmC3D0p timer
root@rk3188:/ # alsa_amixer -d -c 0 -i controls
root@rk3188:/ # alsa_amixer -d -c 3 -i scontrols
Simple mixer control 'PCM',0
root@rk3188:/ # alsa_amixer -d -c 3 -i controls
numid=1,iface=MIXER,name='PCM Playback Switch'
numid=2,iface=MIXER,name='PCM Playback Volume'
root@rk3188:/ # alsa_amixer -d -c 3 contents
numid=1,iface=MIXER,name='PCM Playback Switch'
; type=BOOLEAN,access=rw------,values=1
: values=on
numid=2,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=128,step=0
: values=128,128
| dBminmax-min=-128.00dB,max=0.00dB
root@rk3188:/ # alsa_amixer -d -c 3 cget numid=2
VERIFY ID: numid=2,iface=MIXER,name=''
numid=2,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=128,step=0
: values=128,128
| dBminmax-min=-128.00dB,max=0.00dB
root@rk3188:/ # alsa_amixer -d -c 3 cset numid=2 100,100
VERIFY ID: numid=2,iface=MIXER,name=''
numid=2,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=128,step=0
: values=100,100
| dBminmax-min=-128.00dB,max=0.00dB
root@rk3188:/ # alsa_amixer -d -c 3 cget name='PCM Playback Volume'
VERIFY ID: numid=0,iface=MIXER,name='PCM Playback Volume'
numid=2,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=128,step=0
: values=100,100
| dBminmax-min=-128.00dB,max=0.00dB
root@rk3188:/ # alsa_amixer -d -c 3 cset name='PCM Playback Volume' 60,60
VERIFY ID: numid=0,iface=MIXER,name='PCM Playback Volume'
numid=2,iface=MIXER,name='PCM Playback Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=128,step=0
: values=60,60
| dBminmax-min=-128.00dB,max=0.00dB


так что список элементов микшера и имена зависят от конкретного устройства! И их, при рабочей alsa, может и не быть!

Последний раз редактировалось tsynik; 14.09.2014 в 17:01.
tsynik вне форума   Ответить с цитированием
Старый 14.09.2014, 16:48   #208
aluver
Старший Пользователь
 
Регистрация: 05.07.2014
Возраст: 47
Регион: 34
Сообщений: 179
aluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of light
По умолчанию

Цитата:
Сообщение от tsynik Посмотреть сообщение
Если список контролов драйвером отдается другим (отуда названия?), может помочь замена библиотеки libasound.so и бинарников. Просто в вашей сборке они не рабочие к примеру (так как их никто не пользует и не проверял) ;-) Ну а может alsa и в вашем ядре урезана / выключена вообще? Потому как есть 100 вариантов без оной! Что за ядро / устройство?
Названия я брал из стокового asound.conf (во вложении пред.сообщения).
Устройство - магнитола Klyde KD-8016 на RK3066. Ядро 3.0.38+ Андроид 4.2.2. Обитаем здесь http://4pda.ru/forum/index.php?showtopic=557670&st=3300
Звук в стоке идет на аудиопроцессор WM8731. Управляются 4 канала звука. Отсюда, как я понимаю, и такие замороченные названия контролов в asound.conf
aluver вне форума   Ответить с цитированием
Старый 14.09.2014, 17:10   #209
tsynik
Старший Пользователь
 
Регистрация: 17.03.2011
Город: Moscow
Регион: 77, 97, 99, 177
Машина: Alfa Romeo
Сообщений: 322
tsynik has a spectacular aura abouttsynik has a spectacular aura abouttsynik has a spectacular aura about
По умолчанию

Цитата:
Сообщение от aluver Посмотреть сообщение
Звук в стоке идет на аудиопроцессор WM8731. Управляются 4 канала звука. Отсюда, как я понимаю, и такие замороченные названия контролов в asound.conf
Воооот ;-) Получается, что чистая незамутненная цифра (причем в стерео варианте скорее всего, но это зависит от драйвера/библиотеки звука, которая формирует поток) или уже декодированный аналог идет на внешнюю микросхему, и у меня есть подозрение, что регулировка уровней идет вообще как-нибудь по i2c или что там специальным apk / библиотекой, и к alsa и рокчипу это имеет отношение не более чем нулевое ;-) Причем, судя по даташиту, WM8731 - двухканальный, и их вообще должно быть 2 штуки ;-)

Но! При подключении внешней многоканальной карты вполне можно будет рулить её микшером и уровнями громкости (на _аналоговых_ выходах), если _её_ микшер обеспечивает такую возможность ;-) На моей SB - Live 5.1 например только общий уровень крутится, причем даже не поканально.

p.p.s. Мне только не понятна проблема невозможности регулировки уровня на внешнем DAC. На моем свистке RK3188 как на HDMI, так и на внешних USB DAC, когда я кручу уровни громкости Android (Multimedia, Notifications, etc) уровень звука изменяется (что логично)...

Последний раз редактировалось tsynik; 14.09.2014 в 18:33.
tsynik вне форума   Ответить с цитированием
Старый 14.09.2014, 20:50   #210
aluver
Старший Пользователь
 
Регистрация: 05.07.2014
Возраст: 47
Регион: 34
Сообщений: 179
aluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of lightaluver is a glorious beacon of light
По умолчанию

Цитата:
Сообщение от tsynik Посмотреть сообщение
Мне только не понятна проблема невозможности регулировки уровня на внешнем DAC. На моем свистке RK3188 как на HDMI, так и на внешних USB DAC, когда я кручу уровни громкости Android (Multimedia, Notifications, etc) уровень звука изменяется (что логично)...
Вот-вот. Штатные крутилки (и кнопки) громкости моей магнитолы как раз и привязаны к регулировке уровня именно на чипе WM, и именно по i2c. Мне же нужны команды андроид для регулировки Multimedia-контрола андроид-микшера при подключенном USB-DAC. А с нулевой картой я просто пробовал это делать для теста, чтобы понять управление альса-миксером. Так как в моем asound.conf пока нет ниодной строчки про мой usb-девайс. И как их придумать я не знаю.
Может и не альса мне нужен вовсе. Может есть какая-то уникальная готовая прога-миксер для андроид, которой можно кнопки магнитолы назначить... Кнопок запасных у меня хватает. Стрелки вверх-вниз на руле например. То есть штатная громкость останется функционировать. А вот эти кнопки будут конкретно громкостью Multimedia управлять.
А если оно еще для регулировки громкости будет апсэмплить звук до 96/24 и даунсэмплить обратно для вывода андроидом на DAC, то это вообще будет сказка.
Ну а а если сможет отдать апсэмпленную цифру без обратного даунсэмплинга, не смотря на ограничения Андроид, то я эту прогу готов купить.
aluver вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 6 (пользователей: 0 , гостей: 6)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 20:38.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot