Closed Bug 889763 Opened 7 years ago Closed 7 years ago

[MMS] When we send a picture+amr audio file from android device,only image is received in FFOS device

Categories

(Firefox OS Graveyard :: Gaia::SMS, defect, P1)

ARM
Gonk (Firefox OS)

Tracking

(blocking-b2g:leo+, b2g18 fixed, b2g-v1.1hd fixed)

RESOLVED FIXED
1.1 QE4 (15jul)
blocking-b2g leo+
Tracking Status
b2g18 --- fixed
b2g-v1.1hd --- fixed

People

(Reporter: leo.bugzilla.gaia, Assigned: steveck)

Details

(Whiteboard: [TD-56096][u=commsapps-user c=messaging p=1], TaipeiMMS, [LeoVB+])

Attachments

(1 file)

1. Title: When we send a picture+amr audio file from android device,only image is received in FFOS device
2. Precondition: Able to send and receive an MMS messages
3. Tester's Action: 1) Send the MMS from android device(first add JPG pic and next add AMR audio - recorded using VoiceRecorder) 
                2) Recieve MMS on FFOS device, check the content
4. Detailed Symptom (ENG.) : The audio attachement is not received(only image is present).
5. Expected: The MMS should receive both picture and audio file.
6. Reproducibility: Y
1) Frequency Rate : 100%
7. Gaia Master/v1-train: Reproduced on v1-train
8. Gaia Revision: f2d6ed54a236e6e3b94f0abad9f0dacb8a1cc7b3
9. Personal email id: sasikala.paruchuri8@gmail.com
blocking-b2g: --- → leo+
Whiteboard: [TD-56096]
Target Milestone: --- → 1.1 QE4 (15jul)
kaze will investigate why we don't see the attachment.
Assignee: nobody → kaze
Whiteboard: [TD-56096] → [TD-56096][u=commsapps-user c=contacts p=1]
Whiteboard: [TD-56096][u=commsapps-user c=contacts p=1] → [TD-56096][u=commsapps-user c=messaging p=1]
Priority: -- → P1
Hi Kaze,

I just heard from Kaze in the COMM meeting there seems to be some MIME issues in the Gecko part? Could you please share your investigations? Thanks!
Hi Kaze,
Log from MmsService, looks like in MmsService, Gecko get the right part. In smil, cid:_external_audio_media_43$hangout_dingtone.m4a is matched the content id in part's header.

07-09 09:57:46.280 I/Gecko   (  108): -@- MmsService: ix = 0 part = {"index":0,"headers":{"content-type":{"media":"application/smil","params":{"name":"smil.xml","charset":{"charset":"utf-8"}}},"content-length":441,"content-id":"<smil>","content-location":"smil.xml"},"content":"<smil><head><layout><root-layout width=\"240\" height=\"320\"/><region id=\"Image\" left=\"0\" top=\"0\" width=\"240\" height=\"220\" fit=\"meet\"/><region id=\"Text\" left=\"0\" top=\"220\" width=\"240\" height=\"100\" fit=\"meet\"/></layout></head><body><par dur=\"1045ms\"><img src=\"cid:_external_images_media_54$resources320x480FXOSOrangeMountains.png\" region=\"Image\"/><audio src=\"cid:_external_audio_media_43$hangout_dingtone.m4a\" dur=\"1045ms\"/></par></body></smil>\r"}
07-09 09:57:46.280 I/Gecko   (  108): -@- MmsService: ix = 1 part = {"index":1,"headers":{"content-type":{"media":"image/png","params":{"name":"resources320x480FXOSOrangeMountains.png"}},"content-length":15206,"content-id":"<_external_images_media_54$resources320x480FXOSOrangeMountains.png>","content-location":"resources320x480FXOSOrangeMountains.png"},"content":{}}
07-09 09:57:46.280 I/Gecko   (  108): -@- MmsService: ix = 2 part = {"index":2,"headers":{"content-type":{"media":"audio/mp4","params":{"name":"hangout_dingtone.m4a"}},"content-length":17294,"content-id":"<_external_audio_media_43$hangout_dingtone.m4a>","content-location":"hangout_dingtone.m4a"},"content":{}}
Thanks a lot !

Kaze, can you try to reproduce using another audio file ? Might be easier to work on...
This is log for amr. Log for mp4 is in comment 3.
"content-id":"<_external_audio_media_57$Voice0001.amr>" is the same as src=\"cid:_external_audio_media_57$Voice0001.amr\"

07-09 17:32:37.763 I/Gecko   (  108): -@- MmsService: ix = 0, part = {"index":0,"headers":{"content-type":{"media":"application/smil","params":{"name":"smil.xml"}},"content-length":433,"content-id":"<smil>","content-location":"smil.xml"},"content":"<smil><head><layout><root-layout width=\"240\" height=\"320\"/><region id=\"Image\" left=\"0\" top=\"0\" width=\"240\" height=\"220\" fit=\"meet\"/><region id=\"Text\" left=\"0\" top=\"220\" width=\"240\" height=\"100\" fit=\"meet\"/></layout></head><body><par dur=\"5380ms\"><audio src=\"cid:_external_audio_media_57$Voice0001.amr\" dur=\"5380ms\"/><img src=\"cid:_external_images_media_54$resources320x480FXOSOrangeMountains.png\" region=\"Image\"/></par></body></smil>"}
07-09 17:32:37.763 I/Gecko   (  108): -@- MmsService: ix = 1, part = {"index":1,"headers":{"content-type":{"media":"audio/amr","params":{"name":"Voice0001.amr"}},"content-length":8614,"content-id":"<_external_audio_media_57$Voice0001.amr>","content-location":"Voice0001.amr"},"content":{}}
07-09 17:32:37.763 I/Gecko   (  108): -@- MmsService: ix = 2, part = {"index":2,"headers":{"content-type":{"media":"image/png","params":{"name":"resources320x480FXOSOrangeMountains.png"}},"content-length":15206,"content-id":"<_external_images_media_54$resources320x480FXOSOrangeMountains.png>","content-location":"resources320x480FXOSOrangeMountains.png"},"content":{}}
Whiteboard: [TD-56096][u=commsapps-user c=messaging p=1] → [TD-56096][u=commsapps-user c=messaging p=1], TaipeiMMS
Steve, since I saw that you work on other mime types issues related to amr/3gp, maybe you can take this bug as well. I gave Kaze other bugs so I think his hands are quite full now; kaze do you agree ?
Flags: needinfo?(schung)
Flags: needinfo?(kaze)
Flags: needinfo?
Flags: needinfo?
The problem is in the smil parser, we only consider the one media in a slide, but it actually has 2 media in this case (image + audio as background music could exist in one slide). Since we don't support slideshow display now, We can simply separate this slide into 2 slides for display in the message bubble.
Flags: needinfo?(schung)
Hi Kaze/Julien, if you have no cycle for this, I can this one and dispatch other bugs to available developers in Taipei, thanks.
Attached file Link to github
Hi Corey, it's a patch for smil parser fixing. I will set reviewer when I add the test case for it. Thanks.
Attachment #773895 - Flags: feedback?(gnarf37)
assigning to Steve
Assignee: kaze → schung
Hi Steve,
We have tested the patch.
Able to receive both image and audio files.
Thanks,
Comment on attachment 773895 [details]
Link to github

Steve - I think we might prefer going with an approach like this: https://github.com/steveck-chung/gaia/pull/5 - check it out and tell me what you think.
Attachment #773895 - Flags: feedback?(gnarf37) → feedback-
Comment on attachment 773895 [details]
Link to github

Hi Corey, I applied your suggestion and made some changes(small fix and test case). Please have a look again, thanks.
Attachment #773895 - Flags: feedback- → review?(gnarf37)
Comment on attachment 773895 [details]
Link to github

r=me - this looks great
Attachment #773895 - Flags: review?(gnarf37) → review+
v1.1.0hd: c55fb0020c853dfedcd258c0fb400b82fbd24d25
Whiteboard: [TD-56096][u=commsapps-user c=messaging p=1], TaipeiMMS → [TD-56096][u=commsapps-user c=messaging p=1], TaipeiMMS, [LeoVB+]
Flags: needinfo?(kaze)
You need to log in before you can comment on or make changes to this bug.