Class: kodi::addon::CInstancePVRClient
Kodi features powerful Live TV and video recording (DVR/PVR) abilities using a very flexible distributed application structure. That is, by leveraging other existing third-party PVR backend applications or DVR devices that specialize in receiving television signals and also support the same type of client–server model which Kodi uses, (following a frontend-backend design principle for separation of concerns), these PVR features in Kodi allow you to watch Live TV, listen to radio, view an EPG TV-Guide and schedule recordings, and also enables many other TV related features, all using Kodi as your primary interface once the initial pairing connection and configuration have been done.
The use of the PVR is based on the CInstancePVRClient.
Include the header #include <kodi/addon-instance/PVR.h> to use this class.
Here is an example of what the addon.xml.in
would look like for an PVR addon:
At <extension point="kodi.pvrclient" ...>
the basic instance definition is declared, this is intended to identify the addon as an PVR and to see its supported types:
Name | Description |
---|---|
point | The identification of the addon instance to inputstream is mandatory kodi.pvrclient . In addition, the instance declared in the first <extension ... /> is also the main type of addon. |
library_@PLATFORM@ | The runtime library used for the addon. This is usually declared by cmake and correctly displayed in the translated addon.xml . |
addon.xml
, see also https://kodi.wiki/view/Addon.xml.Example:
The destruction of the example class CMyPVRClient
is called from Kodi's header. Manually deleting the add-on instance is not required.
Modules | |
Definitions, structures and enumerators | |
PVR client add-on instance definition values All PVR functions associated data structures. | |
1. Basic functions | |
Functions to manage the addon and get basic information about it These are e.g. GetCapabilities to know supported groups at this addon or the others to get information about the source of the PVR stream. | |
2. Channels (required) | |
Functions to get available TV or Radio channels These are mandatory functions for using this addon to get the available channels. | |
3. Channel Groups (optional) | |
Bring in this functions if you have set supportsChannelGroups to true This is used to divide available addon channels into groups, which can then be selected by the user. | |
4. Channel edit (optional) | |
Bring in this functions if you have set supportsChannelSettings to true or for OpenDialogChannelScan() set supportsChannelScan to true The support of this is a pure option and not mandatory. | |
4. EPG methods (optional) | |
PVR EPG methods These C ++ class functions of are intended for processing EPG information and for giving it to Kodi. | |
5. Recordings (optional) | |
PVR recording methods To transfer available recordings of the PVR backend and to allow possible playback. | |
6. Timers (optional) | |
PVR timer methods For editing and displaying timed work, such as video recording. | |
7. Power management events (optional) | |
Used to notify the pvr addon for power management events Used to allow any energy savings. | |
8. Inputstream | |
PVR Inputstream This includes functions that are used in the PVR inputstream. | |