Closed
Bug 1074177
Opened 10 years ago
Closed 10 years ago
DTMF tone are not coming on Bluetooth headset
Categories
(Core :: WebRTC: Audio/Video, defect)
Tracking
()
People
(Reporter: poojas, Assigned: rlin)
References
Details
(Keywords: regression, Whiteboard: [caf priority: p2][CR 727989])
Attachments
(1 file, 1 obsolete file)
(deleted),
patch
|
mwu
:
review+
fabrice
:
approval-mozilla-b2g34+
|
Details | Diff | Splinter Review |
STR:
1. Pair and Connect BT headset with DUT
2. Make a call and receive the call at other end.
3. Now verify DTMF tone by pressing number on keypad
Expected bhavior:
The DTMF tone should be audible at BT headset.
Actual behavior:
DTMF tones are not coming on BT headset
Gaia Gecko details:
Gaia: 93a99bea0b40d81bd063f7d8b1964dc1ba35ba7b
Gecko: c896bc5d04b8c08dcddd78195901503a3578a08f
[Blocking Requested - why for this release]:
Blocks: CAF-v2.1-FC-metabug
blocking-b2g: --- → 2.1?
Updated•10 years ago
|
Whiteboard: [CR 725755] → [caf priority: p2][CR 725755]
Comment 2•10 years ago
|
||
qawanted to confirm this is a regression in 2.1 and test across branches and we can take it from there for engg to investigate..
Keywords: qawanted
Whiteboard: [caf priority: p2][CR 725755] → [caf priority: p2][CR 727989]
This used to work. See bug 857795.
We need to check both audio and keypad part. Since this issue needs to play DTMF tone during in-call mode and mix into SCO link.
Comment 6•10 years ago
|
||
Issue occurs on Flame 2.2 KK and Flame 2.1 KK.
Actual results: Tones come out of the phone not the bluetooth headset.
Environmental Variables:
Device: Flame 2.2
BuildID: 20140930061521
Gaia: 77ef35f5429bc3dfe9ca192b9aacc3c0bf8857de
Gecko: 2ae57957e4bb
Version: 35.0a1 (2.2)
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
Environmental Variables:
Device: Flame 2.1
BuildID: 20140930093624
Gaia: 89a13e9325948488fd4ae777a97f489189a7ed26
Gecko: 9550de0111d4
Version: 34.0a2 (2.1)
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Issue does not occur on Flame 2.0 KK and the Flame KK v180 2.0 base.
Actual Results: Tones do come out of the bluetooth headset.
Environmental Variables:
Device: Flame 2.0
BuildID: 20140930095020
Gaia: 5c2303ec4e367da060aa1b807d541a6549b3d72a
Gecko: f19f4e07010a
Version: 32.0 (2.0)
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
QA Whiteboard: [QAnalyst-Triage?]
status-b2g-v2.0:
--- → unaffected
status-b2g-v2.1:
--- → affected
status-b2g-v2.2:
--- → affected
Flags: needinfo?(jmitchell)
Keywords: qawanted → regression
Updated•10 years ago
|
QA Whiteboard: [QAnalyst-Triage?]
Keywords: regressionwindow-wanted
Updated•10 years ago
|
Flags: needinfo?(jmitchell)
Updated•10 years ago
|
QA Contact: jmercado
Comment 7•10 years ago
|
||
I can reproduce on
Flame KK(v180) + latest mozilla-aurora + latest gaia:v2.1
, but I couldn't reproduce on
Flame KK(v180) + latest gecko/gaia v2.0
(just like Jayme mentioned in comment 6)
The scenario was that SCO connection had been established when a call was created. During the call I tried to make the keypad appear. After pressing some keys, DTMF tone could be heard from the remote side so I was sure that the SCO connection was still alive, however the sound didn't come out from the connected bluetooth headset.
I also checked related Gaia code in order to make sure that the DTMF tone was truly played. In function _playDtmfTone() which is located in shared/js/dialer/keypad.js, |this._dtmfTone.play()| was executed without any problem.
I believe this is not a Bluetooth issue, I'll find someone to investigate more tomorrow.
Updated•10 years ago
|
Target Milestone: --- → 2.1 S6 (10oct)
Comment 8•10 years ago
|
||
Bug 848954 seems to be the cause for this issue.
Mozilla-inbound Regression Window
Last Working
Environmental Variables:
Device: Flame 2.1
BuildID: 20140826202129
Gaia: 6e804a42ab90f4251c7fe8c68731dc1c6abd8006
Gecko: fff4d503ad88
Version: 34.0a1 (2.1)
Firmware Version: L1TC00011230
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
First Broken
Environmental Variables:
Device: Flame 2.1
BuildID: 20140826203729
Gaia: 6e804a42ab90f4251c7fe8c68731dc1c6abd8006
Gecko: a71337656d0c
Version: 34.0a1 (2.1)
Firmware Version: L1TC00011230
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Last Working gaia / First Broken gecko - Issue DOES occur
Gaia: 6e804a42ab90f4251c7fe8c68731dc1c6abd8006
Gecko: a71337656d0c
First Broken gaia / Last Working gekko - Issue does NOT occur
Gaia: 6e804a42ab90f4251c7fe8c68731dc1c6abd8006
Gecko: fff4d503ad88
Gaia Pushlog: http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=fff4d503ad88&tochange=a71337656d0c
Updated•10 years ago
|
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
Comment 9•10 years ago
|
||
Hi Randell,
According to the result of comment 8, this issue seems to be caused by patches for bug 848954. I hope that you and Paul could give us a hand. Since Paul is on PTO, would you mind taking a look?
Flags: needinfo?(rjesup)
Comment 10•10 years ago
|
||
Sure. I'll need some help here.
a) how is Bluetooth normally hooked into the audio chain?
b) What determines which audio goes there versus the normal speakers
b1) and how does that change on the fly? (device pairs, device goes away, etc)
c) How does this relate to cubeb running the content process?
d) where do the DTMF sounds come from?
d1) how are they routed/played?
Flags: needinfo?(rjesup) → needinfo?(echou)
Comment 11•10 years ago
|
||
(In reply to Randell Jesup [:jesup] from comment #10)
> Sure. I'll need some help here.
>
> a) how is Bluetooth normally hooked into the audio chain?
> b) What determines which audio goes there versus the normal speakers
> b1) and how does that change on the fly? (device pairs, device goes away,
> etc)
> c) How does this relate to cubeb running the content process?
> d) where do the DTMF sounds come from?
> d1) how are they routed/played?
Shawn is way more familiar than me with this part. I'm going to redirect these questions to him. :)
Flags: needinfo?(echou) → needinfo?(shuang)
I'm not audio guy, but will answer based on understanding
a) While Bluetooth headset connected, during the phone call, open Dialer keypad and tap numbers, DTMF tone will be played, and mixed into Bluetooth audio.
b) During the phone call session (in-call status), it shall be telephony channel type. So dialer plays DTMF tone, channel type shall be also telephony type.
b1) I don't understand the question, Star can you comment it?
c) I'm afraid I cannot answer this question, handover this question to Star
d) gaia/shared/js/dialer/keypad.js, In function _playDtmfTone() which is located in shared/js/dialer/keypad.js, |this._dtmfTone.play()|
d1) With bluetooth headset connected, in-call mode, DTMF tone channel type is telephony mode.
Without bluetooth headset connected, in-call mode, DTMF tone channel type is normal mode.
When AudioManager.cpp under dom/system/gonk knows that Bluetooth audio connection established, it informs Android AudioSystem https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/file/baaa0c3ab8fd/dom/system/gonk/AudioManager.cpp#l266
Flags: needinfo?(shuang) → needinfo?(scheng)
Comment 13•10 years ago
|
||
Delegate this issue to Randell. Please feel free to re-assign. :)
Assignee: echou → rjesup
Comment 14•10 years ago
|
||
(In reply to Shawn Huang [:shawnjohnjr] from comment #12)
> I'm not audio guy, but will answer based on understanding
> a) While Bluetooth headset connected, during the phone call, open Dialer
> keypad and tap numbers, DTMF tone will be played, and mixed into Bluetooth
> audio.
> b) During the phone call session (in-call status), it shall be telephony
> channel type. So dialer plays DTMF tone, channel type shall be also
> telephony type.
> b1) I don't understand the question, Star can you comment it?
> c) I'm afraid I cannot answer this question, handover this question to Star
AudioSink create a named "Media Audio" audioloop thread and init audiostream:
AudioStream -> Cubeb_opensl -> opensl lib -> AuidoTrack/AudioFlinger -> Android HAL -> Linux
There is a kind of audio channel type for audiostream, and the type is mapped to android stream type in CubebUtils::ConvertChannelToCubebType() function. Android HAL decide the routing path based on steam type, connection status and phone state.
> d) gaia/shared/js/dialer/keypad.js, In function _playDtmfTone() which is
> located in shared/js/dialer/keypad.js, |this._dtmfTone.play()|
> d1) With bluetooth headset connected, in-call mode, DTMF tone channel type
> is telephony mode.
> Without bluetooth headset connected, in-call mode, DTMF tone channel
> type is normal mode.
> When AudioManager.cpp under dom/system/gonk knows that Bluetooth audio
> connection established, it informs Android AudioSystem
> https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/file/baaa0c3ab8fd/dom/
> system/gonk/AudioManager.cpp#l266
Flags: needinfo?(scheng)
Updated•10 years ago
|
Component: Bluetooth → WebRTC: Audio/Video
Product: Firefox OS → Core
Comment 15•10 years ago
|
||
Hi Randell, any update on this? The 2.1 FC is Oct 10th and we'd like to know if this can be fixed before then. Thanks.
Flags: needinfo?(rjesup)
Comment 16•10 years ago
|
||
I talked with Steven Lee last night; he confirmed that the audio channel type is not correct. I think he was going to update the bug, but perhaps he didn't get to it before he had to leave.
Unfortunately, I don't have a bluetooth device (I have an ancient one somewhere, but can't find it). I'm looking over the code for setting the audio channel type, but can't find any obvious differences in result;
Flags: needinfo?(rjesup)
Comment 17•10 years ago
|
||
Update from private email from Steven: it's bluetooth only, but the audio channel type is correct. He'll talk to the audio routing guys tomorrow.
Comment 18•10 years ago
|
||
Hi jesup,
We found that
1. from "adb shell dumpsys", the volume of output-2 is 0
2. I flashed v184 with the latest pvt build of v2.1. DTMF tone works fine.
3. I flashed the whole image of the latest pvt build of v2.1. DTMF tone breaks.
Hi Bobby,
Please contact build team to update the correct image.
hi JMercado,
Please update to v184 and check again.
Thanks
PVT build is still using v180 binary files (in backup-flame folder).
(In reply to Shawn Huang [:shawnjohnjr] from comment #19)
> PVT build is still using v180 binary files (in backup-flame folder).
Please build PVT images with the latest flame-kk release v184 binary files (under "backup-flame" folder, v184 binary files can work correctly.
Randy Lin found that audio.primary.msm8610.so causes PCM volume gain is 0, this is why we cannot hear anything from Bluetooth SCO. Using v184 binary files, the audio library works correctly, we can see volume gain is 0.5.
Since this bug raised by CAF, can Pooja help to check internally, see if there is anything wrong from audio library?
Comment 21•10 years ago
|
||
This issue does occur on the latest Master build with the v184 base.
Environmental Variables:
Device: Flame 2.2
BuildID: 20141008170004
Gaia: 7b92615bdc97e5c675cd385ec68bc5e47e0c5288
Gecko: f0bb13ef0ee4
Version: 35.0a1 (2.2)
Firmware Version: L1TC00011840
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmercado) → needinfo?(jmitchell)
Keywords: qawanted
Updated•10 years ago
|
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
(In reply to Jayme Mercado [:JMercado] from comment #21)
> This issue does occur on the latest Master build with the v184 base.
>
> Environmental Variables:
> Device: Flame 2.2
> BuildID: 20141008170004
> Gaia: 7b92615bdc97e5c675cd385ec68bc5e47e0c5288
> Gecko: f0bb13ef0ee4
> Version: 35.0a1 (2.2)
> Firmware Version: L1TC00011840
> User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
Is this shallow flash? Only update gecko/gaia (v2.2) based on v184, or full flash (images)?
Comment 23•10 years ago
|
||
Thought I had put that in the variables. I had checked this with shallow flash.
(In reply to Jayme Mercado [:JMercado] from comment #23)
> Thought I had put that in the variables. I had checked this with shallow
> flash.
We will figure out what happened on v2.2, we did not put efforts on v2.2.
But can you confirm the result after changing v184 with gecko/gaia v2.1?
Comment 25•10 years ago
|
||
Adding a qawanted tag so this will appear in my queue to work on tomorrow.
Keywords: qawanted
Comment 26•10 years ago
|
||
This issue still occurs on 2.1 Flame KK with the v184 base using both shallow flash and full flash.
Environmental Variables (full flash):
Device: Flame 2.1
BuildID: 20141010080105
Gaia: 94241841e18c0ce41943bd12ab16c338faf99257
Gecko: 0eded22bb3ed
Version: 34.0a2 (2.1)
Firmware Version: L1TC00011840
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Environmental Variables (Shallow Flash):
Device: Flame 2.1
BuildID: 20141010080105
Gaia: 94241841e18c0ce41943bd12ab16c338faf99257
Gecko: 0eded22bb3ed
Version: 34.0a2 (2.1)
Firmware Version: L1TC00011840
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Updated•10 years ago
|
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
Comment 27•10 years ago
|
||
Hi joshua_M,
I checked again. I found that my flash last week had problem. I did not notice that. We will try to figure out the problem. Sorry for the inconvenience.
Assignee: bchien → nobody
Assignee | ||
Comment 28•10 years ago
|
||
Found the system stream volume on bt_sco device should be set when user adjust the system volume.
This patch can fix this issue.
Attachment #8503951 -
Flags: review?(mwu)
Comment 30•10 years ago
|
||
Comment on attachment 8503951 [details] [diff] [review]
patch v1
Review of attachment 8503951 [details] [diff] [review]:
-----------------------------------------------------------------
Can we remove the special case handling for aStream == AUDIO_STREAM_BLUETOOTH_SCO and always set AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET?
Attachment #8503951 -
Flags: review?(mwu)
Assignee | ||
Comment 31•10 years ago
|
||
I remove it on this patch.
Thanks.
Attachment #8503951 -
Attachment is obsolete: true
Attachment #8504460 -
Flags: review?(mwu)
Comment 33•10 years ago
|
||
Comment on attachment 8504460 [details] [diff] [review]
patch v1.1
Review of attachment 8504460 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/system/gonk/AudioManager.cpp
@@ +836,5 @@
> aIndex,
> AUDIO_DEVICE_OUT_EARPIECE);
> + // Bug:1074177 DTMF tone are not coming on Bluetooth headset in phone call.
> + // B2G uses system stream as dtmf tone, so we also need to
> + // update the system stream volume on bt sco devices.
I'm not sure this comment helps much.
Attachment #8504460 -
Flags: review?(mwu) → review+
Assignee | ||
Comment 34•10 years ago
|
||
Remove comment.
try:
https://treeherder.mozilla.org/ui/#/jobs?repo=try&revision=66cf8d12b844
inbound rev:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b845c0769a85
Comment 35•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 36•10 years ago
|
||
Comment on attachment 8504460 [details] [diff] [review]
patch v1.1
Approval Request Comment
[Feature/regressing bug #]:NA
[User impact if declined]:User can't hear DTMF tone during the phone call when user try to press dtmf button.
[Describe test coverage new/current, TBPL]:Test on b2g device.
[Risks and why]: It may affect some test case.
[String/UUID change made/needed]:
Attachment #8504460 -
Flags: approval-mozilla-aurora?
Comment 37•10 years ago
|
||
Comment on attachment 8504460 [details] [diff] [review]
patch v1.1
v2.1 is on b2g34 now
Attachment #8504460 -
Flags: approval-mozilla-aurora? → approval-mozilla-b2g34?
Updated•10 years ago
|
status-firefox34:
--- → wontfix
status-firefox35:
--- → wontfix
status-firefox36:
--- → fixed
Target Milestone: 2.1 S6 (10oct) → mozilla36
Updated•10 years ago
|
Attachment #8504460 -
Flags: approval-mozilla-b2g34? → approval-mozilla-b2g34+
Comment 38•10 years ago
|
||
Comment 39•10 years ago
|
||
This issue is verified fixed on Flame 2.2.
The tone is heard through the BT headset.
Flame 2.2
Device: Flame 2.2 Master (319mb)(Kitkat Base)(Full Flash)
BuildID: 20141022040201
Gaia: 4d7f051cede6544f4c83580253c743c22b0cb279
Gecko: ae4d9b4ff2ee
Gonk: 05aa7b98d3f891b334031dc710d48d0d6b82ec1d
Version: 36.0a1 (2.2)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
=====================================
Leaving verifyme keyword to check on 2.1 in a couple days.
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Keywords: verifyme
Comment 40•10 years ago
|
||
This issue is verified fixed on Flame 2.1.
The tone is heard through the BT headset.
Flame 2.1
Device: Flame 2.1 (319mb)(Kitkat Base)(Full Flash)
BuildID: 20141024001204
Gaia: 0f76e0baac733cca56d0140e954c5f446ebc061f
Gecko: 7d78ff7d25b6
Gonk: 05aa7b98d3f891b334031dc710d48d0d6b82ec1d
Version: 34.0 (2.1)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Keywords: verifyme
Updated•10 years ago
|
Updated•10 years ago
|
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
You need to log in
before you can comment on or make changes to this bug.
Description
•