Closed Bug 1082427 Opened 10 years ago Closed 7 years ago

play music,open clock,goto timer,choose different songs,we could hear music play when we swich to different songs

Categories

(Firefox OS Graveyard :: AudioChannel, defect)

ARM
Gonk (Firefox OS)
defect
Not set
major

Tracking

(b2g-v1.4 affected)

RESOLVED WONTFIX
Tracking Status
b2g-v1.4 --- affected

People

(Reporter: jingmei.zhang, Unassigned)

Details

No description provided.
[Blocking Requested - why for this release]: steps to reproces: 1.open music 2.open clock 3.click timer,and choose different songs
blocking-b2g: --- → 1.4?
Summary: play → play music,open clock,goto timer,choose different songs,we could hear music play when we swich to different songs
hi wayne: I noticed that when we choose a different song in the timer panel,we will recieve two 'audio-channel-changed' event in system statusbar.js,can you help to check if there are something wrong in gecko audiochannel? Thank you!
Flags: needinfo?(waychen)
The sounds for timer use "alarm" audio channel type. And the music app uses "content" audio channel type. While previewing the timer sounds, the higher priority(i.e. alarm type) channel occupies the audio channel control. After previewing the timer sound, the audio control is gave back to lower priority (i.e. content) type. Previewing and finish previewing timer sounds cause twice "audio-channel-changed" events. This is a audio leak phenomenon indeed. We have a proposal for "refactoring audio channel" in order to improve this phenomenon, but it won't occur soon.
Flags: needinfo?(waychen)
(In reply to Star Cheng [:scheng] from comment #3) > After previewing the timer sound, the audio control is gave back to lower priority > (i.e. content) type. Previewing and finish previewing timer sounds cause > twice "audio-channel-changed" events. hi Star: I have some confusions: 1.we could hear music when we start to choose another type of songs,other than finish previewing timer sounds. 2.in gecko,I can find that when we choose another songs in timer there is a operation to UnregisterType(alarm type),I think this might be the reason why music play during timer song change. 3.this wont happen in settins/sound,when we try to set another ringtone for the phone.
Flags: needinfo?(scheng)
the bt while we change songs in timer: first to unregister AUDIO_CHANNEL_ALARM #0 SendAudioChannelChangedNotification (aChildID=<optimized out>, this=0xaa13f100) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:537 #1 mozilla::dom::AudioChannelService::SendAudioChannelChangedNotification (this=0xaa13f100, aChildID=<optimized out>) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:460 #2 0xb5569154 in mozilla::dom::AudioChannelService::UnregisterTypeInternal (this=this@entry=0xaa13f100, aType=aType@entry=mozilla::dom::AUDIO_CHANNEL_ALARM, aElementHidden=aElementHidden@entry=false, aChildID=aChildID@entry=4, aWithVideo=aWithVideo@entry=false) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:265 #3 0xb556922c in mozilla::dom::AudioChannelService::UnregisterType (this=0xaa13f100, aType=mozilla::dom::AUDIO_CHANNEL_ALARM, aElementHidden=<optimized out>, aChildID=aChildID@entry=4, aWithVideo=false) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:234 #4 0xb53e0132 in mozilla::dom::ContentParent::RecvAudioChannelUnregisterType (this=<optimized out>, aType=@0xbeb8f518: mozilla::dom::AUDIO_CHANNEL_ALARM, aElementHidden=@0x0: <error reading variable>, aWithVideo=@0xbeb8f510: false) at ../../../gecko/dom/ipc/ContentParent.cpp:1904 #5 0xb4ff0fbc in mozilla::dom::PContentParent::OnMessageReceived (this=0xa8b89400, __msg=..., __reply=@0xbeb8f5e8: 0x0) at PContentParent.cpp:4291 when we unregister the AUDIO_CHANNEL_ALARM,the music play. then codes go to register the AUDIO_CHANNEL_ALARM,the alarm play. #0 SendAudioChannelChangedNotification (aChildID=<optimized out>, this=0xaa13f100) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:537 #1 mozilla::dom::AudioChannelService::SendAudioChannelChangedNotification (this=0xaa13f100, aChildID=<optimized out>) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:460 #2 0xb556939a in mozilla::dom::AudioChannelService::RegisterType (this=0xaa13f100, aType=mozilla::dom::AUDIO_CHANNEL_ALARM, aChildID=4, aWithVideo=false) at ../../../gecko/dom/audiochannel/AudioChannelService.cpp:171 #3 0xb53e0164 in mozilla::dom::ContentParent::RecvAudioChannelRegisterType (this=0xa8b89400, aType=@0xbeb8f000: mozilla::dom::AUDIO_CHANNEL_ALARM, aWithVideo=@0xbeb8eff8: false) at ../../../gecko/dom/ipc/ContentParent.cpp:1891
(In reply to jingmei.zhang from comment #4) > (In reply to Star Cheng [:scheng] from comment #3) > > After previewing the timer sound, the audio control is gave back to lower priority > > (i.e. content) type. Previewing and finish previewing timer sounds cause > > twice "audio-channel-changed" events. > hi Star: > I have some confusions: > 1.we could hear music when we start to choose another type of songs,other > than finish previewing timer sounds. > 2.in gecko,I can find that when we choose another songs in timer there is > a operation to UnregisterType(alarm type),I think this might be the reason > why music play during timer song change. > 3.this wont happen in settins/sound,when we try to set another ringtone > for the phone. Item 1 & 2: previewing timer sound 1 : register("alarm") & unregister("alarm") -> resume music playing music : resume "content" channel previewing timer sound 2 : register("alarm") -> suspend music & unregister("alarm") playing music : resume "content" channel ..... You can visit the following website [1] to get more information about audio channel policy. Item 3: In settings app, the AudioContext (web audio) is used instead of audio element. But it seems not a good solution because of more power conception and it causes another "wrong changing volume" issue. [1] https://wiki.mozilla.org/WebAPI/AudioChannels
Flags: needinfo?(scheng)
hi star, Do you have a workaround proposal for this issue? I find there is no such issue in 2.0,anything different from 1.4? thank you for your attention!!
Flags: needinfo?(scheng)
(In reply to jingmei.zhang from comment #7) > hi star, > Do you have a workaround proposal for this issue? > I find there is no such issue in 2.0,anything different from 1.4? > > thank you for your attention!! We still continue discussing the proposal of refacting audio channel, but the target milestone (which OS version) is not confirmed yet.
Flags: needinfo?(scheng)
Wayne, is your team still reviewing these nominations? Thanks.
Flags: needinfo?(wchang)
Looks like this bug is not a 1.4 blocker anymore. Welcome to nominate it back if it's required.
blocking-b2g: 1.4? → ---
thanks
Flags: needinfo?(wchang)
mark as v1.4 affected per comment 1.
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.