| OpenBeOS.ExtractorWriterAPI.ProposedAPI.Writer |
 |
class BWriter
{
public:
BWriter(void);
virtual ~BWriter(void);
// implement per BFileInterface::GetRef
virtual status_t GetStream(const BPositionIO * outStream,
BMimeType * outMimeType) = 0;
// implement per BFileInterface::SetRef
virtual status_t SetStream(const BPositionIO & stream) = 0;
// implement per BFileInterface::GetNextFileFormat
virtual status_t GetNextFileFormat(int32 * cookie,
media_file_format * outFormat) = 0;
// implement per BFileInterface::DisposeFileFormatCookie
virtual void DisposeFileFormatCookie(int32 cookie) = 0;
// implement per BMediaFile::GetFileFormatInfo
status_t GetFileFormatInfo(media_file_format *mfi) const;
// The writer should do any cleanup required. After
// this function returns, the BPositionIO object will be
// closed and deleted by the system (not you)
virtual status_t Close(void);
// the writer should provide several basic parameters
// through this interface, such as B_TRACK_COUNT, and B_DURATION
// note: these parameters are likely changing if the
// file is still being actively written to
// see also BMediaFile::GetParameterValue
virtual status_t GetParameterValue(int32 id, const void * value,
size_t * size) = 0;
// the writer supplies parameters for the
// user to configure, such as bitrate, quantization, etc.
// see also BMediaFile::SetParameterValue
virtual status_t SetParameterValue(int32 id, const void * value,
size_t size);
// the writer may return a BParameterWeb for browsing
// or configuring the file format's parameters. returns
// NULL if the writer doesn't support this.
// see also BMediaFile::Web
virtual BParameterWeb * Web(void);
...
}
|
|
|