Kodi Development 22.0
for Binary and Script based Add-Ons
 
Loading...
Searching...
No Matches
visualization.h
1/*
2 * Copyright (C) 2005-2020 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
8
9#ifndef C_API_ADDONINSTANCE_VISUALIZATION_H
10#define C_API_ADDONINSTANCE_VISUALIZATION_H
11
12#include "../addon_base.h"
13
14#ifdef __cplusplus
15extern "C"
16{
17#endif /* __cplusplus */
18
19 typedef KODI_ADDON_INSTANCE_HDL KODI_ADDON_VISUALIZATION_HDL;
20
22 {
23 const char* title;
24 const char* artist;
25 const char* album;
26 const char* albumArtist;
27 const char* genre;
28 const char* comment;
29 const char* lyrics;
30
31 const char* reserved1;
32 const char* reserved2;
33
34 int trackNumber;
35 int discNumber;
36 int duration;
37 int year;
38 int rating;
39
40 int reserved3;
41 int reserved4;
42 };
43
45 {
46 ADDON_HARDWARE_CONTEXT device;
47 int x;
48 int y;
49 int width;
50 int height;
51 float pixelRatio;
52 };
53
54 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_INIT_V1)(
55 const KODI_ADDON_VISUALIZATION_HDL hdl);
56 typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_DEINIT_V1)(
57 const KODI_ADDON_VISUALIZATION_HDL hdl);
58
59 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_AUDIO_START_V1)(
60 const KODI_ADDON_VISUALIZATION_HDL hdl,
61 int channels,
62 int samples_per_sec,
63 int bits_per_sample);
64 typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_AUDIO_STOP_V1)(
65 const KODI_ADDON_VISUALIZATION_HDL hdl);
66 typedef int(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_AUDIO_GET_SYNC_DELAY_V1)(
67 const KODI_ADDON_VISUALIZATION_HDL hdl);
68 typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_AUDIO_DATA_V1)(
69 const KODI_ADDON_VISUALIZATION_HDL hdl, const float* audio_data, size_t audio_data_length);
70
71 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_IS_DIRTY_V1)(
72 const KODI_ADDON_VISUALIZATION_HDL hdl);
73 typedef void(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_RENDER_V1)(
74 const KODI_ADDON_VISUALIZATION_HDL hdl);
75
76 typedef unsigned int(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_GET_PRESETS_V1)(
77 const KODI_ADDON_VISUALIZATION_HDL hdl);
78 typedef int(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_GET_ACTIVE_PRESET_V1)(
79 const KODI_ADDON_VISUALIZATION_HDL hdl);
80 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_PREV_PRESET_V1)(
81 const KODI_ADDON_VISUALIZATION_HDL hdl);
82 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_NEXT_PRESET_V1)(
83 const KODI_ADDON_VISUALIZATION_HDL hdl);
84 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_LOAD_PRESET_V1)(
85 const KODI_ADDON_VISUALIZATION_HDL hdl, int select);
86 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_RANDOM_PRESET_V1)(
87 const KODI_ADDON_VISUALIZATION_HDL hdl);
88 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_LOCK_PRESET_V1)(
89 const KODI_ADDON_VISUALIZATION_HDL hdl);
90 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_RATE_PRESET_V1)(
91 const KODI_ADDON_VISUALIZATION_HDL hdl, bool plus_minus);
92 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_IS_LOCKED_V1)(
93 const KODI_ADDON_VISUALIZATION_HDL hdl);
94
95 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_UPDATE_ALBUMART_V1)(
96 const KODI_ADDON_VISUALIZATION_HDL hdl, const char* albumart);
97 typedef bool(ATTR_APIENTRYP PFN_KODI_ADDON_VISUALIZATION_UPDATE_TRACK_V1)(
98 const KODI_ADDON_VISUALIZATION_HDL hdl, const struct KODI_ADDON_VISUALIZATION_TRACK* track);
99
101 {
102 PFN_KODI_ADDON_VISUALIZATION_INIT_V1 init;
103 PFN_KODI_ADDON_VISUALIZATION_DEINIT_V1 deinit;
104
105 PFN_KODI_ADDON_VISUALIZATION_AUDIO_START_V1 audio_start;
106 PFN_KODI_ADDON_VISUALIZATION_AUDIO_STOP_V1 audio_stop;
107 PFN_KODI_ADDON_VISUALIZATION_AUDIO_GET_SYNC_DELAY_V1 audio_get_sync_delay;
108 PFN_KODI_ADDON_VISUALIZATION_AUDIO_DATA_V1 audio_data;
109
110 PFN_KODI_ADDON_VISUALIZATION_IS_DIRTY_V1 is_dirty;
111 PFN_KODI_ADDON_VISUALIZATION_RENDER_V1 render;
112
113 PFN_KODI_ADDON_VISUALIZATION_GET_PRESETS_V1 get_presets;
114 PFN_KODI_ADDON_VISUALIZATION_GET_ACTIVE_PRESET_V1 get_active_preset;
115 PFN_KODI_ADDON_VISUALIZATION_PREV_PRESET_V1 prev_preset;
116 PFN_KODI_ADDON_VISUALIZATION_NEXT_PRESET_V1 next_preset;
117 PFN_KODI_ADDON_VISUALIZATION_LOAD_PRESET_V1 load_preset;
118 PFN_KODI_ADDON_VISUALIZATION_RANDOM_PRESET_V1 random_preset;
119 PFN_KODI_ADDON_VISUALIZATION_LOCK_PRESET_V1 lock_preset;
120 PFN_KODI_ADDON_VISUALIZATION_RATE_PRESET_V1 rate_preset;
121 PFN_KODI_ADDON_VISUALIZATION_IS_LOCKED_V1 is_locked;
122
123 PFN_KODI_ADDON_VISUALIZATION_UPDATE_ALBUMART_V1 update_albumart;
124 PFN_KODI_ADDON_VISUALIZATION_UPDATE_TRACK_V1 update_track;
126
128 {
129 void (*get_properties)(const KODI_HANDLE hdl, struct KODI_ADDON_VISUALIZATION_PROPS* props);
130 void (*transfer_preset)(const KODI_HANDLE hdl, const char* preset);
131 void (*clear_presets)(const KODI_HANDLE hdl);
133
139
140#ifdef __cplusplus
141} /* extern "C" */
142#endif /* __cplusplus */
143
144#endif /* !C_API_ADDONINSTANCE_VISUALIZATION_H */
Definition visualization.h:135
Definition visualization.h:128
Definition visualization.h:45
Definition visualization.h:22
Definition visualization.h:101