Громкость звука музыки Nougat внезапно падает с помощью «приложения быстрого поиска Google» - PullRequest
0 голосов
/ 03 мая 2018

На моем устройстве с Android N (7.1.2) громкость музыкального проигрывателя (приложения «Воспроизведение музыки») внезапно снижается, если запущено приложение «Панель быстрого поиска Google», а громкость возвращается к нормальной работе, как только мы сворачиваем Приложение панели быстрого поиска Google

попытался поставить и отладить журналы в файлах ниже, но не получил основную причину рамки / база / медиа / Java / Android / СМИ / AudioManager.java рамки / база / услуги / ядро ​​/ Java / COM / Android / сервер / аудио / AudioService.java

Любой совет, как громкость музыки увеличивается и исчезает?

Журналы для справки:

01-01 07:52:51.668 437-7351/? D/audio_hw_primary: copl(0xac8c46c0):out of compress_wait
01-01 07:52:51.668 437-7353/? D/audio_hw_primary: copl(0xac8c46c0): writing buffer (65536 bytes) to compress device
01-01 07:52:51.669 437-7353/? D/audio_hw_primary: copl(0xac8c46c0): writing buffer (65536 bytes) to compress device
01-01 07:52:51.672 437-7353/? D/audio_hw_primary: No space available in compress driver, post msg to cb thread
01-01 07:52:51.672 437-7351/? D/audio_hw_primary: copl(0xac8c46c0):calling compress_wait
01-01 07:52:53.839 971-1186/system_process I/Test_log: AudioService.java :handleMessage::msg:{ when=-1ms what=5 arg2=-1000 target=com.android.server.audio.AudioService$AudioHandler }
01-01 07:52:53.839 971-1186/system_process I/Test_log: AudioService.java :handleMessage::msg.what:5
01-01 07:52:53.839 971-1186/system_process I/Test_log: AudioService.java :handleMessage: onPlaySoundEffect:msg.arg1:0
01-01 07:52:53.839 971-1186/system_process I/Test_log: AudioService.java :handleMessage: onPlaySoundEffect:msg.arg2:-1000
01-01 07:52:53.839 971-1186/system_process I/Test_log: onPlaySoundEffect_11111
01-01 07:52:53.840 971-1186/system_process I/Test_log: AudioService.java : onPlaySoundEffect: stackdump
                                                      java.lang.Throwable: stack dump
                                                          at com.android.server.audio.AudioService$AudioHandler.onPlaySoundEffect(AudioService.java:4689)
                                                          at com.android.server.audio.AudioService$AudioHandler.handleMessage(AudioService.java:4811)
                                                          at android.os.Handler.dispatchMessage(Handler.java:102)
                                                          at android.os.Looper.loop(Looper.java:154)
                                                          at com.android.server.audio.AudioService$AudioSystemThread.run(AudioService.java:4455)


                                                      --------- beginning of system
01-01 07:52:53.840 971-1409/system_process I/ActivityManager: START u0 {act=android.search.action.GLOBAL_SEARCH cat=[com.google.android.googlequicksearchbox.category.SEARCH_WIDGET] flg=0x10008000 cmp=com.google.android.googlequicksearchbox/com.google.android.apps.gsa.searchnow.SearchNowActivity bnds=[191,145][593,243] (has extras)} from uid 10035 on display 0
01-01 07:52:53.862 437-655/? D/audio_hw_primary: start_output_stream: enter: stream(0xac8c41c0)usecase(1: low-latency-playback) devices(0x2)
01-01 07:52:53.862 437-655/? D/audio_hw_primary: select_devices: out_snd_device(2: speaker) in_snd_device(0: )
01-01 07:52:53.862 437-655/? D/hardware_info: hw_info_append_hw_type : device_name = speaker
01-01 07:52:53.862 437-655/? W/audio_hw_utils: audio_extn_utils_update_stream_app_type_cfg: App type could not be selected. Falling back to default
01-01 07:52:53.862 437-655/? I/audio_hw_primary: select_devices Selected apptype: 69936
01-01 07:52:53.863 437-655/? V/audio_hw_dolby: audio_extn_dolby_set_dmid Dolby device manufacturer id is:0
01-01 07:52:53.864 437-655/? V/audio_hw_dolby: audio_extn_dolby_set_license Setting DS1 License, key:0x0 dmid 0
01-01 07:52:53.864 437-655/? E/DAP_HAL: dap_hal_set_hw_info: dmid=0
                                         key 00x
01-01 07:52:53.883 437-655/? E/audio_hw_dolby: audio_extn_dolby_set_license Could not set DS1 License. Status: -1
01-01 07:52:53.883 437-655/? E/audio_hw_dolby: audio_extn_dolby_ds2_set_endpoint: Dolby set endpint :0x2
01-01 07:52:53.883 437-655/? D/soundtrigger: audio_extn_sound_trigger_update_stream_status: uc_id 1 of type 0 for Event 3, with Raise=0
01-01 07:52:53.883 437-655/? D/ACDB-LOADER: ACDB -> send_audio_cal, acdb_id = 14, path =  0
01-01 07:52:53.883 437-655/? D/ACDB-LOADER: ACDB -> send_asm_topology
01-01 07:52:53.883 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_STREAM_TOPOLOGY_ID
01-01 07:52:53.883 437-655/? D/ACDB-LOADER: ACDB -> send_adm_topology
01-01 07:52:53.883 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_COMMON_TOPOLOGY_ID
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> send_audtable
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_COMMON_TABLE_SIZE
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_COMMON_TABLE
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> AUDIO_SET_AUDPROC_CAL
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> send_audvoltable
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_GAIN_DEP_STEP_TABLE
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> AUDIO_SET_AUDPROC_VOL_CAL
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> send_afe_cal
01-01 07:52:53.884 437-655/? D/ACDB-LOADER: ACDB -> ACDB_CMD_GET_AFE_COMMON_TABLE
01-01 07:52:53.885 437-655/? D/ACDB-LOADER: ACDB -> AUDIO_SET_AFE_CAL
01-01 07:52:53.885 437-655/? D/ACDB-LOADER: ACDB -> send_hw_delay : acdb_id = 14 path = 0
01-01 07:52:53.885 437-655/? D/ACDB-LOADER: ACDB -> ACDB_AVSYNC_INFO: ACDB_CMD_GET_DEVICE_PROPERTY
01-01 07:52:53.885 437-655/? I/audio_hw_utils: audio_extn_utils_send_app_type_cfg: PLAYBACK  app_type 69936, acdb_dev_id 14, sample_rate 48000
01-01 07:52:53.886 437-655/? D/audio_hw_primary: enable_audio_route: apply mixer and update path: low-latency-playback
01-01 07:52:53.887 437-655/? D/audio_hw_primary: select_devices: done
01-01 07:52:53.892 971-1409/system_process I/ActivityManager: Killing 6348:com.android.musicfx/u0a24 (adj 906): empty for 3043s
01-01 07:52:53.900 437-655/? D/msm8916_platform: platform_set_channel_map mixer_ctl_name:Playback Channel Map12
01-01 07:52:53.900 437-655/? D/msm8916_platform: platform_set_channel_map: set mapping(1 2 3 0 0 0 0 0) for channel:2
01-01 07:52:53.900 437-655/? D/audio_hw_primary: start_output_stream: exit
01-01 07:52:53.901 971-1409/system_process D/ActivityTrigger: ActivityTrigger activityPauseTrigger 
01-01 07:52:53.923 2096-2096/com.google.android.googlequicksearchbox:search E/LegacyNowServiceClient: skipping logEndstates, service is null
01-01 07:52:53.964 371-371/? W/SurfaceFlinger: couldn't log to binary event log: overflow.
01-01 07:52:53.994 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@15c0524
01-01 07:52:53.995 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@b97588d
01-01 07:52:53.995 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@679da42
01-01 07:52:53.995 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@36e3a53
01-01 07:52:54.000 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@9adf089
01-01 07:52:54.000 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@14f588e
01-01 07:52:54.033 971-1576/system_process D/ActivityManager: cleanUpApplicationRecord -- 6348
01-01 07:52:54.039 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@84a5e43
01-01 07:52:54.039 2096-2096/com.google.android.googlequicksearchbox:search V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@b34bcc0
01-01 07:52:54.174 971-1029/system_process I/ActivityManager: Displayed com.google.android.googlequicksearchbox/com.google.android.apps.gsa.searchnow.SearchNowActivity: +247ms
01-01 07:52:54.183 5385-5466/com.android.launcher3 D/OpenGLRenderer: endAllActiveAnimators on 0x898dc380 (RippleDrawable) with handle 0x93e15e20
01-01 07:52:54.190 437-7353/? D/audio_hw_primary: out_set_parameters: enter: usecase(3: compress-offload-playback) kvpairs: routing=2
01-01 07:52:54.245 1217-1217/com.google.android.inputmethod.latin W/InputMethodService: Window size has been changed. This may cause jankiness of resizing window: -1 -> -2 

1 Ответ

0 голосов
/ 03 мая 2018

При воспроизведении звука на устройстве Android приложение должно запрашивать фокусировку звука. Операционная система может по-разному справляться с конфликтом в фокусировке звука, она либо выполняет приглушение звука, на короткое время останавливает звук или полностью передает управление другому приложению, которое запрашивает фокус:

С Управление фокусировкой звука Документация Android:

Два или более приложений Android могут воспроизводить звук в одном выходном потоке одновременно. Система смешивает все вместе. Пока это технически впечатляюще, это может быть очень усугубляющим для пользователя. Избежать каждое музыкальное приложение, воспроизводимое одновременно, Android представляет идею аудио фокуса. Только одно приложение может удерживать аудио фокус одновременно.

TL; DR: Мне кажется, что панель поиска Google запрашивает фокусировку звука, возможно, для голосового управления, и во время этого действия ОС ненадолго отключает звук приложения - после чего фокусировка звука вернул ваше заявление.

Подробнее см. Управление фокусировкой звука .

...