[B2G][Helix][SD]When playing music of internal_sd card, pull out the external_sd card, the music stops

UNCONFIRMED
Unassigned
(NeedInfo from)

Status

Firefox OS
Gaia::Music
P2
normal
UNCONFIRMED
4 years ago
2 years ago

People

(Reporter: lecky, Unassigned, NeedInfo)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [fixinmusic2])

(Reporter)

Description

4 years ago
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; aff-kingsoft-ciba; .NET4.0E; .NET4.0C)

Steps to reproduce:

1, Put a MP3 to the internal_sd card, insert an external_sd card.

2, Restart the phone, play music.

3, Pull out the external_sd card.


Actual results:

1, the music stopped.


Expected results:

1, Music can be played normally.
(Reporter)

Updated

4 years ago
Severity: normal → major
OS: All → Gonk (Firefox OS)
Priority: -- → P2
Hardware: All → ARM
(Reporter)

Updated

4 years ago
Severity: major → blocker
blocking-b2g: --- → hd?
(Reporter)

Comment 1

4 years ago
Hi,

We need to evaluate the seriousness of this issue, can you give me a definite answer, when will you modify this issue?

thanks.
fengximing.
(Reporter)

Updated

4 years ago
Priority: P2 → P1

Comment 2

4 years ago
(In reply to lecky from comment #0)
> Steps to reproduce:
> 
> 1, Put a MP3 to the internal_sd card, insert an external_sd card.
> 
> 2, Restart the phone, play music.
> 
> 3, Pull out the external_sd card.

I wonder if the normal users will do step 3 while they are listening to music...

It seems strange to me that the users will actually open the back lid and pull out the sd card
while they are listening to the music, you can imagine this scenario is similar we pull out
the sd card when we are viewing pictures in gallery, although the songs/pictures are all in the
internal storage, also, do the users really know/remember where did they put the playing songs in?

And if we do want the expected behaviour, what will you expected when you press next/previous
and the target song is in the external sd card? skip it because the next song probably in the
internal storage? or stop it because it's not in the internal storage?

So I think the current behaviour is suitable and applicable on all conditions, that's, just stop
the playing song no matter the song is in internal or external storages.

What I proposed is from the POV of a developer, we can still let UX people to decide this.
Rod, can you please give some inputs on this issue? thanks.
Flags: needinfo?(rmacdonald)

Comment 3

4 years ago
The format in comment 2 is bad to read, sorry for that and I am re-posting it:

I wonder if the normal users will do step 3 while they are listening to music...

It seems strange to me that the users will actually open the back lid and pull out the sd card while they are listening to the music, you can imagine this scenario is similar we pull out the sd card when we are viewing pictures in gallery, although the songs/pictures are all in the internal storage, also, do the users really know/remember where did they put the playing songs in?

And if we do want the expected behaviour, what will you expected when you press next/previous and the target song is in the external sd card? skip it because the next song probably in the internal storage? or stop it because it's not in the internal storage?

So I think the current behaviour is suitable and applicable on all conditions, that's, just stop the playing song no matter the song is in internal or external storages.

What I proposed is from the POV of a developer, we can still let UX people to decide this. Rob, can you please give some inputs on this issue? thanks.
(Reporter)

Comment 4

4 years ago
Hi Dominic Kuo,

I don't think so, we should't take a subjective for this issue. 
This problem ocurrs, because it isn't proper that the the process of file mapping handled in the storage,
please follow the steps to look at this issue, I hope you understand this problem, it may lead to the use of files is not normal, such as documents, pictures, music, etc..
For example, the SD card bad, so please see why the file mapping is wrong.
other information please ask Alan.

Thanks.
fengximing.
029-59599479.

Comment 5

4 years ago
Can you please explain every step in detail again? I probably misunderstood but my comment is based what I thought. I won't consider it's subjectively because it's from the POV of a developer, UX will make the final decision.
(Reporter)

Comment 6

4 years ago
Hi Dominic Kuo,
Ok, maybe we have misunderstood.

Steps to reproduce:

1, Put a music file(mp3) to the phone, then insert an external_sd card.

2, Restart the phone and then play music.

3, During the music palying, remove the external_sd card.

you can see the music stop palying.
why? so please use adb to see this process in /mnt/sdcard and /mnt/sdcard2.

Thanks.
fengximing.
029-59599479
(Reporter)

Comment 7

4 years ago
Hi Dominic Kuo,

How is this issue going?
Whether this issue was solved on Helix hd1.1 or Helix 1.2, can you give me an explicit conclusions?


Thanks.

Comment 8

4 years ago
(In reply to lecky from comment #6)
> 1, Put a music file(mp3) to the phone, then insert an external_sd card.
> 
> 2, Restart the phone and then play music.
> 
> 3, During the music palying, remove the external_sd card.
> 
> you can see the music stop palying.
> why? so please use adb to see this process in /mnt/sdcard and /mnt/sdcard2.

Removing external sd card or unmount the internal storage will both trigger the music player stop playing, this is because we want to prevent it from crash, although the playing file might not in the external sd card.

And if we want "not" to stop the playing music because the playing file is not on the external sd card, and what if the playing song ends, then the next song is on external sd card? what's the expected result?
(Reporter)

Comment 9

4 years ago
Hi Dominic Kuo,

(In reply to Dominic Kuo [:dkuo] from comment #8)
Removing external sd card or
> unmount the internal storage will both trigger the music player stop
> playing, this is because we want to prevent it from crash, although the
> playing file might not in the external sd card.

However, it should not be stoped, because it palys the music of internal_sdcard. not external_sdcard.
I noticed that the music is stored internal_sdcard, bug it is mapped to external_sdcard, so if remove music, the palyer stopped, because the file map is not appropriate.
Usually, we think that the music of internal_sdcard is built in the internal_sdcard, the music of external_sdcard is built in the external_sdcard, however this is not it.
So I think this is the mount process question.
the last time I had communication with Alan, I want to know, can you confirm this issue can be modified on Helix hd1.1 or Helix hd1.2?

Thanks.
fengximing.
Hmm. I don't have a helix build stored on my phone.

For FirefoxOS we use a different mapping of internal and external sdcards than what android uses.

In android, the external sdcard is mounted from a directory within the internal sdcard.

For FirefoxOS, we require that the internal and external sdcards each have their own mount point and not overlap.

What does the helix vold.fstab file look like?

We would expect it look something like this:

dev_mount sdcard /mnt/sdcard auto driver-name-here
dev_mount extsdcard /mnt/extsdcard auto driver-name-here
(Reporter)

Comment 11

4 years ago
Yes, in my vold.fstab, it look like this:
dev_mount sdcard /mnt/sdcard 19 driver-name-here
dev_mount extsdcard /mnt/sdcard2 auto driver-name-here 

I use it for FirefoxOS, but the external sdcard and the internal sdcard some files are mapped to the external sdcard.
(Reporter)

Updated

4 years ago
Flags: needinfo?(rmacdonald) → needinfo?(dkuo)
(In reply to lecky from comment #11)
> Yes, in my vold.fstab, it look like this:
> dev_mount sdcard /mnt/sdcard 19 driver-name-here
> dev_mount extsdcard /mnt/sdcard2 auto driver-name-here 
> 
> I use it for FirefoxOS, but the external sdcard and the internal sdcard some
> files are mapped to the external sdcard.

I don't understand what you mean by "mapped".

Can you run the ds-test app (included with eng builds and denoted with a DS icon)? Select Enumerate for the command, sdcard for the storage type, and press DoIt. The results are reported on the screen, and also in logcat (it's probably easiest to extract the results from logcat).
(Reporter)

Updated

4 years ago
Priority: P1 → P2
(Reporter)

Comment 13

4 years ago
HI Beatriz:
could you help us to confirm whether you can accept this issue on V1.1HD?
(Reporter)

Updated

4 years ago
Severity: blocker → normal
blocking-b2g: hd? → ---
(Reporter)

Comment 14

4 years ago
 HI Beatriz:
could you help us to confirm whether you can accept this issue on V1.1HD?
Flags: needinfo?(brg)
Lecky please address dhylands question in comment 12.
Flags: needinfo?(brg) → needinfo?(lecky.wanglei)
(Reporter)

Comment 16

4 years ago
hancheng :
plese handle it.
Flags: needinfo?(lecky.wanglei) → needinfo?(hancheng.b2g)
(Reporter)

Comment 17

4 years ago
(In reply to Dave Hylands [:dhylands] from comment #12)

>I don't understand what you mean by "mapped".

It's a mistake. Just forget it. ^_^

>Can you
> run the ds-test app (included with eng builds and denoted with a DS icon)?
> Select Enumerate for the command, sdcard for the storage type, and press
> DoIt. The results are reported on the screen, and also in logcat (it's
> probably easiest to extract the results from logcat).

I tried this way and checked all the files it enumerated. There isn't any error.

So, this is a feature that "Removing external sd card or unmount the internal storage will both trigger the music player stop playing". As comment 8.
Flags: needinfo?(hancheng.b2g)

Updated

4 years ago
Whiteboard: [fixinmusic2]

Comment 18

2 years ago
Could we test this out with the Z3C to see if it's still an issue? Based on an inspection of the code, this should be ok.
Keywords: qawanted
This issue is not reproducible on Aries with master or 2.5. Following STR, music from internal storage continues to play after external SD card has been removed.

No repro on:
Device: Aries 2.6 Master
BuildID: 20151109152230
Gaia: 23cab7ea0fcecab7689d340baf604e024e88f9a3
Gecko: e1ef2be156de1dad31bb4189a51b178b12b23340
Gonk: a19052e4389c3ae2d8fc3e7a74a475401baacc56
Version: 45.0a1 (2.6) 
Firmware Version: D5803_23.1.A.1.28_NCB.ftf
User Agent: Mozilla/5.0 (Mobile; rv:45.0) Gecko/45.0 Firefox/45.0

Device: Aries 2.5
BuildID: 20151109192627
Gaia: 9f823b3b2902558bad224384e1abddd1bb35d93a
Gecko: 08e3099c9d9a949e6b0b8d11ae0790ed3b02dbe9
Gonk: a19052e4389c3ae2d8fc3e7a74a475401baacc56
Version: 44.0a2 (2.5) 
Firmware Version: D5803_23.1.A.1.28_NCB.ftf
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
You need to log in before you can comment on or make changes to this bug.