summaryrefslogtreecommitdiffstats
path: root/src/multimedia/configure.json
blob: e29a35e975db5ab856112c994b46897adeb11ca8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
{
    "module": "multimedia",
    "depends": [
        "gui"
    ],
    "condition": "module.gui",
    "testDir": "../../config.tests",

    "commandline": {
        "options": {
            "alsa": "boolean",
            "evr": { "type": "boolean" },
            "wmf": { "type": "boolean" },
            "gstreamer": { "type": "optionalString", "values": [ "no", "yes" ] },
            "pulseaudio": "boolean"
        }
    },

    "libraries": {
        "alsa": {
            "label": "ALSA",
            "test": "alsa",
            "sources": [
                "-lasound"
            ]
        },
        "avfoundation": {
            "label": "AVFoundation",
            "test": "avfoundation",
            "sources": [
                { "libs": "-framework AVFoundation -framework Foundation" }
            ]
        },
        "gstreamer_1_0": {
            "label": "GStreamer 1.0",
            "export": "gstreamer",
            "test": "gstreamer",
            "sources": [
                { "type": "pkgConfig",
                  "args": "gstreamer-1.0 gstreamer-base-1.0 gstreamer-audio-1.0 gstreamer-video-1.0 gstreamer-pbutils-1.0 gstreamer-allocators-1.0" },
                { "libs": "-lgstreamer-1.0 -lgstbase-1.0 -lgstaudio-1.0 -lgstvideo-1.0 -lgstpbutils-1.0 -lglib-2.0 -lgobject-2.0",
                  "condition": "config.win32 || config.macos" },
                { "libs": "", "condition": "config.android && input.gstreamer != ''" }
            ]
        },
        "gstreamer_app_1_0": {
            "label": "GStreamer App 1.0",
            "export": "gstreamer_app",
            "test": "gstreamer_appsrc",
            "use": "gstreamer_1_0",
            "sources": [
                { "type": "pkgConfig", "args": "gstreamer-app-1.0" },
                { "libs": "-lgstapp-1.0", "condition": "config.win32 || config.macos" },
                { "libs": "", "condition": "config.android && input.gstreamer != ''" }
            ]
        },
        "gstreamer_photography_1_0": {
            "label": "GStreamer Photography 1.0",
            "export": "gstreamer_photography",
            "test": "gstreamer_photography",
            "use": "gstreamer_1_0",
            "sources": [
                { "libs": "-lgstphotography-1.0" }
            ]
        },
        "gstreamer_gl_1_0": {
            "label": "GStreamer OpenGL 1.0",
            "export": "gstreamer_gl",
            "test":  {
                "include": "gst/gl/gl.h"
            },
            "use": "gstreamer_1_0",
            "sources": [
                { "type": "pkgConfig", "args": "gstreamer-gl-1.0" }
            ]
        },
        "mmrenderer": {
            "label": "MMRenderer",
            "test": "mmrenderer",
            "sources": [
                { "libs": "-lmmrndclient -lstrm" }
            ]
        },
        "pulseaudio": {
            "label": "PulseAudio >= 0.9.10",
            "test": "pulseaudio",
            "sources": [
                { "type": "pkgConfig", "args": "libpulse >= 0.9.10 libpulse-mainloop-glib" }
            ]
        },
        "wmf": {
            "label": "WMF",
            "test": "wmf",
            "sources": [
                { "libs": "-lstrmiids -ldmoguids -luuid -lmsdmo -lole32 -loleaut32 -lMf -lMfuuid -lMfplat -lPropsys" }
            ]
        }
    },

    "tests": {
        "evr": {
            "label": "evr.h",
            "type": "compile",
            "test": "evr"
        },
        "gpu_vivante": {
            "label": "Vivante GPU",
            "type": "compile",
            "test": "gpu_vivante"
        },
        "linux_v4l": {
            "label": "Video for Linux",
            "type": "compile",
            "test": "linux_v4l"
        },
        "wmsdk": {
            "label": "wmsdk.h",
            "type": "compile",
            "test": "wmsdk"
        }
    },

    "features": {
        "alsa": {
            "label": "ALSA",
            "condition": "config.unix && !config.qnx && libs.alsa && !features.gstreamer && !features.pulseaudio",
            "output": [ "feature", "privateFeature" ]
        },
        "avfoundation": {
            "label": "AVFoundation",
            "condition": "libs.avfoundation",
            "output": [ "feature", "privateFeature" ]
        },
        "evr": {
            "label": "evr.h",
            "condition": "config.win32 && tests.evr",
            "output": [ "feature", "privateFeature" ]
        },
        "gstreamer_1_0": {
            "label": "GStreamer 1.0",
            "disable": "input.gstreamer == 'no'",
            "enable": "input.gstreamer == 'yes'",
            "condition": "libs.gstreamer_1_0",
            "output": [ "privateFeature" ]
        },
        "gstreamer": {
            "condition": "features.gstreamer_1_0",
            "output": [ "privateFeature" ]
        },
        "gstreamer_app": {
            "label": "GStreamer App",
            "condition": "(features.gstreamer_1_0 && libs.gstreamer_app_1_0)",
            "output": [ "privateFeature" ]
        },
        "gstreamer_photography": {
            "label": "GStreamer Photography",
            "condition": "(features.gstreamer_1_0 && libs.gstreamer_photography_1_0)",
            "output": [ "privateFeature" ]
        },
        "gstreamer_gl": {
            "label": "GStreamer OpenGL",
            "condition": "features.opengl && features.gstreamer_1_0 && libs.gstreamer_gl_1_0",
            "output": [ "privateFeature" ]
        },
        "gpu_vivante": {
            "label": "Vivante GPU",
            "condition": "features.gui && features.opengles2 && tests.gpu_vivante",
            "output": [ "privateFeature" ]
        },
        "linux_v4l": {
            "label": "Video for Linux",
            "condition": "config.unix && tests.linux_v4l",
            "output": [ "privateFeature" ]
        },
        "mmrenderer": {
            "label": "MMRenderer",
            "emitIf": "config.qnx",
            "condition": "libs.mmrenderer",
            "output": [ "feature", "privateFeature" ]
        },
        "pulseaudio": {
            "label": "PulseAudio",
            "autoDetect": "config.unix",
            "condition": "libs.pulseaudio && !features.gstreamer",
            "output": [ "feature", "privateFeature" ]
        },
        "wmsdk": {
            "label": "wmsdk.h",
            "condition": "config.win32 && tests.wmsdk",
            "output": [ "privateFeature" ]
        },
        "wmf": {
            "label": "Windows Media Foundation",
            "condition": "config.win32 && libs.wmf",
            "output": [ "privateFeature" ]
        }
    },

    "report": [
    ],

    "summary": [
        {
            "section": "Qt Multimedia",
            "entries": [
                "alsa",
                "gstreamer_1_0",
                "linux_v4l",
                "pulseaudio",
                "mmrenderer",
                "avfoundation",
                "wmf"
            ]
        }
    ]
}