[13:49:02] <zombah>  добрый день всем
 [15:43:58] <stuw>  zombah, у тебя на хромкасте стоковая прошивка или кастом?
 [15:44:11] <zombah>  stuw: сто
 [15:44:14] <zombah>  stuw: сток
 [15:44:36] <stuw>  zombah, она iptv умеет или только ютьюб и с экрана стрим?
 [15:45:05] <zombah>  stuw: под iptv ты dlna имеешь ввиду?
 [15:45:33] <stuw>  хм, dlna это вроде другое ) хотя хз, надо обновить свои знания
 [15:49:47] <zombah>  stuw: ну что ты под iptv имеешь ввиду расскажи своими словами 8)
 [15:50:57] <stuw>  провайдеры обчно тв предлагают через ethernet. Хз, как оно там устроено. Термин DLNA вроде появился много позже IPTV, поэтому предполагаю, что это разные вещи :))
 [15:51:42] <zombah>  stuw: ну я понял, такое оно умеет только со спец приложением
 [15:52:01] <zombah>  но если под него есть кастом прошивки, то может там есть по дефолту
 [15:55:28] <zombah>  аа уже смотрю нет кастом прошивок прикрыли дырки через которые рут брали и новых пока не нашли 8)
 [15:55:49] <zombah>  stuw: если тебя только iptv интересует бери малину а не хромекаст
 [15:55:56] <stuw>  zombah, о, на хромкасте HDMI CEC есть
 [15:56:18] <zombah>  stuw: на малине тоже cec вроде пашет
 [15:57:20] <stuw>  zombah, я вообще присматриваю свисток/коробку для телека на кухне. В идеале хотелось бы IPTV, но и обычного инета хватит, если с IPTV будет гемор. HDMI CEC маст хев, ибо без него имхо неудобно с несколькими пультами
 [15:58:01] <stuw>  там у меня планируется только электричество. Соответственно ненавистного тебе ethernet кабеля не будет, только вифи )
 [15:58:18] <zombah>  телек на кухне? %) омг вот это полное погружение
 [15:58:30] <stuw>  40"
 [15:59:17] <stuw>  шучу-шучу ))) мелкий, жене что-нибудь смотреть/слушать во время готовки
 [15:59:51] <zombah>  ну все равно лучше малину так как там у тебя точно iptv и dlna заработают а вот с хромкастом еще фиг знает
 [16:00:29] <vasy>  Привет всем!
 [16:00:39] <zombah>  vasy: привет
 [16:00:45] <stuw>  привет :)
 [16:01:43] <vasy>  zombah: я тут ril немного поковырял, и в libril-qc-qmi-1.so нашел AudioSystem::setParameters
 [16:01:56] <zombah>  блин в сусе уже ядро бранчнули под будущий релиз а я так и не понял почему оно не пашет на тоше
 [16:02:23] <zombah>  vasy: хм внутри блоба прям? интересно
 [16:02:34] <vasy>  я его в IDA смотрю
 [16:02:45] <zombah>  понял
 [16:02:49] <vasy>  мало, что понимаю, но ...
 [16:03:16] <vasy>  и он с libmedia.so слинковам
 [16:03:19] <stuw>  хм, возможно nm на арме можно заюзать, чтобы посмотреть символы либы. Хотя IDA лучше
 [16:03:27] <stuw>  но сложнее )
 [16:03:53] <zombah>  libmedia это откуда чтот не припоминаю сходу
 [16:04:09] <zombah>  системная либа чтоли?
 [16:04:19] <vasy>  ага
 [16:04:32] <zombah>  эка
 [16:04:36] <zombah>  плохо это
 [16:05:50] <vasy>  из hardware/cm/audio libmedia собирается
 [16:06:19] <vasy>  да как-то печально
 [16:07:19] <zombah>  ну посмотри что там за финкциями они обмениваются
 [16:07:54] <zombah>  если будет понятно что это нам поможет, можно будет врапер сделать вокруг этого libril-qc-qmi
 [16:08:12] <vasy>  а как посмотреть? ...
 [16:08:20] <zombah>  vasy: я не знаю 8)
 [16:08:30] <vasy>  я вот тоже...
 [16:09:00] <zombah>  посмтри названия всех функций может будут похожие
 [16:10:17] <stuw>  вы помните, что и в каких комбинациях либ/ядра/ril у вас работает?
 [16:10:26] <zombah>  https://github.com/scintill/qcrilhook
 [16:11:58] <vasy>  vasy@vasy2 system_stok/vendor/lib $ nm -C -D libril-qc-qmi-1.so | grep -i audio
 [16:11:58] <vasy>  0004a5fd T qcril_am_set_call_audio_driver
 [16:11:58] <vasy>  U android::AudioSystem::setParameters(int, android::String8 const&)
 [16:12:19] <vasy>  stuw: от ядра нечего не зависит
 [16:13:00] <stuw>  ок. Я просто к тому, что если не помните, то лучше какую таблицу сделать. Я за вашими исследованиями не успеваю, поэтому не лезу больше помогать :)
 [16:13:08] <stuw>  *не успеваю следить
 [16:13:31] <vasy>  stuw: а мы сильно нечего так и не выяснили...
 [16:14:29] <vasy>  с audio hal из cm11 звука при звонке нет, с hal из стока или legacy из cm работает на одной sim
 [16:16:10] <stuw>  т.е. все зависит от hal ? сток и легаси - норм, из cm11 - не пашет. hal легко менять один на другой?
 [16:16:42] <vasy>  сток и легаси - не совсем норм, звук только на одной из 2-х sim
 [16:16:58] <stuw>  на двух сим он где-нибудь пашет?
 [16:17:19] <vasy>  ну только на стоковой прошивке
 [16:18:15] <stuw>  т.е. сток пашет норм. Если из стока взять hal, то пашет звук только на одной симке?
 [16:18:25] <stuw>  *взять в cm11
 [16:18:29] <vasy>  stuw: да
 [16:19:04] <vasy>  точнее на той симке на которой последней был включен режим 3G
 [16:20:22] <stuw>  жуткая жуть. hal что из себя представляет?
 [16:21:16] <vasy>  libril-qc-qmi-1.so либа на 4 Мегабайта.... libril и rild я так понимаю только обертка для нее. и как я понимаю она сильно вендор спецефична, не подходит от одного производителя к другому...
 [16:21:16] <vasy>  и нет реферсной или хоть какой-то утекшей в исходниках посмотреть что там...
 [16:21:38] <vasy>  stuw: https://github.com/CyanogenMod/android_hardware_qcom_audio-caf
 [16:21:52] <stuw>  какие файлы меняете, когда меняете hal ?
 [16:22:16] <vasy>  из этого собирается audio.primary.msm8610.so
 [16:22:19] <stuw>  вы же бинарями меняете, если я правильно понял
 [16:22:57] <vasy>  stuw: https://github.com/cm-nokia-x2/proprietary_vendor_nokia_ara/commit/a6b54dda98588d033faa7e3b60038f49bb20f622
 [16:24:13] <vasy>  audio.primary.msm8610.so и audio_policy.msm8610.so и есть по сути audio hal, остальное зависимости и конфиги
 [16:26:13] <stuw>  можешь выложить бинари обеих версий куда-нибудь. Я попробую глянуть, чем они отличаются. Шансов мало, но может что бросится в глаза
 [16:26:16] <stuw>  ?
 [16:27:12] <vasy>  stuw: а зачем бинари? можно сорцы поизучать
 [16:27:57] <stuw>  можно и сорцы до кучи ) но в сорцах куча дефайнов разных
 [16:28:35] <stuw>  у кастома есть тоже сорцы?
 [16:28:43] <vasy>  https://github.com/CyanogenMod/android_hardware_qcom_audio-caf
 [16:28:43] <vasy>  там есть legacy , если собрать его то работает аналогично стоковым бинарям
 [16:29:31] <vasy>  ifeq ($(BOARD_USES_LEGACY_ALSA_AUDIO),true)
 [16:29:31] <vasy>  include $(MY_LOCAL_PATH)/legacy/Android.mk
 [16:29:31] <vasy>  else
 [16:29:31] <vasy>  include $(MY_LOCAL_PATH)/hal/Android.mk
 [16:30:27] <stuw>  поянл, спасибо
 [16:30:31] <vasy>  вот стоковые бинари:
 [16:30:31] <vasy>  https://github.com/cm-nokia-x2/proprietary_vendor_nokia_ara/blob/a6b54dda98588d033faa7e3b60038f49bb20f622/proprietary/lib/hw/audio.primary.msm8610.so
 [16:30:31] <vasy>  https://github.com/cm-nokia-x2/proprietary_vendor_nokia_ara/blob/a6b54dda98588d033faa7e3b60038f49bb20f622/proprietary/lib/hw/audio_policy.msm8610.so
 [16:30:31] <vasy>  сечас положу куда-нибудь hal cm11
 [16:30:43] <vasy>  который не legacy
 [16:34:13] <vasy>  stuw: это cm11 "новый" hal
 [16:34:13] <vasy>  https://yadi.sk/d/Fyeo_feJioRsz
 [16:34:13] <vasy>  https://yadi.sk/d/7FtZsAi5ioRyS
 [16:36:00] <vasy>  но судя по всему дело не в hal, а ril, точнее в libril-qc-qmi-1.so, который дергает (задает параметры или еще что-то) audio hal, и новый вообще дергать не умеет, а старый дергает не совсем так как на стоке
 [16:40:41] <stuw>  тогда попробуй посмотри список функций, которые есть/нужны libril-qc-qmi-1.so
 [16:40:52] <stuw>  команда nm на тошке
 [16:41:16] <vasy>  nm -C -D libril-qc-qmi-1.so| wc -l
 [16:41:16] <vasy>  1969
 [16:41:23] <vasy>  2000 тысячи функция
 [16:41:32] <stuw>  и то же самое для либов hal'а.
 [16:41:39] <vasy>  я ж говорю это либа на 4 Мегабайта!
 [16:41:40] <stuw>  там часть функций экспортится, часть нужна
 [16:41:57] <stuw>  экспорт с буквой T, нужные с U
 [16:42:09] <stuw>  так можно найти пересечение по функциям в этих либах
 [16:42:24] <vasy>  vasy@vasy2 system_stok/vendor/lib $ nm -C -D libril-qc-qmi-1.so| grep U| wc -l
 [16:42:24] <vasy>  228
 [16:42:24] <vasy>  vasy@vasy2 system_stok/vendor/lib $ nm -C -D libril-qc-qmi-1.so| grep T| wc -l
 [16:42:24] <vasy>  1555
 [16:43:25] <stuw>  если libril-qc-qmi-1.so дергает хал, то среди U функций libril-qc-qmi-1.so ищи те, которые есть в хале
 [16:43:42] <stuw>  руками без вариантов, нужен скрипт
 [16:43:54] <vasy>  из аудио вроде только android::AudioSystem::setParameters
 [16:45:20] <stuw>  ясно, вероятно параметры в строке отличаются
 [16:45:40] <vasy>  U android::AudioSystem::setParameters(int, android::String8 const&)
 [16:45:40] <stuw>  из исходников пока в глаза бросается различное именование use case'ов
 [16:46:17] <stuw>  это может быть проблемой, т.к. одна либа оперирует одними названиями, другая не помнимает их (грубое предположение)
 [16:46:55] <stuw>  grep -R USE_CASE ../android_hardware_qcom_audio-caf | grep '"'
 [16:46:56] <stuw>  grep -R USECASE_ ../android_hardware_qcom_audio-caf | grep '"'
 [16:47:20] <vasy>  stuw: ага, логично
 [16:52:28] <vasy>  https://github.com/CyanogenMod/android_frameworks_av/blob/8b8d02886bd9fb8d5ad451c03e486cfad74aa74e/media/libmedia/AudioSystem.cpp#L181
 [16:52:28] <vasy>  а это я так понимаю тот самый android::AudioSystem::setParameters
 [16:52:52] <stuw>  да, похоже на то
 [16:52:53] <vasy>  // set/get audio hardware parameters. The function accepts a list of parameters
 [16:52:53] <vasy>  // key value pairs in the form: key1=value1;key2=value2;...
 [16:52:53] <vasy>  // Some keys are reserved for standard parameters (See AudioParameter class).
 [16:52:53] <vasy>  // The versions with audio_io_handle_t are intended for internal media framework use only.
 [16:53:38] <stuw>  кстати эти параметры тоже могут отличаться и быть специфичными для разных версий
 [16:53:47] <vasy>  // reserved parameter keys for changing standard parameters with setParameters() function.
 [16:53:48] <vasy>  // Using these keys is mandatory for AudioFlinger to properly monitor audio output/input
 [16:53:48] <vasy>  // configuration changes and act accordingly.
 [16:53:48] <vasy>  // keyRouting: to change audio routing, value is an int in audio_devices_t
 [16:53:48] <vasy>  // keySamplingRate: to change sampling rate routing, value is an int
 [16:53:48] <vasy>  // keyFormat: to change audio format, value is an int in audio_format_t
 [16:53:48] <vasy>  // keyChannels: to change audio channel configuration, value is an int in audio_channels_t
 [16:53:49] <vasy>  // keyFrameCount: to change audio output frame count, value is an int
 [16:53:49] <vasy>  // keyInputSource: to change audio input source, value is an int in audio_source_t
 [16:53:50] <vasy>  // (defined in media/mediarecorder.h)
 [16:53:50] <vasy>  // keyScreenState: either "on" or "off"
 [17:57:17] <evglit>  Что-то у меня rtc не работает на федоре.
 [17:57:42] <zombah>  evglit: дату не сохраняет?
 [17:58:27] <evglit>  Тут (https://lists.fedoraproject.org/pipermail/arm/2014-January/007299.html) сказано выполнить команду: /sbin/hwclock --hctosys -f /dev/rtc1 && /sbin/hwclock --systohc -f /dev/rtc0.
 [17:59:15] <zombah>  evglit: dmesg |grep -i rtc
 [18:00:59] <evglit>  zombah, да, дата выставляется чисто по ntp, если интернета нет, то дата на 1970 год сбрасывается.
 [18:02:20] <evglit>  zombah, вывод dmesg |grep -i rtc: http://paste.ubuntu.com/12246067/.
 [18:03:03] <zombah>  evglit: так а ты этот htosys то сделал как написано?
 [18:03:43] <zombah>  ну по логу у тебя только один rtc
 [18:03:49] <evglit>  Вывод команды /sbin/hwclock --hctosys -f /dev/rtc1 && /sbin/hwclock --systohc -f /dev/rtc:
 [18:03:50] <evglit>  hwclock: settimeofday() завершился неудачей: Недопустимый аргумент
 [18:03:58] <evglit>  Невозможно установить системные часы.
 [18:04:17] <evglit>  hwclock --debug
 [18:04:19] <zombah>  а кто стал rtc0
 [18:04:28] <evglit>  hwclock из util-linux 2.26.2
 [18:04:29] <evglit>  hwclock: невозможно открыть /dev/rtc: Нет такого файла или каталога
 [18:04:29] <evglit>  Не найден пригодный часовой интерфейс.
 [18:04:29] <evglit>  hwclock: Cannot access the Hardware Clock via any known method.
 [18:06:01] <evglit>  <zombah> а кто стал rtc0, даже первая часть не выполняется: /sbin/hwclock --hctosys -f /dev/rtc1.
 [18:06:14] <evglit>  hwclock: settimeofday() завершился неудачей: Недопустимый аргумент
 [18:06:14] <evglit>  Невозможно установить системные часы.
 [18:06:40] <zombah>  хз я этой утилитой не пользовался никогда
 [18:07:29] <evglit>  В openSUSE та же беда была.
 [18:11:35] <zombah>  запросто
 [18:13:34] <stuw>  grep -R 'setParameters' android_hardware_qcom_audio-caf
 [18:13:41] <stuw>  результат неожиданный немного
 [18:16:17] <stuw>  grep -R AUDIO_PARAMETER_STREAM_ROUTING ../android_hardware_qcom_audio-caf
 [18:16:52] <stuw>  хотя если вы пересобираете hal, а не кладете бинари, то значение должно совпадать в разных халах
 [18:22:56] <stuw>  https://github.com/CyanogenMod/android_frameworks_av/blob/8b8d02886bd9fb8d5ad451c03e486cfad74aa74e/media/libmedia/AudioSystem.cpp#L181 - здесь бы залогировать строку с параметрами...
 [18:24:10] <vasy>  stuw: уже собираю с
 [18:24:10] <vasy>  ALOGE("AudioSystem::setParameters keyValuePairs=%s",keyValuePairs.string());
 [18:24:49] <vasy>  libwebviewchromium.so слинкован с libmedia.so так что это не быстро :)
 [18:25:27] <stuw>  ну ты же не хидера поменял ) если система вменяемая, должна быстро собрать
 [18:28:16] <vasy>  всеравно libwebviewchromium персобирает
 [18:28:16] <vasy>  prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-g++ -nostdlib -Wl,-soname,libwebviewchromium.so -Wl ...
 [18:43:35] <vasy>  хм...
 [18:43:36] <vasy>  вот так при звонке на "новом" hal"
 [18:43:36] <vasy>  E/AudioSystem( 231): AudioSystem::setParameters keyValuePairs=fm_volume=0.4253543019
 [18:43:36] <vasy>  E/AudioSystem( 1814): AudioSystem::setParameters keyValuePairs=volume_boost=off
 [18:43:36] <vasy>  E/AudioSystem( 231): AudioSystem::setParameters keyValuePairs=fm_volume=0.2668402195
 [18:44:41] <stuw>  Лучше весь лог сравнивать. В начале может идти инициализация роутингов или еще чего.
 [18:45:06] <vasy>  в начале это при загрузке?
 [18:45:49] <stuw>  да, лучше с самого старта системы смотреть последовательность вызовов. Но это можно напотом отложить (пока просто собрать весь лог)
 [18:46:17] <stuw>  не факт, что сразу найдем, что не так, а с полным логом мы сможем откатываться назад по времени работы системы и смотреть ,что происходило
 [18:47:21] <vasy>  а нечего тут и нет только:
 [18:47:21] <vasy>  E/AudioSystem( 233): AudioSystem::setParameters keyValuePairs=fm_volume=0.0000000000
 [18:47:21] <vasy>  E/AudioSystem( 233): AudioSystem::setParameters keyValuePairs=fm_volume=0.4253543019
 [18:47:21] <vasy>  E/AudioSystem( 814): AudioSystem::setParameters keyValuePairs=screen_state=on
 [18:47:21] <vasy>  E/AudioSystem( 814): AudioSystem::setParameters keyValuePairs=screen_state=off
 [18:47:21] <vasy>  после загрузки...
 [19:08:39] <vasy>  о, а это с легаси hal при загрузке:
 [19:08:39] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=routing=2
 [19:08:39]  Last message repeated 1 time(s).
 [19:08:39] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=fm_volume=0.0078476826
 [19:09:25] <vasy>  а это при звонке:
 [19:09:25] <vasy>  E/AudioSystem( 801): AudioSystem::setParameters keyValuePairs=in_call=true
 [19:09:25] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=fm_volume=0.0000000000
 [19:09:25] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=routing=1
 [19:09:26]  Last message repeated 1 time(s).
 [19:09:26] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=fm_volume=0.2668401897
 [19:09:45] <vasy>  в этом я так понимаю и все дело:
 [19:09:45] <vasy>  E/AudioSystem( 801): AudioSystem::setParameters keyValuePairs=in_call=true
 [19:15:45] <vasy>  хм но разницы между работающей и неработающей sim нету и там и там
 [19:15:45] <vasy>  E/AudioSystem( 799): AudioSystem::setParameters keyValuePairs=in_call=true
 [19:15:45] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=fm_volume=0.0000000000
 [19:15:45] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=routing=1
 [19:15:46]  Last message repeated 1 time(s).
 [19:15:46] <vasy>  E/AudioSystem( 226): AudioSystem::setParameters keyValuePairs=fm_volume=0.2668401897
 [19:15:46] <vasy>  один в один ...
 [19:17:11]  *** vasy уехал обдумывать все это...