<body><div style="font-family: 'Helvetica'; font-size: 10.5pt; color: #000000">
                                
<div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">Hi pulseaudio community,</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">I am a developer who want to use module-bluez-device to transport my android devices' audio data to linux server.And i already did it, i could use webrtc native lib to capture the a2dp_source's audio data.</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">​</span><span style="font-family: Arial, sans-serif;">But what confuse me is that w</span><span style="font-family: Arial, sans-serif;">hen bluetooth transport state change from playing to idle, a2dp_source will disappear, which led to webrtc's audio device capture module change to use another sound device like microphone of my linux server.</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">​</span><br style="font-variant-ligatures: normal;"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">And if bluetooth state change from idle to playing(play a music on the android), a new a2dp_source show up, but webrtc's audio capture module wouldn't change to use the new a2dp_source, that is my problem.</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">When i connect to my android device, and execute </span><span style="font-weight: bold; font-family: Arial, sans-serif;">pactl list sources</span><span style="font-family: Arial, sans-serif;">, a2dp_source state is SUSPENDED and id is 96(</span><span style="font-family: Arial, sans-serif;">Source #96</span><span style="font-family: Arial, sans-serif;">).</span><br><span style="font-family: Arial, sans-serif;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">Then i play a music in my android, the a2dp_source state change to </span><span style="font-family: Arial, sans-serif;">RUNNING.</span><br><br><span style="font-family: Arial, sans-serif;">After that i stop music in my android, the a2dp_source state will keep for maybe 3 seconds, and finally disappear.</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif;">If i play music in my android again, a new a2dp_source show up with id 98 and state is RUNING.</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><br></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-variant-ligatures: normal;"><span style="font-family: Arial, sans-serif;">I tracked the invoke stack after bluez transport state changing from playing to idle.</span><br><br></span><span style="color: rgb(36, 41, 46); font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px; color: rgb(0, 0, 0);">PA_BLUETOOTH_HOOK_TRANSPORT_STATE_CHANGED(playing to idle)</span></span><span style="font-family: Arial, sans-serif; white-space: pre;">​</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="color: rgb(36, 41, 46); font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px; color: rgb(0, 0, 0);">↓
</span></span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">pa_card_profile_set_available(</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">cp, </span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">PA_AVAILABLE_UNKNOWN</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">)[</span><span style="font-family: Arial, sans-serif;">module-bluez5-device.c</span><span style="color: rgb(0, 92, 197); font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px; color: rgb(0, 0, 0);">]</span></span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">↓</span><span style="color: rgb(0, 92, 197); font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px; color: rgb(0, 0, 0);">
</span></span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">profile_available_hook_callback[</span><span style="font-family: Arial, sans-serif;">module-bluetooth-policy.c</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">]</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">↓</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">find_best_profile</span><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">[</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">module-bluetooth-policy.c</span><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">]</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">if (</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">card-></span><span style="box-sizing: border-box; font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">active_profile.</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">available == </span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">PA_AVAILABLE_UNKNOWN && </span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre; font-weight: bold;">anyotherProfile</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">.available == </span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">PA_AVAILABLE_YES</span><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">) {</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255); margin-left: 20px;"><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">//change to </span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre; font-weight: bold;">anyotherProfile</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">}</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-variant-ligatures: normal; font-family: Arial, sans-serif; white-space: pre;">At here,</span><span style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px; font-weight: bold;">anyotherProfile</span><span style="font-family: Arial, sans-serif; font-size: 13px;"> = off
</span></span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">↓</span><span style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; font-variant-ligatures: normal; white-space: pre;"><span style="font-family: Arial, sans-serif; font-size: 13px;">
</span></span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">set_profile_cb & stop_thread [</span><span style="font-family: Arial, sans-serif;">module-bluez5-device.c</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">]</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">↓
</span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">a2dp_source disappear<br></span><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal; white-space: pre;">
If i am right, what resolution do you think is best should i take?</span></div><div style="font-family: SimSun, serif; font-size: 13px; font-variant-ligatures: normal; orphans: 2; widows: 2; background-color: rgb(255, 255, 255);"><br><br><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">Best regards,</span><br style="font-variant-ligatures: normal;"><span style="font-family: Arial, sans-serif; font-variant-ligatures: normal;">Yang Chen</span></div>
<br>
<div class="yomail-sig" style="margin:0;padding:0;"><div class="yomail-sig" style="padding: 0px; margin: 0px;"><span> </span>
                                
                                <div style="font-family: 'Helvetica'; font-size: 10.5pt; color: #000000">
                                <div style="font-family: 'Helvetica'; font-size: 10.5pt; color: #000000">
                                <div style="font-family: 'Helvetica'; font-size: 10.5pt; color: #000000">
                                <hr class="-eMc-email-sig" style="width: 101px;border: 0;border-top: 1px solid #ccc;" align="left">                                                 <a href="http://www.yomail.com/?utm_source=signature" style="font-size:10.5pt;font-family:Helvetica;">Sent from YoMail for Gmail</a>
                        </div>
                        </div>
                        </div>
                        
                        </div></div>
                        </div></body>