Since the API for R5 extractors and writers was not released current practice information is limited to informal usage and non-authoritative comments in public forums. This includes nonspecific comments by representatives of Be, Inc., about particular behaviors. For example, responses to emails/web posts about bugs that are exhibited by the current extractor.
Anyone who has used divx on BeOS knows that there is an issue with seeking in them, with respect to the audio. When the video is seeked in MediaPlayer, the audio resets to the beginning. This is due to a bug in the avi.extractor. The mpeg1.extractor also exhibits a different seeking bug. After seeking, the audio will be behind the video (IIRC). This is especially evident in long mpeg files (80 minutes) but is also evident in some shorter files.
Another known drawback of the mpeg1.extractor is that it reads in the file before playing. This is done while building the seek index, apparently.
From the above, it's clear that the extractors have something to do with seeking support. So here are some things that the current extractors support:
- Sniffing - Determining whether or not a file is of the type supported by this extractor.
- Seeking - Finding the position within each stream and/or passing the position or seek reference to each codec.
- Reading tracks from a file
- Getting information - Reporting information from the container, such as copyright, number of tracks.
Here are some things that the current writers support:
- Writing header information - Writing information to the container, such as copyright, number of tracks.
- Writing tracks to a file - Writing encoded or raw tracks to a file
There are currently these extractors bundled with a stock BeOS:
- aiff.extractor
- au.extractor
- avi.extractor
- avr.extractor
- dv.extractor
- mpeg1.extractor
- quicktime.extractor
- wav.extractor