diff options
| author | manuel <manuel@mausz.at> | 2016-05-01 18:06:14 +0200 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2016-05-01 18:06:14 +0200 |
| commit | 5823b05feb29a59510c32a9c28ca18b50b9b6399 (patch) | |
| tree | ac1603a592af9415b722b2669e04e417bd13c45c /xbmc | |
| parent | 88de33e1836c646ccf594ef162c258d1210fd24e (diff) | |
| download | kodi-pvr-build-5823b05feb29a59510c32a9c28ca18b50b9b6399.tar.gz kodi-pvr-build-5823b05feb29a59510c32a9c28ca18b50b9b6399.tar.bz2 kodi-pvr-build-5823b05feb29a59510c32a9c28ca18b50b9b6399.zip | |
sync with upstream
Diffstat (limited to 'xbmc')
9 files changed, 56 insertions, 10 deletions
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_dll.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_dll.h index 6ecf566..bb9a2d4 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_dll.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_dll.h | |||
| @@ -139,6 +139,11 @@ extern "C" | |||
| 139 | */ | 139 | */ |
| 140 | void DemuxSetSpeed(int speed); | 140 | void DemuxSetSpeed(int speed); |
| 141 | 141 | ||
| 142 | /*! | ||
| 143 | * Sets desired width / height | ||
| 144 | * @param width / hight | ||
| 145 | */ | ||
| 146 | void SetVideoResolution(int width, int height); | ||
| 142 | 147 | ||
| 143 | /*! | 148 | /*! |
| 144 | * Totel time in ms | 149 | * Totel time in ms |
| @@ -238,6 +243,7 @@ extern "C" | |||
| 238 | pClient->DemuxRead = DemuxRead; | 243 | pClient->DemuxRead = DemuxRead; |
| 239 | pClient->DemuxSeekTime = DemuxSeekTime; | 244 | pClient->DemuxSeekTime = DemuxSeekTime; |
| 240 | pClient->DemuxSetSpeed = DemuxSetSpeed; | 245 | pClient->DemuxSetSpeed = DemuxSetSpeed; |
| 246 | pClient->SetVideoResolution = SetVideoResolution; | ||
| 241 | 247 | ||
| 242 | pClient->GetTotalTime = GetTotalTime; | 248 | pClient->GetTotalTime = GetTotalTime; |
| 243 | pClient->GetTime = GetTime; | 249 | pClient->GetTime = GetTime; |
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_types.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_types.h index 0560708..3a2e2da 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_types.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_inputstream_types.h | |||
| @@ -69,6 +69,7 @@ extern "C" { | |||
| 69 | } m_ListItemProperties[MAX_INFO_COUNT]; | 69 | } m_ListItemProperties[MAX_INFO_COUNT]; |
| 70 | 70 | ||
| 71 | const char *m_libFolder; | 71 | const char *m_libFolder; |
| 72 | const char *m_profileFolder; | ||
| 72 | } INPUTSTREAM; | 73 | } INPUTSTREAM; |
| 73 | 74 | ||
| 74 | /*! | 75 | /*! |
| @@ -139,6 +140,7 @@ extern "C" { | |||
| 139 | DemuxPacket* (__cdecl* DemuxRead)(void); | 140 | DemuxPacket* (__cdecl* DemuxRead)(void); |
| 140 | bool (__cdecl* DemuxSeekTime)(int, bool, double*); | 141 | bool (__cdecl* DemuxSeekTime)(int, bool, double*); |
| 141 | void (__cdecl* DemuxSetSpeed)(int); | 142 | void (__cdecl* DemuxSetSpeed)(int); |
| 143 | void (__cdecl* SetVideoResolution)(int, int); | ||
| 142 | 144 | ||
| 143 | // IDisplayTime | 145 | // IDisplayTime |
| 144 | int (__cdecl* GetTotalTime)(void); | 146 | int (__cdecl* GetTotalTime)(void); |
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_addon.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_addon.h index b32ad86..ddeb1db 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_addon.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_addon.h | |||
| @@ -179,6 +179,10 @@ namespace ADDON | |||
| 179 | dlsym(m_libXBMC_addon, "XBMC_get_setting"); | 179 | dlsym(m_libXBMC_addon, "XBMC_get_setting"); |
| 180 | if (XBMC_get_setting == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } | 180 | if (XBMC_get_setting == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } |
| 181 | 181 | ||
| 182 | XBMC_translate_special = (char* (*)(void* HANDLE, void* CB, const char* source)) | ||
| 183 | dlsym(m_libXBMC_addon, "XBMC_translate_special"); | ||
| 184 | if (XBMC_translate_special == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } | ||
| 185 | |||
| 182 | XBMC_queue_notification = (void (*)(void* HANDLE, void* CB, const queue_msg_t loglevel, const char *msg)) | 186 | XBMC_queue_notification = (void (*)(void* HANDLE, void* CB, const queue_msg_t loglevel, const char *msg)) |
| 183 | dlsym(m_libXBMC_addon, "XBMC_queue_notification"); | 187 | dlsym(m_libXBMC_addon, "XBMC_queue_notification"); |
| 184 | if (XBMC_queue_notification == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } | 188 | if (XBMC_queue_notification == NULL) { fprintf(stderr, "Unable to assign function %s\n", dlerror()); return false; } |
| @@ -334,6 +338,16 @@ namespace ADDON | |||
| 334 | } | 338 | } |
| 335 | 339 | ||
| 336 | /*! | 340 | /*! |
| 341 | * @brief Translates a special protocol folder. | ||
| 342 | * @param source The file / folder to translate. | ||
| 343 | * @return The string translated to resolved path. Must be freed by calling FreeString() when done. | ||
| 344 | */ | ||
| 345 | char *TranslateSpecialProtocol(const char *source) | ||
| 346 | { | ||
| 347 | return XBMC_translate_special(m_Handle, m_Callbacks, source); | ||
| 348 | } | ||
| 349 | |||
| 350 | /*! | ||
| 337 | * @brief Queue a notification in the GUI. | 351 | * @brief Queue a notification in the GUI. |
| 338 | * @param type The message type. | 352 | * @param type The message type. |
| 339 | * @param format The format of the message to pass to display in XBMC. | 353 | * @param format The format of the message to pass to display in XBMC. |
| @@ -671,6 +685,7 @@ namespace ADDON | |||
| 671 | void (*XBMC_unregister_me)(void *HANDLE, void* CB); | 685 | void (*XBMC_unregister_me)(void *HANDLE, void* CB); |
| 672 | void (*XBMC_log)(void *HANDLE, void* CB, const addon_log_t loglevel, const char *msg); | 686 | void (*XBMC_log)(void *HANDLE, void* CB, const addon_log_t loglevel, const char *msg); |
| 673 | bool (*XBMC_get_setting)(void *HANDLE, void* CB, const char* settingName, void *settingValue); | 687 | bool (*XBMC_get_setting)(void *HANDLE, void* CB, const char* settingName, void *settingValue); |
| 688 | char*(*XBMC_translate_special)(void *HANDLE, void* CB, const char* source); | ||
| 674 | void (*XBMC_queue_notification)(void *HANDLE, void* CB, const queue_msg_t type, const char *msg); | 689 | void (*XBMC_queue_notification)(void *HANDLE, void* CB, const queue_msg_t type, const char *msg); |
| 675 | bool (*XBMC_wake_on_lan)(void *HANDLE, void* CB, const char* mac); | 690 | bool (*XBMC_wake_on_lan)(void *HANDLE, void* CB, const char* mac); |
| 676 | char* (*XBMC_unknown_to_utf8)(void *HANDLE, void* CB, const char* str); | 691 | char* (*XBMC_unknown_to_utf8)(void *HANDLE, void* CB, const char* str); |
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_pvr.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_pvr.h index 3e3d479..700f912 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_pvr.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/libXBMC_pvr.h | |||
| @@ -35,7 +35,9 @@ | |||
| 35 | #endif | 35 | #endif |
| 36 | 36 | ||
| 37 | #define DVD_TIME_BASE 1000000 | 37 | #define DVD_TIME_BASE 1000000 |
| 38 | #define DVD_NOPTS_VALUE (-1LL<<52) // should be possible to represent in both double and __int64 | 38 | |
| 39 | //TODO original definition is in DVDClock.h | ||
| 40 | #define DVD_NOPTS_VALUE 0xFFF0000000000000 | ||
| 39 | 41 | ||
| 40 | class CHelper_libXBMC_pvr | 42 | class CHelper_libXBMC_pvr |
| 41 | { | 43 | { |
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_dll.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_dll.h index ff7194f..e3c8785 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_dll.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_addon_dll.h | |||
| @@ -45,7 +45,6 @@ extern "C" { | |||
| 45 | unsigned int __declspec(dllexport) ADDON_GetSettings(ADDON_StructSetting ***sSet); | 45 | unsigned int __declspec(dllexport) ADDON_GetSettings(ADDON_StructSetting ***sSet); |
| 46 | ADDON_STATUS __declspec(dllexport) ADDON_SetSetting(const char *settingName, const void *settingValue); | 46 | ADDON_STATUS __declspec(dllexport) ADDON_SetSetting(const char *settingName, const void *settingValue); |
| 47 | void __declspec(dllexport) ADDON_FreeSettings(); | 47 | void __declspec(dllexport) ADDON_FreeSettings(); |
| 48 | void __declspec(dllexport) ADDON_Announce(const char *flag, const char *sender, const char *message, const void *data); | ||
| 49 | 48 | ||
| 50 | #ifdef __cplusplus | 49 | #ifdef __cplusplus |
| 51 | }; | 50 | }; |
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_dll.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_dll.h index 5cb6075..2cf558a 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_dll.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_dll.h | |||
| @@ -648,6 +648,14 @@ extern "C" | |||
| 648 | PVR_ERROR SetEPGTimeFrame(int iDays); | 648 | PVR_ERROR SetEPGTimeFrame(int iDays); |
| 649 | 649 | ||
| 650 | /*! | 650 | /*! |
| 651 | * Notify the pvr addon for power management events | ||
| 652 | */ | ||
| 653 | void OnSystemSleep(); | ||
| 654 | void OnSystemWake(); | ||
| 655 | void OnPowerSavingActivated(); | ||
| 656 | void OnPowerSavingDeactivated(); | ||
| 657 | |||
| 658 | /*! | ||
| 651 | * Called by XBMC to assign the function pointers of this add-on to pClient. | 659 | * Called by XBMC to assign the function pointers of this add-on to pClient. |
| 652 | * @param pClient The struct to assign the function pointers to. | 660 | * @param pClient The struct to assign the function pointers to. |
| 653 | */ | 661 | */ |
| @@ -736,6 +744,11 @@ extern "C" | |||
| 736 | pClient->IsRealTimeStream = IsRealTimeStream; | 744 | pClient->IsRealTimeStream = IsRealTimeStream; |
| 737 | 745 | ||
| 738 | pClient->SetEPGTimeFrame = SetEPGTimeFrame; | 746 | pClient->SetEPGTimeFrame = SetEPGTimeFrame; |
| 747 | |||
| 748 | pClient->OnSystemSleep = OnSystemSleep; | ||
| 749 | pClient->OnSystemWake = OnSystemWake; | ||
| 750 | pClient->OnPowerSavingActivated = OnPowerSavingActivated; | ||
| 751 | pClient->OnPowerSavingDeactivated = OnPowerSavingDeactivated; | ||
| 739 | }; | 752 | }; |
| 740 | }; | 753 | }; |
| 741 | 754 | ||
diff --git a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h index 8d73310..b50483d 100644 --- a/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h +++ b/xbmc/addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | #endif | 32 | #endif |
| 33 | #include <string.h> | 33 | #include <string.h> |
| 34 | #include <stdint.h> | 34 | #include <stdint.h> |
| 35 | #include <stdio.h> | ||
| 35 | 36 | ||
| 36 | #include "xbmc_addon_types.h" | 37 | #include "xbmc_addon_types.h" |
| 37 | #include "xbmc_epg_types.h" | 38 | #include "xbmc_epg_types.h" |
| @@ -77,10 +78,10 @@ struct DemuxPacket; | |||
| 77 | #define PVR_STREAM_MAX_STREAMS 20 | 78 | #define PVR_STREAM_MAX_STREAMS 20 |
| 78 | 79 | ||
| 79 | /* current PVR API version */ | 80 | /* current PVR API version */ |
| 80 | #define XBMC_PVR_API_VERSION "5.1.0" | 81 | #define XBMC_PVR_API_VERSION "5.2.0" |
| 81 | 82 | ||
| 82 | /* min. PVR API version */ | 83 | /* min. PVR API version */ |
| 83 | #define XBMC_PVR_MIN_API_VERSION "5.1.0" | 84 | #define XBMC_PVR_MIN_API_VERSION "5.2.0" |
| 84 | 85 | ||
| 85 | #ifdef __cplusplus | 86 | #ifdef __cplusplus |
| 86 | extern "C" { | 87 | extern "C" { |
| @@ -228,6 +229,7 @@ extern "C" { | |||
| 228 | PVR_CONNECTION_STATE_ACCESS_DENIED = 4, /*!< @brief backend server is reachable, but denies client access (e.g. due to wrong credentials) */ | 229 | PVR_CONNECTION_STATE_ACCESS_DENIED = 4, /*!< @brief backend server is reachable, but denies client access (e.g. due to wrong credentials) */ |
| 229 | PVR_CONNECTION_STATE_CONNECTED = 5, /*!< @brief connection to backend server is established */ | 230 | PVR_CONNECTION_STATE_CONNECTED = 5, /*!< @brief connection to backend server is established */ |
| 230 | PVR_CONNECTION_STATE_DISCONNECTED = 6, /*!< @brief no connection to backend server (e.g. due to network errors or client initiated disconnect)*/ | 231 | PVR_CONNECTION_STATE_DISCONNECTED = 6, /*!< @brief no connection to backend server (e.g. due to network errors or client initiated disconnect)*/ |
| 232 | PVR_CONNECTION_STATE_CONNECTING = 7, /*!< @brief connecting to backend */ | ||
| 231 | } PVR_CONNECTION_STATE; | 233 | } PVR_CONNECTION_STATE; |
| 232 | 234 | ||
| 233 | /*! | 235 | /*! |
| @@ -601,6 +603,10 @@ extern "C" { | |||
| 601 | bool (__cdecl* IsTimeshifting)(void); | 603 | bool (__cdecl* IsTimeshifting)(void); |
| 602 | bool (__cdecl* IsRealTimeStream)(void); | 604 | bool (__cdecl* IsRealTimeStream)(void); |
| 603 | PVR_ERROR (__cdecl* SetEPGTimeFrame)(int); | 605 | PVR_ERROR (__cdecl* SetEPGTimeFrame)(int); |
| 606 | void (__cdecl* OnSystemSleep)(void); | ||
| 607 | void (__cdecl* OnSystemWake)(void); | ||
| 608 | void (__cdecl* OnPowerSavingActivated)(void); | ||
| 609 | void (__cdecl* OnPowerSavingDeactivated)(void); | ||
| 604 | } PVRClient; | 610 | } PVRClient; |
| 605 | 611 | ||
| 606 | #ifdef __cplusplus | 612 | #ifdef __cplusplus |
diff --git a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxPacket.h b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxPacket.h index dbee80a..4f47118 100644 --- a/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxPacket.h +++ b/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxPacket.h | |||
| @@ -36,4 +36,6 @@ typedef struct DemuxPacket | |||
| 36 | double pts; // pts in DVD_TIME_BASE | 36 | double pts; // pts in DVD_TIME_BASE |
| 37 | double dts; // dts in DVD_TIME_BASE | 37 | double dts; // dts in DVD_TIME_BASE |
| 38 | double duration; // duration in DVD_TIME_BASE if available | 38 | double duration; // duration in DVD_TIME_BASE if available |
| 39 | |||
| 40 | int dispTime; | ||
| 39 | } DemuxPacket; | 41 | } DemuxPacket; |
diff --git a/xbmc/filesystem/IFileTypes.h b/xbmc/filesystem/IFileTypes.h index d2d77eb..4c6dd98 100644 --- a/xbmc/filesystem/IFileTypes.h +++ b/xbmc/filesystem/IFileTypes.h | |||
| @@ -60,15 +60,16 @@ struct SCacheStatus | |||
| 60 | uint64_t forward; /**< number of bytes cached forward of current position */ | 60 | uint64_t forward; /**< number of bytes cached forward of current position */ |
| 61 | unsigned maxrate; /**< maximum number of bytes per second cache is allowed to fill */ | 61 | unsigned maxrate; /**< maximum number of bytes per second cache is allowed to fill */ |
| 62 | unsigned currate; /**< average read rate from source file since last position change */ | 62 | unsigned currate; /**< average read rate from source file since last position change */ |
| 63 | bool full; /**< is the cache full */ | 63 | float level; /**< cache level (0.0 - 1.0) */ |
| 64 | }; | 64 | }; |
| 65 | 65 | ||
| 66 | typedef enum { | 66 | typedef enum { |
| 67 | IOCTRL_NATIVE = 1, /**< SNativeIoControl structure, containing what should be passed to native ioctrl */ | 67 | IOCTRL_NATIVE = 1, /**< SNativeIoControl structure, containing what should be passed to native ioctrl */ |
| 68 | IOCTRL_SEEK_POSSIBLE = 2, /**< return 0 if known not to work, 1 if it should work */ | 68 | IOCTRL_SEEK_POSSIBLE = 2, /**< return 0 if known not to work, 1 if it should work */ |
| 69 | IOCTRL_CACHE_STATUS = 3, /**< SCacheStatus structure */ | 69 | IOCTRL_CACHE_STATUS = 3, /**< SCacheStatus structure */ |
| 70 | IOCTRL_CACHE_SETRATE = 4, /**< unsigned int with speed limit for caching in bytes per second */ | 70 | IOCTRL_CACHE_SETRATE = 4, /**< unsigned int with speed limit for caching in bytes per second */ |
| 71 | IOCTRL_SET_CACHE = 8, /** <CFileCache */ | 71 | IOCTRL_SET_CACHE = 8, /**< CFileCache */ |
| 72 | IOCTRL_SET_RETRY = 16, /**< Enable/disable retry within the protocol handler (if supported) */ | ||
| 72 | } EIoControl; | 73 | } EIoControl; |
| 73 | 74 | ||
| 74 | enum CURLOPTIONTYPE | 75 | enum CURLOPTIONTYPE |
