6.7btif_a2dp_source_audio_tx_start_event():真正开始跑编码 timer源码:packages/modules/Bluetooth/system/btif/src/btif_a2dp_source.cc在协议栈层确认 start 成功后,才会进入真正的数据面:btif_a2dp_source_start_audio_req(peer_address)调到btif_a2dp_source_audio_tx_start_event(peer_address)设置sw_audio_is_encoding = truemedia_alarm.SchedulePeriodic(...)这个 periodic timer 才是后面真正周期性拉 PCM、编码、送包的入口。它进一步会:通过btif_a2dp_source_read_callback()从 FMQ 里读 PCM通过 encodersend_frames()编码通过bta_av_ci_src_data_ready()
【车载 AOSP 16 蓝牙(bluedroid)服务】【qcom 平台双蓝牙】【10.UI点击播放,耳机如何出声 2】
6.7btif_a2dp_source_audio_tx_start_event():真正开始跑编码 timer源码:packages/modules/Bluetooth/system/btif/src/btif_a2dp_source.cc在协议栈层确认 start 成功后,才会进入真正的数据面:btif_a2dp_source_start_audio_req(peer_address)调到btif_a2dp_source_audio_tx_start_event(peer_address)设置sw_audio_is_encoding = truemedia_alarm.SchedulePeriodic(...)这个 periodic timer 才是后面真正周期性拉 PCM、编码、送包的入口。它进一步会:通过btif_a2dp_source_read_callback()从 FMQ 里读 PCM通过 encodersend_frames()编码通过bta_av_ci_src_data_ready()