Closed Bug 823045 Opened 12 years ago Closed 11 years ago

Incoming call ring doesn't go through headphones when listening to the radio

Categories

(Firefox OS Graveyard :: General, defect, P3)

x86
macOS
defect

Tracking

(blocking-b2g:tef+, blocking-basecamp:-, b2g18 fixed)

RESOLVED WORKSFORME
B2G C4 (2jan on)
blocking-b2g tef+
blocking-basecamp -
Tracking Status
b2g18 --- fixed

People

(Reporter: hello, Assigned: rlin)

Details

(Whiteboard: UX-P5, v2, interaction, testrun 2)

STR:

Listen to radio (with headphones, of course)
Receive and incoming call

Expected:
Hear the ringtone through the headphones

Actual:
Ringtone goes through device speaker.
Whiteboard: UX-P2
Bug 779149 wasn't completely fixed.  You don't need to listen to radio.  You just need an incoming call.
blocking-basecamp: --- → ?
Triage: BB+, C3, P3 - consider use cases in target market where people would listen to FM Radio and put phone in pocket. Ringtone should be hear from headset
blocking-basecamp: ? → +
Priority: -- → P3
Target Milestone: --- → B2G C3 (12dec-1jan)
Component: Gaia::FMRadio → General
QA Contact: jshih
Steven, can you take this?  If not, please re-assign to nobody@.  Thanks.
Assignee: nobody → slee
This hehavior comes from android routing policy, (AudioPolicyManager.cpp)
If MT call comes, Ringtone can output from speaker(or speaker+headphone) because user may not wear the headphone on ear but user will fell angry if they miss a phone call.
QA Contact: jshih
Who can confirm this is an expected behavior or not?
Flags: needinfo?
Well, wouldn't they feel angry too if they're actually using the headphones (which I think it's safe to assume if plugged in) and they miss the call because it came though the speaker instead of the headphone? Plus, wouldn't people *around* (say, in a train), feel angry when someone with headphones doesn't pick up the call and keeps annoying *them* with the ringer?

On top of it all, wouldn't someone with headphones plugged in *assume* that if he doesn't wear them he'd naturally miss any sound coming through them, calls, music or any other thing?

PS. Indeed this happens both with music and radio, and presumably other similar situations (perhaps a video playing, youtube, etc).
Flags: needinfo?
Refer to "iphone4s" and "android phone", the ringtone will go-through both speaker/headphone both. I think it's a better design because user can choose to mute ringer in a train. But you still can get "stop" notification when FM/music is interrupt by phone call ringer.
Flags: needinfo?(hello)
I know both iOS and Android (and WP too) do it; I simply disagree with that approach :) I find plugging headphones should implicitly mute the speaker. I'd be willing to have a weaker opinion is we offered a faster and more obvious way to mute and unmute the device (like hardware or lock screen swipe, for instance), or if a more compelling use case is made.

Here's another take. Since we give users the option to mute or unmute, let's simply make mute the default when headphones are plugged, and allow them to manually unmute when they're in the proverbial train if that tickles their fancy.

Josh, wanna chime in?
Flags: needinfo?(hello) → needinfo?(jcarpenter)
Assignee: slee → rlin
this behavior is defined in partner's library. If we still want this, we need to request partner to customize this one.
base on my talk with :rlin, as comment 9, if the phone ringer is ONLY to come out from the headset (when plugged in), it will require OEM partner to do it. Or else, it will be an ugly hack if gecko is to do this
I think it's better to customize this behavior in AudioPolicyManager.cpp, that is platform/OEM depend library.
The ringtone goes just through speaker or both speaker and headset?
Now I test go-through headset and speaker.
per my conversation with :rlin, the ringtone actually goes to both speaker and headset but the ringer volume in the headset is really small that it's sometimes not audible (depending on your environment). So this is a acoustic table adjustment from the OEM partner

to change the behavior to only have ringer coming out from the headset (with speaker muted), per comment 9, it needs OEM partner to handle as well
It is the android original design that ringtone goes to both speaker and headset.
I think this design is reasonable. 
Assuming the end user put the phone in his bag with headset plugged, then he will miss any incoming calls if the ringtone is just playing through headset. Thanks
agree with comment 15. it seems to make sense to be in sync with Android/iPhone in terms of this behavior
Hi guys, chiming in here: I'm fine with the current implementation, for v1. 

* It gets us to parity with prior art (although we should fix the issue identified in comment #14)
* Implementing different behavior would require coordination with OEMs
* Current implementation errs on the side of making sure user never misses a call

Rafa, I do take your points tho, and have whiteboard marked this v2, and we revisit the thinking here for future versions.
Flags: needinfo?(jcarpenter)
Whiteboard: UX-P2 → UX-P2, v2
Also bumping this to UX-P5, for future version tracking.
Whiteboard: UX-P2, v2 → UX-P5, v2
(In reply to Joe Cheng [:jcheng] from comment #14)
> per my conversation with :rlin, the ringtone actually goes to both speaker
> and headset but the ringer volume in the headset is really small that it's
> sometimes not audible (depending on your environment). So this is a acoustic
> table adjustment from the OEM partner

Randy or Joe, are you in contact with the OEM about making these changes?
Whiteboard: UX-P5, v2 → UX-P5, v2, interaction
Yes. also CCed in this bug
Is this still considered blocking if it's the OEM who needs to make a change?
Target Milestone: B2G C3 (12dec-1jan) → B2G C4 (2jan on)
(In reply to Chris Lee [:clee] from comment #21)
> Is this still considered blocking if it's the OEM who needs to make a change?

Do we have a way of tracking important OEM changes?
Is this really a blocker?
Talked to riin and understood more background.
This issue is hardware dependent so even if the OEM partner fix this issue on Unagi, it doesn't mean that this is fixed for the final production device. 
So it does not seem like it should block v1 release since it's not related to the tag that we will be applying to v1.
blocking-basecamp: + → ?
Can someone recap the actual user impact here?  

Does the user miss a phone call because the ringer audio is not routed through the headphones?
(In reply to Chris Lee [:clee] from comment #24)
> Does the user miss a phone call because the ringer audio is not routed
> through the headphones?

Yes, they could.  Josh and I spoke about this on Friday and from a UX perspective we'd really like both headphones (if they're plugged in) and speaker to ring on an incoming call.
Now unagi device can output ringer to headphone and speaker. (If users don't adjust the ringer volume too low, users can hear the ringer on headset).
(In reply to Randy Lin [:rlin] from comment #26)
> Now unagi device can output ringer to headphone and speaker. (If users don't
> adjust the ringer volume too low, users can hear the ringer on headset).

So we're good to go here?  Was there a fix for this or did it just magically start working?  :)
Adding qawanted to have QA test whether this works now.
Keywords: qawanted
from my previous conversation with Randy is that it has been working correctly (output to both speaker and headset), it's just that the ringing is not loud enough to be heard from the headset. so this bug is basically to track with OEM partner to make ringing louder through the headset (through some acoustic table adjustment)
Since this is an OEM-related issue and it's also hardware-dependent, there's no point in tuning this for unagi or otoro devices when shipping hardware will likely require further tuning.  Let's track this for 1.0, though.
blocking-b2g: --- → tef+
blocking-basecamp: ? → -
Now I can both hear the ring from device and headphone
remove qawanted
Keywords: qawanted
UCID: user-sound-024
https://moztrap.mozilla.org/results/case/63001/
Whiteboard: UX-P5, v2, interaction → UX-P5, v2, interaction, testrun 2
Randy, are you working with the OEM on this issue?
Flags: needinfo?(rlin)
In Unagi build 20130115070201, When playing the radio and receiving an incoming call, the ringer is loud in the headset as well as from the device. There should be no way to miss this ringer audio in this instance. I'm marking this Worksforme.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
Now the unagi ringtone behavior is as UX expect.
Flags: needinfo?(rlin)
You need to log in before you can comment on or make changes to this bug.