I've figured out how to extract the AMR audio from the 3GP file: http://www.benmccann.com/dev-blog/extracting-amr-audio-from-android-3gp-files/
On Mar 14, 9:16 pm, benmccann <[email protected]> wrote: > 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 -~----------~----~----~----~------~----~------~--~---

