I played with ISO parser a bit more today, and made some progress. I made a single 3gp audio recording on my Android device and ISO parser seems to be telling me that it is 5 boxes and 3 tracks, which I don't really understand.
When I print the results of IsoFile.getBoxes() : File Type Box: 3gp4 Media Data Box (length: 1968) Media Data Box (length: 18) Media Data Box (length: 16) Movie Box (length: 1676) When I print IsoFile.getTrack(long trackId) for trackId 1 and onwards until NullPointerException occurs; Track 1: 1 samples Track 2: 1 samples Track 3: 140 samples Also, the following is printed to standard error when I parse the file: Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: iods 0x696f6473 parent is: moov Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: nmhd 0x6e6d6864 parent is: minf Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: mp4s 0x6d703473 parent is: stsd Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: mpod 0x6d706f64 parent is: tref Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: nmhd 0x6e6d6864 parent is: minf Mar 14, 2009 9:08:16 PM com.coremedia.iso.BoxFactory createBox INFO: Unknown box found: mp4s 0x6d703473 parent is: stsd On Mar 13, 10:39 pm, benmccann <[email protected]> wrote: > Thanks Warwick. That's basically what I got from Wikipedia, though > I'm still not sure the advantage a media container provides. It > enables streaming or has some other advantage? > I checked out and built the IsoParser, but can't figure out what to > pass to getTrack(long trackId). I'm not familiar with ISO 14496-13 > and don't see the spec online. I've tried passing 0 or 1 and just get > an empty list back. > > -Ben > > On Mar 13, 7:15 pm, warwickhunter <[email protected]> wrote: > > > Ben, > > > I found some Java code that can parse an mp4 or 3gp file. I am using > > it to extract an AMR audio stream from the file. > > >https://contributions.coremedia.com/isobox4j/wiki/IsoParser > > > Look at IsoFile.getTrack to get the raw AMR samples and then stick an > > AMR header on the front of the data. > > > 3gp is a media container file format. It is a simplified version of > > the mp4 media container file format. The AMR is just a sample stream > > within the 3gp or mp4 container file. > > > Warwick --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---

