Closed
      
        Bug 1175058
      
      
        Opened 10 years ago
          Closed 10 years ago
      
        
    
  
TrackBuffersManager will error on some fragmented input.   
    Categories
(Core :: Audio/Video, defect)
        Core
          
        
        
      
        
    
        Audio/Video
          
        
        
      
        
    Tracking
()
        RESOLVED
        FIXED
        
    
  
        
            mozilla41
        
    
  
| Tracking | Status | |
|---|---|---|
| firefox41 | --- | fixed | 
People
(Reporter: jya, Assigned: jya)
References
()
Details
Attachments
(3 files, 1 obsolete file)
| 2.84 KB,
          patch         | cajbir
:
              
              review+ | Details | Diff | Splinter Review | 
| 1.18 KB,
          patch         | ajones
:
              
              review+ | Details | Diff | Splinter Review | 
| 7.28 KB,
          patch         | ajones
:
              
              review+ | Details | Diff | Splinter Review | 
Example of such problem:
http://people.mozilla.org/~jyavenard/tests/mse_mp4/errorappend.html
Something not handled properly by the trackbuffers manager demuxer...
| Assignee | ||
| Updated•10 years ago
           | 
Assignee: nobody → jyavenard
| Assignee | ||
| Comment 1•10 years ago
           | ||
I thought you would love to review one last patch :)
        Attachment #8622952 -
        Flags: review?(cajbir.bugzilla)
| Assignee | ||
| Comment 2•10 years ago
           | ||
Comment on attachment 8622952 [details] [diff] [review]
P1. Properly handle partial init and media header.
Actually this works because of a bug in the MP4 ContainerParser.
        Attachment #8622952 -
        Attachment is obsolete: true
        Attachment #8622952 -
        Flags: review?(cajbir.bugzilla)
| Assignee | ||
| Comment 3•10 years ago
           | ||
        Attachment #8623042 -
        Flags: review?(cajbir.bugzilla)
| Assignee | ||
| Comment 4•10 years ago
           | ||
This prevented being able to read the init segment back from the MP4ContainerParser
should init segment had been added in multiple blocks.
        Attachment #8623043 -
        Flags: review?(ajones)
| Updated•10 years ago
           | 
        Attachment #8623042 -
        Flags: review?(cajbir.bugzilla) → review+
|   | ||
| Updated•10 years ago
           | 
        Attachment #8623043 -
        Flags: review?(ajones) → review+
| Assignee | ||
| Comment 5•10 years ago
           | ||
This is something we should have done a long time ago.
        Attachment #8623421 -
        Flags: review?(ajones)
|   | ||
| Comment 6•10 years ago
           | ||
Comment on attachment 8623421 [details] [diff] [review]
P3. Properly search for the required MP4 Atoms rather than make assumptions.
Review of attachment 8623421 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/media/mediasource/ContainerParser.cpp
@@ +268,5 @@
> +      uint64_t size = reader.ReadU32();
> +      const uint8_t* typec = reader.Peek(4);
> +      uint32_t type = reader.ReadU32();
> +      MSE_DEBUGV(MP4ContainerParser ,"Checking atom:'%c%c%c%c'",
> +                typec[0], typec[1], typec[2], typec[3]);
This is nasty. We need to find a better way to do it.
        Attachment #8623421 -
        Flags: review?(ajones) → review+
| Assignee | ||
| Comment 7•10 years ago
           | ||
What is? Displaying the type name?
How is that nasty? It's encoded in big endian. No much more elegant ways to read 4 bytes
| Comment 9•10 years ago
           | ||
https://hg.mozilla.org/mozilla-central/rev/97ace5e97d7b
https://hg.mozilla.org/mozilla-central/rev/993db9bb3099
https://hg.mozilla.org/mozilla-central/rev/d7aad45010b6
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
          You need to log in
          before you can comment on or make changes to this bug.
        
Description
•