|
Kodi Docs 20.0
Kodi is an open source media player and entertainment hub.
|
#include <AddonVideoCodec.h>
Public Member Functions | |
| CAddonVideoCodec (CProcessInfo &processInfo, ADDON::AddonInfoPtr &addonInfo, KODI_HANDLE parentInstance) | |
| ~CAddonVideoCodec () override | |
| bool | Open (CDVDStreamInfo &hints, CDVDCodecOptions &options) override |
| bool | Reconfigure (CDVDStreamInfo &hints) override |
| bool | AddData (const DemuxPacket &packet) override |
| void | Reset () override |
| VCReturn | GetPicture (VideoPicture *pVideoPicture) override |
| const char * | GetName () override |
| void | SetCodecControl (int flags) override |
Public Member Functions inherited from CDVDVideoCodec | |
| CDVDVideoCodec (CProcessInfo &processInfo) | |
| virtual | ~CDVDVideoCodec ()=default |
| virtual void | SetSpeed (int iSpeed) |
| virtual unsigned | GetConvergeCount () |
| virtual unsigned | GetAllowedReferences () |
| virtual bool | GetCodecStats (double &pts, int &droppedFrames, int &skippedPics) |
| virtual void | Reopen () |
Public Member Functions inherited from ADDON::IAddonInstanceHandler | |
| IAddonInstanceHandler (ADDON_TYPE type, const AddonInfoPtr &addonInfo, KODI_HANDLE parentInstance=nullptr, const std::string &instanceID="") | |
| virtual | ~IAddonInstanceHandler () |
| ADDON_TYPE | UsedType () const |
| const std::string & | InstanceID () |
| std::string | ID () const |
| std::string | Name () const |
| std::string | Author () const |
| std::string | Icon () const |
| std::string | Path () const |
| std::string | Profile () const |
| AddonVersion | Version () const |
| ADDON_STATUS | CreateInstance (KODI_HANDLE instance) |
| void | DestroyInstance () |
| const AddonDllPtr & | Addon () const |
| AddonInfoPtr | GetAddonInfo () const |
| virtual void | OnPreInstall () |
| virtual void | OnPostInstall (bool update, bool modal) |
| virtual void | OnPreUnInstall () |
| virtual void | OnPostUnInstall () |
Additional Inherited Members | |
Public Types inherited from CDVDVideoCodec | |
| enum | VCReturn { VC_NONE = 0 , VC_ERROR , VC_FATAL , VC_BUFFER , VC_PICTURE , VC_FLUSHED , VC_NOBUFFER , VC_REOPEN , VC_EOF } |
Protected Attributes inherited from CDVDVideoCodec | |
| CProcessInfo & | m_processInfo |
| CAddonVideoCodec::CAddonVideoCodec | ( | CProcessInfo & | processInfo, |
| ADDON::AddonInfoPtr & | addonInfo, | ||
| KODI_HANDLE | parentInstance | ||
| ) |
|
override |
|
overridevirtual |
add data, decoder has to consume the entire packet returns true if the packet was consumed or if resubmitting it is useless
Implements CDVDVideoCodec.
|
overridevirtual |
should return codecs name
Implements CDVDVideoCodec.
|
overridevirtual |
GetPicture controls decoding. Player calls it on every cycle it can signal a picture, request a buffer, or return none, if nothing applies the data is valid until the next GetPicture return VC_PICTURE
Implements CDVDVideoCodec.
|
overridevirtual |
Open the decoder, returns true on success Decoders not capable of running multiple instances should return false in case there is already a instance open
Implements CDVDVideoCodec.
|
overridevirtual |
Reconfigure the decoder, returns true on success Decoders not capable of running multiple instances may be capable of reconfiguring the running instance. If Reconfigure returns false, player will close / open the decoder
Reimplemented from CDVDVideoCodec.
|
overridevirtual |
Reset the decoder. Should be the same as calling Dispose and Open after each other
Implements CDVDVideoCodec.
Codec can be informed by player with the following flags:
DVD_CODEC_CTRL_NO_POSTPROC : if speed is not normal the codec can switch off postprocessing and de-interlacing
DVD_CODEC_CTRL_HURRY : codecs may do postprocessing and de-interlacing. If video buffers in RenderManager are about to run dry, this is signaled to codec. Codec can wait for post-proc to be finished instead of returning empty and getting another packet.
DVD_CODEC_CTRL_DRAIN : instruct decoder to deliver last pictures without requesting new packets
DVD_CODEC_CTRL_DROP : this packet is going to be dropped. decoder is free to use it for decoding
Reimplemented from CDVDVideoCodec.