📄 mediaplayerplugininterface.cpp
字号:
/*! \fn virtual long MediaPlayerDecoder::videoGetFrame( int stream ) = 0 This function retrieves the decoders frame postion in the given \a stream. The frame position can change due to videoReadScaledFrame() being called or if supported, from videoSetFrame() being called.*//*! \fn virtual bool MediaPlayerDecoder::videoReadFrame( unsigned char **, int, int, int, int, ColorFormat, int ) = 0 This function is deprecated. Please use videoReadScaledFrame() instead.*//*! \fn virtual bool MediaPlayerDecoder::videoReadYUVFrame( char *, char *, char *, int, int, int, int, int ) = 0 This function is deprecated. Please use videoReadScaledFrame() instead. (Future decoder interfaces may provide a similar function to this in the future).*//*! \fn virtual bool MediaPlayerDecoder::videoReadScaledFrame( unsigned char **output_rows, int in_x, int in_y, int in_w, int in_h, int out_w, int out_h, ColorFormat color_model, int stream ) = 0 This function decodes the current video frame from the given \a stream in to the buffer at \a output_rows. The \a in_x and \a in_y parameters specify where to decode from and the \a in_w and \a in_h parameters specify the width and height of the input stream to decode. The \a out_w and \a out_h parameters specify the width and height to scale the input to. The \a color_model specifies the format of the bits for color in the output_rows. A typical value for the color_model is RGB565. This function can be used (as is done in the Qtopia MediaPlayer) to decode video directly to a frame buffer device using the QDirectPainter class or directly to a QImage. In the case of decoding to a QImage, the QImage::jumpTable() of the QImage is provided as the first parameter to this function. In the QDirectPainter case, a jump table for the frame buffer's scanlines needs to be constructed, but this is only required to be done once, and could be reused by the caller for every subsequent call to this function.*//*! \fn virtual double MediaPlayerDecoder::getTime() = 0 This function is for profiling decoders. It returns the last decoded timestamp from the media stream. Please refer to getPlayTime() for a discussion on how best to query the elapsed time.*//*! \fn virtual bool MediaPlayerDecoder::setSMP( int CPUs ) = 0 This function is used as a hint to the decoder for how many decoding threads it should consider using based on the provided number of \a CPUs. (Currently the Qtopia MediaPlayer doesn't use this function.)*//*! \fn virtual bool MediaPlayerDecoder::setMMX( bool useMMX ) = 0 This function is used as a hint to the decoder to use MMX specific optimizations if being used on an x86 processor and \a useMMX is true. On other binary incompatible processors, this function is interpreted to mean use the MMX equivelant optimizations for that processor family. For example on MIPS, this function translates to using MMI optimizations. (Currently the Qtopia MediaPlayer doesn't use this function.)*//*! \fn virtual bool MediaPlayerDecoder::supportsAudio() = 0 This function returns the audio capability of the decoder. If audio can be decoded, this function returns TRUE, otherwise it returns FALSE. If audio is not supported, all virtual audio functions are still provided, however the return values for those functions will always be FALSE or 0 as applicable.*//*! \fn virtual bool MediaPlayerDecoder::supportsVideo() = 0 This function returns the video capability of the decoder. If video can be decoded, this function returns TRUE, otherwise it returns FALSE. If video is not supported, all virtual video functions are still provided, however the return values for those functions will always be FALSE or 0 as applicable.*//*! \fn virtual bool MediaPlayerDecoder::supportsYUV() = 0 This function is deprecated.*//*! \fn virtual bool MediaPlayerDecoder::supportsSMP() = 0 This function is deprecated.*//*! \fn virtual bool MediaPlayerDecoder::supportsMMX() = 0 This function is deprecated.*//*! \fn virtual bool MediaPlayerDecoder::supportsStereo() = 0 This function is deprecated.*//*! \fn virtual bool MediaPlayerDecoder::supportsScaling() = 0 This function is deprecated.*//*! \fn virtual long MediaPlayerDecoder::getPlayTime() = 0 This function is deprecated. The most accurate way to get the elapsed play time for files which contain audio is to use the audioGetSample() function and derive the elapsed time from the sample rate, or for files without audio is to use videoGetFrame() and derive the elapsed time from the frame rate.*//*! \class MediaPlayerDecoder_1_6 <qtopia/mediaplayerplugininterface.h> \brief The MediaPlayerDecoder_1_6 class provides an extension to the MediaPlayerDecoder class for Qtopia MediaPlayer decoder plugins. \ingroup qtopiaemb*//*! \fn virtual bool MediaPlayerDecoder_1_6::supportsStreaming() = 0 Returns TRUE if the decoder supports streaming.*//*! \fn virtual bool MediaPlayerDecoder_1_6::canStreamURL( const QUrl& url, const QString& mimetype ) = 0 Returns TRUE if the decoder can support the given \a mimetype with the \a url provided.*//*! \fn virtual bool MediaPlayerDecoder_1_6::openURL( const QUrl& url, const QString& mimetype ) = 0 Opens the \a url of given \a mimetype. Typically this information is provided by a web server to a web browser which could pass this on directly to the plugin or indirectly to the Qtopia Media Player through a QCop signal.*//*! \fn virtual bool MediaPlayerDecoder_1_6::streamed() = 0 Returns TRUE if the decoder is playing a streamed file opened using openURL(), or FALSE if the file was opened using the MediaPlayerDecoder::open() function used for files.*//*! \fn virtual bool MediaPlayerDecoder_1_6::syncAvailable() = 0 Returns TRUE if the decoder supports for the given stream syncing the audio and video together with the sync() function.*//*! \fn virtual bool MediaPlayerDecoder_1_6::sync() = 0 Sync up the video to match the timestamp of where the audio currently is playing. If the video is behind, this will skip forward to the correctly matching frame.*//*! \fn virtual bool MediaPlayerDecoder_1_6::seekAvailable() = 0 Returns TRUE if the stream is seekable or not. For streamed media, it is possible that seeking may not be able to be implemented in the plugin therefore the plugin returns FALSE, otherwise if it can, it returns TRUE.*//*! \fn virtual bool MediaPlayerDecoder_1_6::seek( long pos ) = 0 Seeks to \a pos byte offset from the beginning of the stream.*//*! \fn virtual bool MediaPlayerDecoder_1_6::tellAvailable() = 0 Returns TRUE if the decoder can support the tell() function for the given stream.*//*! \fn virtual long MediaPlayerDecoder_1_6::tell() = 0 Returns the current byte offset from the beginning of the stream.*//*! \fn virtual bool MediaPlayerDecoder_1_6::lengthAvailable() = 0 Returns TRUE if the decoder can support the length() function for the given stream.*//*! \fn virtual long MediaPlayerDecoder_1_6::length() = 0 Returns the length in bytes of the stream. For streamed data, the protocol may not always return how long the stream will be, therefore it should be assumed that this may not always be available with all decoder plugins.*//*! \fn virtual bool MediaPlayerDecoder_1_6::totalTimeAvailable() = 0 Returns TRUE if the decoder can support the totalTime() function for the given stream.*//*! \fn virtual long MediaPlayerDecoder_1_6::totalTime() = 0 Returns the total time in milliseconds of the stream. For some file formats, the total play time may not be easily obtainable. Some formats use VBR (variable bit rate) encoding without timestamps making it uncertain as to exactly how long it takes to play the file without actually decoding or indexing it.*//*! \fn virtual bool MediaPlayerDecoder_1_6::currentTimeAvailable() = 0 Returns TRUE if the decoder can support the currentTime() function for the given stream.*//*! \fn virtual long MediaPlayerDecoder_1_6::currentTime() = 0 Returns the current millisecond being played in the stream. The accuracy should only be considered good enough for the use in the display of the current play time and not used for the precise timing of syncing playback. Not all formats contain timestamps, therefore after seeking, not all formats and decoders will be able to support this function.*//*! \class MediaPlayerPluginInterface <qtopia/mediaplayerplugininterface.h> \brief The MediaPlayerPluginInterface class is used to access MediaPlayerDecoder objects.*//*! \fn virtual MediaPlayerDecoder *MediaPlayerPluginInterface::decoder() = 0 This function returns a MediaPlayerDecoder object (or a MediaPlayerDecoder_1_6 extended MediaPlayerDecoder object if this interface returns that it supports the 1_6 API extensions).*//*! \fn virtual MediaPlayerEncoder *MediaPlayerPluginInterface::encoder() = 0 This function returns a MediaPlayerEncoder object, however the MediaPlayerEncoder interface is yet to be defined. Please refer to the documentation on the MediaRecoderEncoder documentation which provides an audio encoder API.*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -