/src/vlc/include/vlc_vout_display.h
Line | Count | Source (jump to first uncovered line) |
1 | | /***************************************************************************** |
2 | | * vlc_vout_display.h: vout_display_t definitions |
3 | | ***************************************************************************** |
4 | | * Copyright (C) 2009 Laurent Aimar |
5 | | * |
6 | | * Authors: Laurent Aimar <fenrir _AT_ videolan _DOT_ org> |
7 | | * |
8 | | * This program is free software; you can redistribute it and/or modify it |
9 | | * under the terms of the GNU Lesser General Public License as published by |
10 | | * the Free Software Foundation; either version 2.1 of the License, or |
11 | | * (at your option) any later version. |
12 | | * |
13 | | * This program is distributed in the hope that it will be useful, |
14 | | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | | * GNU Lesser General Public License for more details. |
17 | | * |
18 | | * You should have received a copy of the GNU Lesser General Public License |
19 | | * along with this program; if not, write to the Free Software Foundation, |
20 | | * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. |
21 | | *****************************************************************************/ |
22 | | |
23 | | #ifndef VLC_VOUT_DISPLAY_H |
24 | | #define VLC_VOUT_DISPLAY_H 1 |
25 | | |
26 | | #include <vlc_es.h> |
27 | | #include <vlc_picture.h> |
28 | | #include <vlc_mouse.h> |
29 | | #include <vlc_vout.h> |
30 | | #include <vlc_window.h> |
31 | | #include <vlc_viewpoint.h> |
32 | | |
33 | | struct vlc_render_subpicture; |
34 | | |
35 | | /** |
36 | | * \defgroup video_display Video output display |
37 | | * Video output display: output buffers and rendering |
38 | | * |
39 | | * \ingroup video_output |
40 | | * @{ |
41 | | * \file |
42 | | * Video output display modules interface |
43 | | */ |
44 | | |
45 | | typedef struct vout_display_t vout_display_t; |
46 | | typedef struct vout_display_owner_t vout_display_owner_t; |
47 | | |
48 | | /** |
49 | | * \defgroup video_align Video alignment |
50 | | * @{ |
51 | | */ |
52 | 0 | #define VLC_VIDEO_ALIGN_CENTER 0 |
53 | 0 | #define VLC_VIDEO_ALIGN_LEFT 1 |
54 | 0 | #define VLC_VIDEO_ALIGN_RIGHT 2 |
55 | 0 | #define VLC_VIDEO_ALIGN_TOP 1 |
56 | 0 | #define VLC_VIDEO_ALIGN_BOTTOM 2 |
57 | | |
58 | | /** |
59 | | * Video alignment within the display. |
60 | | */ |
61 | | typedef struct vlc_video_align { |
62 | | /** |
63 | | * Horizontal alignment. |
64 | | * |
65 | | * This must be one of \ref VLC_VIDEO_ALIGN_CENTER, |
66 | | * \ref VLC_VIDEO_ALIGN_LEFT or \ref VLC_VIDEO_ALIGN_RIGHT. |
67 | | */ |
68 | | char horizontal; |
69 | | |
70 | | /** |
71 | | * Vectical alignment. |
72 | | * |
73 | | * This must be one of \ref VLC_VIDEO_ALIGN_CENTER, |
74 | | * \ref VLC_VIDEO_ALIGN_TOP or \ref VLC_VIDEO_ALIGN_BOTTOM. |
75 | | */ |
76 | | char vertical; |
77 | | } vlc_video_align_t; |
78 | | /** @} */ |
79 | | |
80 | | /** |
81 | | * Video automatic scale fitting. |
82 | | */ |
83 | | enum vlc_video_fitting { |
84 | | VLC_VIDEO_FIT_NONE /**< No automatic scaling (use explicit zoom ratio) */, |
85 | | VLC_VIDEO_FIT_SMALLER /**< Fit inside / to smallest dimension */, |
86 | | VLC_VIDEO_FIT_LARGER /**< Fit outside / to largest dimension */, |
87 | | VLC_VIDEO_FIT_WIDTH /**< Fit to width */, |
88 | | VLC_VIDEO_FIT_HEIGHT /**< Fit to height */, |
89 | | }; |
90 | | |
91 | | /** |
92 | | * Display placement and zoom configuration. |
93 | | */ |
94 | | struct vout_display_placement { |
95 | | unsigned width; /**< Requested display pixel width (0 by default). */ |
96 | | unsigned height; /**< Requested display pixel height (0 by default). */ |
97 | | vlc_rational_t sar; /**< Requested sample aspect ratio */ |
98 | | |
99 | | vlc_video_align_t align; /**< Alignment within the window */ |
100 | | enum vlc_video_fitting fitting; /**< Scaling/fitting mode */ |
101 | | vlc_rational_t zoom; /**< Zoom ratio (if fitting is disabled) */ |
102 | | bool full_fill; /**< whether the rendering will take the whole display */ |
103 | | }; |
104 | | |
105 | | /** |
106 | | * User configuration for a video output display (\ref vout_display_t) |
107 | | * |
108 | | * This primarily controls the size of the display area within the video |
109 | | * window, as follows: |
110 | | * - If \ref vout_display_placement::fitting is not disabled, ie. equals |
111 | | * to \ref VLC_VIDEO_FIT_NONE, in \ref vout_display_cfg::display, the |
112 | | * video size is fitted to the display size. |
113 | | * - If \ref vout_display_cfg::window "window" size is valid, the video size |
114 | | * is set to the window size, |
115 | | * - Otherwise, the video size is determined from the original video format, |
116 | | * multiplied by the zoom factor. |
117 | | */ |
118 | | typedef struct vout_display_cfg { |
119 | | struct vlc_window *window; /**< Window */ |
120 | | struct vout_display_placement display; /**< Display placement properties */ |
121 | | vlc_icc_profile_t *icc_profile; /**< Currently active ICC profile */ |
122 | | /** Final source projection requested for display. */ |
123 | | video_projection_mode_t projection; |
124 | | |
125 | | /** Initial viewpoint when projection != PROJECTION_MODE_RECTANGULAR */ |
126 | | vlc_viewpoint_t viewpoint; |
127 | | vlc_stereoscopic_mode_t stereo_mode; /**< Stereoscopic/3D mode used by the display */ |
128 | | } vout_display_cfg_t; |
129 | | |
130 | | /** |
131 | | * Information from a vout_display_t to configure |
132 | | * the core behaviour. |
133 | | * |
134 | | * By default they are all false or NULL. |
135 | | * |
136 | | */ |
137 | | typedef struct { |
138 | | const vlc_fourcc_t *subpicture_chromas; /* List of supported chromas for subpicture rendering. */ |
139 | | } vout_display_info_t; |
140 | | |
141 | | /** |
142 | | * Control query for vout_display_t |
143 | | */ |
144 | | enum vout_display_query { |
145 | | /** |
146 | | * Notifies a change of the sample aspect ratio. |
147 | | * |
148 | | * \retval VLC_SUCCESS if the display handled the change |
149 | | * \retval VLC_EGENERIC if a \ref vlc_display_operations::reset_pictures |
150 | | * request is necessary |
151 | | */ |
152 | | VOUT_DISPLAY_CHANGE_SOURCE_ASPECT, |
153 | | |
154 | | /** |
155 | | * Notifies a change of the source cropping. |
156 | | * |
157 | | * The cropping requested is stored by source \ref video_format_t `i_x`/`y_offset` |
158 | | * and `i_visible_width`/`height` |
159 | | * |
160 | | * \retval VLC_SUCCESS if the display handled the change |
161 | | * \retval VLC_EGENERIC if a \ref vlc_display_operations::reset_pictures |
162 | | * request is necessary |
163 | | */ |
164 | | VOUT_DISPLAY_CHANGE_SOURCE_CROP, |
165 | | |
166 | | /** |
167 | | * Notified when the source placement in the display has changed |
168 | | * |
169 | | * \retval VLC_SUCCESS if the display handled the change |
170 | | * \retval VLC_EGENERIC if a \ref vlc_display_operations::reset_pictures |
171 | | * request is necessary |
172 | | */ |
173 | | VOUT_DISPLAY_CHANGE_SOURCE_PLACE, |
174 | | }; |
175 | | |
176 | | /** |
177 | | * Vout owner structures |
178 | | */ |
179 | | struct vout_display_owner_t { |
180 | | /* Private place holder for the vout_display_t creator |
181 | | */ |
182 | | void *sys; |
183 | | |
184 | | /* Event coming from the module |
185 | | * |
186 | | * This function is set prior to the module instantiation and must not |
187 | | * be overwritten nor used directly (use the vout_display_SendEvent* |
188 | | * wrapper. |
189 | | * |
190 | | * You can send it at any time i.e. from any vout_display_t functions or |
191 | | * from another thread. |
192 | | * Be careful, it does not ensure correct serialization if it is used |
193 | | * from multiple threads. |
194 | | */ |
195 | | void (*viewpoint_moved)(void *sys, const vlc_viewpoint_t *vp); |
196 | | }; |
197 | | |
198 | | /** |
199 | | * "vout display" open callback |
200 | | * |
201 | | * @param vd vout display context |
202 | | * @param fmtp It can be changed by the module to request a different format. |
203 | | * @param context The video context to configure the display for. |
204 | | * @return VLC_SUCCESS or a VLC error code |
205 | | */ |
206 | | typedef int (*vout_display_open_cb)(vout_display_t *vd, |
207 | | video_format_t *fmtp, |
208 | | vlc_video_context *context); |
209 | | |
210 | | #define set_callback_display(activate, priority) \ |
211 | | { \ |
212 | | vout_display_open_cb open__ = activate; \ |
213 | | (void) open__; \ |
214 | | set_callback(activate) \ |
215 | | } \ |
216 | | set_capability( "vout display", priority ) |
217 | | |
218 | | struct vlc_display_operations |
219 | | { |
220 | | /** |
221 | | * Destroys the display. |
222 | | */ |
223 | | void (*close)(vout_display_t *); |
224 | | |
225 | | /** |
226 | | * Prepares a picture and an optional subpicture for display (optional). |
227 | | * |
228 | | * This callback is called once a picture buffer content is ready, |
229 | | * as far in advance as possible to the intended display time, |
230 | | * but only after the previous picture was displayed. |
231 | | * |
232 | | * The callback should perform any preprocessing operation that will not |
233 | | * actually cause the picture to be shown, such as blending the subpicture |
234 | | * or upload the picture to video memory. If supported, this can also |
235 | | * queue the picture to be shown asynchronously at the given date. |
236 | | * |
237 | | * |
238 | | * If \ref vlc_display_operations.prepare and |
239 | | * \ref vlc_display_operations.display are not \c NULL, there is an |
240 | | * implicit guarantee that display will be invoked with the exact same |
241 | | * picture afterwards: |
242 | | * prepare 1st picture, display 1st picture, prepare 2nd picture, display |
243 | | * 2nd picture, and so on. |
244 | | * |
245 | | * \note The picture buffers may have multiple references. |
246 | | * Therefore the pixel content of the picture or of the subpicture |
247 | | * must not be changed. |
248 | | * |
249 | | * \param pic picture |
250 | | * \param subpic subpicture to render over the picture |
251 | | * \param date time when the picture is intended to be shown |
252 | | */ |
253 | | void (*prepare)(vout_display_t *, picture_t *pic, |
254 | | const struct vlc_render_subpicture *subpic, vlc_tick_t date); |
255 | | |
256 | | /** |
257 | | * Displays a picture. |
258 | | * |
259 | | * This callback is invoked at the time when the picture should be shown. |
260 | | * The picture must be displayed as soon as possible. |
261 | | * |
262 | | * If NULL, prepare must be valid. In that case, the plugin can handle |
263 | | * asynchronous display at the time given by the prepare call. |
264 | | * |
265 | | * \note The picture buffers may have multiple references. |
266 | | * Therefore the pixel content of the picture or of the subpicture |
267 | | * must not be changed. |
268 | | */ |
269 | | void (*display)(vout_display_t *, picture_t *pic); |
270 | | |
271 | | /** |
272 | | * Let the display module know the display size has changed. |
273 | | * |
274 | | * \return VLC_SUCCESS if the size is accepted. |
275 | | * \return an error if the size is not accepted and |
276 | | * \ref vlc_display_operations::reset_pictures "reset_pictures" needs to be called. |
277 | | * |
278 | | * When the callback is NULL, it is considered as returning VLC_SUCCESS. |
279 | | */ |
280 | | int (*set_display_size)(vout_display_t *, unsigned width, unsigned height); |
281 | | |
282 | | /** |
283 | | * Performs a control request (mandatory). |
284 | | * |
285 | | * \param query request type |
286 | | * |
287 | | * See \ref vout_display_query for the list of request types. |
288 | | */ |
289 | | int (*control)(vout_display_t *, int query); |
290 | | |
291 | | /** |
292 | | * Reset the picture format handled by the module. |
293 | | * This occurs after an error in \ref vlc_display_operations::set_display_size, |
294 | | * \ref VOUT_DISPLAY_CHANGE_SOURCE_ASPECT, |
295 | | * \ref VOUT_DISPLAY_CHANGE_SOURCE_CROP or |
296 | | * \ref VOUT_DISPLAY_CHANGE_SOURCE_PLACE |
297 | | * control query returns an error. |
298 | | * |
299 | | * \param ftmp video format that the module expects as input |
300 | | */ |
301 | | int (*reset_pictures)(vout_display_t *, video_format_t *fmtp); |
302 | | |
303 | | /** |
304 | | * Notifies a change of VR/360° viewpoint. |
305 | | * |
306 | | * May be NULL. |
307 | | * |
308 | | * \param vp viewpoint to use on the next render |
309 | | */ |
310 | | int (*set_viewpoint)(vout_display_t *, const vlc_viewpoint_t *vp); |
311 | | |
312 | | /** |
313 | | * Notifies a change in output ICC profile. |
314 | | * |
315 | | * May be NULL. Memory owned by the caller. |
316 | | * |
317 | | * \param prof new ICC profile associated with display, or NULL for none |
318 | | */ |
319 | | void (*set_icc_profile)(vout_display_t *, const vlc_icc_profile_t *prof); |
320 | | |
321 | | /** |
322 | | * Notifies a change in the input format. |
323 | | * |
324 | | * The format size is not expected to change. |
325 | | * |
326 | | * \param fmt the requested input format |
327 | | * \param ctx the video context |
328 | | * \return VLC_SUCCESS on success, another value on error |
329 | | */ |
330 | | int (*update_format)(vout_display_t *, const video_format_t *fmt, |
331 | | vlc_video_context *ctx); |
332 | | |
333 | | /** |
334 | | * Set the source projection used by the display. |
335 | | * |
336 | | * May be NULL. |
337 | | * |
338 | | * \param display the display to change projection for |
339 | | * \param projection the new projection mode considered for the source |
340 | | * \return VLC_SUCCESS on succes, another value if changing projection failed |
341 | | */ |
342 | | int (*change_source_projection)(vout_display_t *display, |
343 | | video_projection_mode_t projection); |
344 | | |
345 | | /** |
346 | | * Notifies the new Stereoscopic 3D mode in \ref vout_display_cfg_t changed. |
347 | | * |
348 | | * May be NULL. |
349 | | * |
350 | | * \retval VLC_SUCCESS if the display handled the change |
351 | | * \retval VLC_EGENERIC if the display handled the change was not handled |
352 | | */ |
353 | | int (*set_stereo)(vout_display_t *, vlc_stereoscopic_mode_t); |
354 | | }; |
355 | | |
356 | | /** |
357 | | * Video placement. |
358 | | * |
359 | | * This structure stores the result of a vout_display_PlacePicture() call. |
360 | | */ |
361 | | typedef struct vout_display_place_t { |
362 | | int x; /*< Relative pixel offset from the display left edge */ |
363 | | int y; /*< Relative pixel offset from the display top edge */ |
364 | | unsigned width; /*< Picture pixel width */ |
365 | | unsigned height; /*< Picture pixel height */ |
366 | | } vout_display_place_t; |
367 | | |
368 | | struct vout_display_t { |
369 | | struct vlc_object_t obj; |
370 | | |
371 | | /** |
372 | | * User configuration. |
373 | | * |
374 | | * This cannot be modified directly. It reflects the current values. |
375 | | */ |
376 | | const vout_display_cfg_t *cfg; |
377 | | |
378 | | /** |
379 | | * Source video format. |
380 | | * |
381 | | * This is the format of the video that is being displayed (after decoding |
382 | | * and filtering). It cannot be modified. |
383 | | * |
384 | | * \note |
385 | | * Cropping is not requested while in the open function. |
386 | | */ |
387 | | const video_format_t *source; |
388 | | |
389 | | /** |
390 | | * Placement of the source picture in the display. (cannot be NULL) |
391 | | * |
392 | | * This cannot be modified directly and cannot be NULL. |
393 | | * It reflects the current values. |
394 | | */ |
395 | | const vout_display_place_t *place; |
396 | | |
397 | | /** |
398 | | * Picture format. |
399 | | * |
400 | | * This is the format of the pictures that are supplied to the |
401 | | * \ref vlc_display_operations::prepare "prepare" and |
402 | | * \ref vlc_display_operations::display "display" callbacks. |
403 | | * Ideally, it should be identical or as close as possible as \ref source. |
404 | | * |
405 | | * This can only be changed from the display module activation callback, |
406 | | * or within a \ref vlc_display_operations::reset_pictures "reset_pictures" |
407 | | * request. |
408 | | * |
409 | | * By default, it is equal to \ref source except for the aspect ratio |
410 | | * which is undefined(0) and is ignored. |
411 | | */ |
412 | | const video_format_t *fmt; |
413 | | |
414 | | /* Information |
415 | | * |
416 | | * You can only set them in the open function. |
417 | | */ |
418 | | vout_display_info_t info; |
419 | | |
420 | | /* Reserved for the vout_display_t owner. |
421 | | * |
422 | | * It must not be overwritten nor used directly by a module. |
423 | | */ |
424 | | vout_display_owner_t owner; |
425 | | |
426 | | /** |
427 | | * Private data for the display module. |
428 | | * |
429 | | * A module is free to use it as it wishes. |
430 | | */ |
431 | | void *sys; |
432 | | |
433 | | /** |
434 | | * Callbacks the display module must set on Open. |
435 | | */ |
436 | | const struct vlc_display_operations *ops; |
437 | | }; |
438 | | |
439 | | /** |
440 | | * Creates video output display. |
441 | | */ |
442 | | VLC_API |
443 | | vout_display_t *vout_display_New(vlc_object_t *, |
444 | | const video_format_t *, vlc_video_context *, |
445 | | const vout_display_cfg_t *, const char *module, |
446 | | const vout_display_owner_t *); |
447 | | |
448 | | /** |
449 | | * Destroys a video output display. |
450 | | */ |
451 | | VLC_API void vout_display_Delete(vout_display_t *); |
452 | | |
453 | | /** |
454 | | * Prepares a picture for display. |
455 | | * |
456 | | * This renders a picture for subsequent display, with vout_display_Display(). |
457 | | * |
458 | | * \note A reference to the input picture is consumed by the function, which |
459 | | * returns a reference to an output picture for display. The input and output |
460 | | * picture may or may not be equal depending on the underlying display setup. |
461 | | * |
462 | | * \bug Currently, only one picture can be prepared at a time. It must be |
463 | | * displayed with vout_display_Display() before any picture is prepared or |
464 | | * before the display is destroyed with vout_display_Delete(). |
465 | | * |
466 | | \ bug Rendering subpictures is not supported with this function yet. |
467 | | * \c subpic must be @c NULL . |
468 | | * |
469 | | * \param vd display to prepare the picture for |
470 | | * \param picture picure to be prepared |
471 | | * \param subpic reserved, must be NULL |
472 | | * \param date intended time to show the picture |
473 | | * \return The prepared picture is returned, NULL on error. |
474 | | */ |
475 | | VLC_API picture_t *vout_display_Prepare(vout_display_t *vd, picture_t *picture, |
476 | | const struct vlc_render_subpicture *subpic, vlc_tick_t date); |
477 | | |
478 | | /** |
479 | | * Displays a picture. |
480 | | */ |
481 | | static inline void vout_display_Display(vout_display_t *vd, picture_t *picture) |
482 | 0 | { |
483 | 0 | if (vd->ops->display != NULL) |
484 | 0 | vd->ops->display(vd, picture); |
485 | 0 | } Unexecuted instantiation: decoder.c:vout_display_Display Unexecuted instantiation: es.c:vout_display_Display Unexecuted instantiation: flac.c:vout_display_Display Unexecuted instantiation: h26x.c:vout_display_Display Unexecuted instantiation: essetup.c:vout_display_Display Unexecuted instantiation: tta.c:vout_display_Display Unexecuted instantiation: encttml.c:vout_display_Display Unexecuted instantiation: substtml.c:vout_display_Display Unexecuted instantiation: ty.c:vout_display_Display Unexecuted instantiation: encvtt.c:vout_display_Display Unexecuted instantiation: webvtt.c:vout_display_Display Unexecuted instantiation: subsvtt.c:vout_display_Display Unexecuted instantiation: a52.c:vout_display_Display Unexecuted instantiation: copy.c:vout_display_Display Unexecuted instantiation: dts.c:vout_display_Display Unexecuted instantiation: h264.c:vout_display_Display Unexecuted instantiation: hxxx_common.c:vout_display_Display Unexecuted instantiation: hevc.c:vout_display_Display Unexecuted instantiation: mlp.c:vout_display_Display Unexecuted instantiation: mpeg4audio.c:vout_display_Display Unexecuted instantiation: mpeg4video.c:vout_display_Display Unexecuted instantiation: mpegaudio.c:vout_display_Display Unexecuted instantiation: mpegvideo.c:vout_display_Display Unexecuted instantiation: vc1.c:vout_display_Display Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_Display(vout_display_t*, picture_t*) Unexecuted instantiation: adpcm.c:vout_display_Display Unexecuted instantiation: aes3.c:vout_display_Display Unexecuted instantiation: araw.c:vout_display_Display Unexecuted instantiation: g711.c:vout_display_Display Unexecuted instantiation: lpcm.c:vout_display_Display Unexecuted instantiation: uleaddvaudio.c:vout_display_Display Unexecuted instantiation: rawvideo.c:vout_display_Display Unexecuted instantiation: cc.c:vout_display_Display Unexecuted instantiation: cea708.c:vout_display_Display Unexecuted instantiation: cvdsub.c:vout_display_Display Unexecuted instantiation: dvbsub.c:vout_display_Display Unexecuted instantiation: scte18.c:vout_display_Display Unexecuted instantiation: scte27.c:vout_display_Display Unexecuted instantiation: spudec.c:vout_display_Display Unexecuted instantiation: parse.c:vout_display_Display Unexecuted instantiation: stl.c:vout_display_Display Unexecuted instantiation: subsdec.c:vout_display_Display Unexecuted instantiation: subsusf.c:vout_display_Display Unexecuted instantiation: svcdsub.c:vout_display_Display Unexecuted instantiation: textst.c:vout_display_Display Unexecuted instantiation: substx3g.c:vout_display_Display Unexecuted instantiation: decoder_device.c:vout_display_Display Unexecuted instantiation: decoder_helpers.c:vout_display_Display Unexecuted instantiation: demux.c:vout_display_Display Unexecuted instantiation: input.c:vout_display_Display Unexecuted instantiation: player.c:vout_display_Display Unexecuted instantiation: aout.c:vout_display_Display Unexecuted instantiation: vout.c:vout_display_Display Unexecuted instantiation: osd.c:vout_display_Display Unexecuted instantiation: resource.c:vout_display_Display Unexecuted instantiation: common.c:vout_display_Display Unexecuted instantiation: dec.c:vout_display_Display Unexecuted instantiation: filters.c:vout_display_Display Unexecuted instantiation: meter.c:vout_display_Display Unexecuted instantiation: output.c:vout_display_Display Unexecuted instantiation: volume.c:vout_display_Display Unexecuted instantiation: video_output.c:vout_display_Display Unexecuted instantiation: video_text.c:vout_display_Display Unexecuted instantiation: video_widgets.c:vout_display_Display Unexecuted instantiation: vout_subpictures.c:vout_display_Display Unexecuted instantiation: video_window.c:vout_display_Display Unexecuted instantiation: vout_intf.c:vout_display_Display Unexecuted instantiation: vout_wrapper.c:vout_display_Display Unexecuted instantiation: image.c:vout_display_Display Unexecuted instantiation: objects.c:vout_display_Display Unexecuted instantiation: filter.c:vout_display_Display Unexecuted instantiation: filter_chain.c:vout_display_Display Unexecuted instantiation: subpicture.c:vout_display_Display Unexecuted instantiation: stream_output.c:vout_display_Display Unexecuted instantiation: libvlc-module.c:vout_display_Display Unexecuted instantiation: es_out.c:vout_display_Display Unexecuted instantiation: control.c:vout_display_Display Unexecuted instantiation: display.c:vout_display_Display Unexecuted instantiation: interlacing.c:vout_display_Display Unexecuted instantiation: snapshot.c:vout_display_Display |
486 | | |
487 | | VLC_API |
488 | | void vout_display_SetSize(vout_display_t *vd, unsigned width, unsigned height); |
489 | | |
490 | | static inline void vout_display_SendEventMousePressed(vout_display_t *vd, int button) |
491 | 0 | { |
492 | 0 | vlc_window_ReportMousePressed(vd->cfg->window, button); |
493 | 0 | } Unexecuted instantiation: decoder.c:vout_display_SendEventMousePressed Unexecuted instantiation: es.c:vout_display_SendEventMousePressed Unexecuted instantiation: flac.c:vout_display_SendEventMousePressed Unexecuted instantiation: h26x.c:vout_display_SendEventMousePressed Unexecuted instantiation: essetup.c:vout_display_SendEventMousePressed Unexecuted instantiation: tta.c:vout_display_SendEventMousePressed Unexecuted instantiation: encttml.c:vout_display_SendEventMousePressed Unexecuted instantiation: substtml.c:vout_display_SendEventMousePressed Unexecuted instantiation: ty.c:vout_display_SendEventMousePressed Unexecuted instantiation: encvtt.c:vout_display_SendEventMousePressed Unexecuted instantiation: webvtt.c:vout_display_SendEventMousePressed Unexecuted instantiation: subsvtt.c:vout_display_SendEventMousePressed Unexecuted instantiation: a52.c:vout_display_SendEventMousePressed Unexecuted instantiation: copy.c:vout_display_SendEventMousePressed Unexecuted instantiation: dts.c:vout_display_SendEventMousePressed Unexecuted instantiation: h264.c:vout_display_SendEventMousePressed Unexecuted instantiation: hxxx_common.c:vout_display_SendEventMousePressed Unexecuted instantiation: hevc.c:vout_display_SendEventMousePressed Unexecuted instantiation: mlp.c:vout_display_SendEventMousePressed Unexecuted instantiation: mpeg4audio.c:vout_display_SendEventMousePressed Unexecuted instantiation: mpeg4video.c:vout_display_SendEventMousePressed Unexecuted instantiation: mpegaudio.c:vout_display_SendEventMousePressed Unexecuted instantiation: mpegvideo.c:vout_display_SendEventMousePressed Unexecuted instantiation: vc1.c:vout_display_SendEventMousePressed Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_SendEventMousePressed(vout_display_t*, int) Unexecuted instantiation: adpcm.c:vout_display_SendEventMousePressed Unexecuted instantiation: aes3.c:vout_display_SendEventMousePressed Unexecuted instantiation: araw.c:vout_display_SendEventMousePressed Unexecuted instantiation: g711.c:vout_display_SendEventMousePressed Unexecuted instantiation: lpcm.c:vout_display_SendEventMousePressed Unexecuted instantiation: uleaddvaudio.c:vout_display_SendEventMousePressed Unexecuted instantiation: rawvideo.c:vout_display_SendEventMousePressed Unexecuted instantiation: cc.c:vout_display_SendEventMousePressed Unexecuted instantiation: cea708.c:vout_display_SendEventMousePressed Unexecuted instantiation: cvdsub.c:vout_display_SendEventMousePressed Unexecuted instantiation: dvbsub.c:vout_display_SendEventMousePressed Unexecuted instantiation: scte18.c:vout_display_SendEventMousePressed Unexecuted instantiation: scte27.c:vout_display_SendEventMousePressed Unexecuted instantiation: spudec.c:vout_display_SendEventMousePressed Unexecuted instantiation: parse.c:vout_display_SendEventMousePressed Unexecuted instantiation: stl.c:vout_display_SendEventMousePressed Unexecuted instantiation: subsdec.c:vout_display_SendEventMousePressed Unexecuted instantiation: subsusf.c:vout_display_SendEventMousePressed Unexecuted instantiation: svcdsub.c:vout_display_SendEventMousePressed Unexecuted instantiation: textst.c:vout_display_SendEventMousePressed Unexecuted instantiation: substx3g.c:vout_display_SendEventMousePressed Unexecuted instantiation: decoder_device.c:vout_display_SendEventMousePressed Unexecuted instantiation: decoder_helpers.c:vout_display_SendEventMousePressed Unexecuted instantiation: demux.c:vout_display_SendEventMousePressed Unexecuted instantiation: input.c:vout_display_SendEventMousePressed Unexecuted instantiation: player.c:vout_display_SendEventMousePressed Unexecuted instantiation: aout.c:vout_display_SendEventMousePressed Unexecuted instantiation: vout.c:vout_display_SendEventMousePressed Unexecuted instantiation: osd.c:vout_display_SendEventMousePressed Unexecuted instantiation: resource.c:vout_display_SendEventMousePressed Unexecuted instantiation: common.c:vout_display_SendEventMousePressed Unexecuted instantiation: dec.c:vout_display_SendEventMousePressed Unexecuted instantiation: filters.c:vout_display_SendEventMousePressed Unexecuted instantiation: meter.c:vout_display_SendEventMousePressed Unexecuted instantiation: output.c:vout_display_SendEventMousePressed Unexecuted instantiation: volume.c:vout_display_SendEventMousePressed Unexecuted instantiation: video_output.c:vout_display_SendEventMousePressed Unexecuted instantiation: video_text.c:vout_display_SendEventMousePressed Unexecuted instantiation: video_widgets.c:vout_display_SendEventMousePressed Unexecuted instantiation: vout_subpictures.c:vout_display_SendEventMousePressed Unexecuted instantiation: video_window.c:vout_display_SendEventMousePressed Unexecuted instantiation: vout_intf.c:vout_display_SendEventMousePressed Unexecuted instantiation: vout_wrapper.c:vout_display_SendEventMousePressed Unexecuted instantiation: image.c:vout_display_SendEventMousePressed Unexecuted instantiation: objects.c:vout_display_SendEventMousePressed Unexecuted instantiation: filter.c:vout_display_SendEventMousePressed Unexecuted instantiation: filter_chain.c:vout_display_SendEventMousePressed Unexecuted instantiation: subpicture.c:vout_display_SendEventMousePressed Unexecuted instantiation: stream_output.c:vout_display_SendEventMousePressed Unexecuted instantiation: libvlc-module.c:vout_display_SendEventMousePressed Unexecuted instantiation: es_out.c:vout_display_SendEventMousePressed Unexecuted instantiation: control.c:vout_display_SendEventMousePressed Unexecuted instantiation: display.c:vout_display_SendEventMousePressed Unexecuted instantiation: interlacing.c:vout_display_SendEventMousePressed Unexecuted instantiation: snapshot.c:vout_display_SendEventMousePressed |
494 | | static inline void vout_display_SendEventMouseReleased(vout_display_t *vd, int button) |
495 | 0 | { |
496 | 0 | vlc_window_ReportMouseReleased(vd->cfg->window, button); |
497 | 0 | } Unexecuted instantiation: decoder.c:vout_display_SendEventMouseReleased Unexecuted instantiation: es.c:vout_display_SendEventMouseReleased Unexecuted instantiation: flac.c:vout_display_SendEventMouseReleased Unexecuted instantiation: h26x.c:vout_display_SendEventMouseReleased Unexecuted instantiation: essetup.c:vout_display_SendEventMouseReleased Unexecuted instantiation: tta.c:vout_display_SendEventMouseReleased Unexecuted instantiation: encttml.c:vout_display_SendEventMouseReleased Unexecuted instantiation: substtml.c:vout_display_SendEventMouseReleased Unexecuted instantiation: ty.c:vout_display_SendEventMouseReleased Unexecuted instantiation: encvtt.c:vout_display_SendEventMouseReleased Unexecuted instantiation: webvtt.c:vout_display_SendEventMouseReleased Unexecuted instantiation: subsvtt.c:vout_display_SendEventMouseReleased Unexecuted instantiation: a52.c:vout_display_SendEventMouseReleased Unexecuted instantiation: copy.c:vout_display_SendEventMouseReleased Unexecuted instantiation: dts.c:vout_display_SendEventMouseReleased Unexecuted instantiation: h264.c:vout_display_SendEventMouseReleased Unexecuted instantiation: hxxx_common.c:vout_display_SendEventMouseReleased Unexecuted instantiation: hevc.c:vout_display_SendEventMouseReleased Unexecuted instantiation: mlp.c:vout_display_SendEventMouseReleased Unexecuted instantiation: mpeg4audio.c:vout_display_SendEventMouseReleased Unexecuted instantiation: mpeg4video.c:vout_display_SendEventMouseReleased Unexecuted instantiation: mpegaudio.c:vout_display_SendEventMouseReleased Unexecuted instantiation: mpegvideo.c:vout_display_SendEventMouseReleased Unexecuted instantiation: vc1.c:vout_display_SendEventMouseReleased Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_SendEventMouseReleased(vout_display_t*, int) Unexecuted instantiation: adpcm.c:vout_display_SendEventMouseReleased Unexecuted instantiation: aes3.c:vout_display_SendEventMouseReleased Unexecuted instantiation: araw.c:vout_display_SendEventMouseReleased Unexecuted instantiation: g711.c:vout_display_SendEventMouseReleased Unexecuted instantiation: lpcm.c:vout_display_SendEventMouseReleased Unexecuted instantiation: uleaddvaudio.c:vout_display_SendEventMouseReleased Unexecuted instantiation: rawvideo.c:vout_display_SendEventMouseReleased Unexecuted instantiation: cc.c:vout_display_SendEventMouseReleased Unexecuted instantiation: cea708.c:vout_display_SendEventMouseReleased Unexecuted instantiation: cvdsub.c:vout_display_SendEventMouseReleased Unexecuted instantiation: dvbsub.c:vout_display_SendEventMouseReleased Unexecuted instantiation: scte18.c:vout_display_SendEventMouseReleased Unexecuted instantiation: scte27.c:vout_display_SendEventMouseReleased Unexecuted instantiation: spudec.c:vout_display_SendEventMouseReleased Unexecuted instantiation: parse.c:vout_display_SendEventMouseReleased Unexecuted instantiation: stl.c:vout_display_SendEventMouseReleased Unexecuted instantiation: subsdec.c:vout_display_SendEventMouseReleased Unexecuted instantiation: subsusf.c:vout_display_SendEventMouseReleased Unexecuted instantiation: svcdsub.c:vout_display_SendEventMouseReleased Unexecuted instantiation: textst.c:vout_display_SendEventMouseReleased Unexecuted instantiation: substx3g.c:vout_display_SendEventMouseReleased Unexecuted instantiation: decoder_device.c:vout_display_SendEventMouseReleased Unexecuted instantiation: decoder_helpers.c:vout_display_SendEventMouseReleased Unexecuted instantiation: demux.c:vout_display_SendEventMouseReleased Unexecuted instantiation: input.c:vout_display_SendEventMouseReleased Unexecuted instantiation: player.c:vout_display_SendEventMouseReleased Unexecuted instantiation: aout.c:vout_display_SendEventMouseReleased Unexecuted instantiation: vout.c:vout_display_SendEventMouseReleased Unexecuted instantiation: osd.c:vout_display_SendEventMouseReleased Unexecuted instantiation: resource.c:vout_display_SendEventMouseReleased Unexecuted instantiation: common.c:vout_display_SendEventMouseReleased Unexecuted instantiation: dec.c:vout_display_SendEventMouseReleased Unexecuted instantiation: filters.c:vout_display_SendEventMouseReleased Unexecuted instantiation: meter.c:vout_display_SendEventMouseReleased Unexecuted instantiation: output.c:vout_display_SendEventMouseReleased Unexecuted instantiation: volume.c:vout_display_SendEventMouseReleased Unexecuted instantiation: video_output.c:vout_display_SendEventMouseReleased Unexecuted instantiation: video_text.c:vout_display_SendEventMouseReleased Unexecuted instantiation: video_widgets.c:vout_display_SendEventMouseReleased Unexecuted instantiation: vout_subpictures.c:vout_display_SendEventMouseReleased Unexecuted instantiation: video_window.c:vout_display_SendEventMouseReleased Unexecuted instantiation: vout_intf.c:vout_display_SendEventMouseReleased Unexecuted instantiation: vout_wrapper.c:vout_display_SendEventMouseReleased Unexecuted instantiation: image.c:vout_display_SendEventMouseReleased Unexecuted instantiation: objects.c:vout_display_SendEventMouseReleased Unexecuted instantiation: filter.c:vout_display_SendEventMouseReleased Unexecuted instantiation: filter_chain.c:vout_display_SendEventMouseReleased Unexecuted instantiation: subpicture.c:vout_display_SendEventMouseReleased Unexecuted instantiation: stream_output.c:vout_display_SendEventMouseReleased Unexecuted instantiation: libvlc-module.c:vout_display_SendEventMouseReleased Unexecuted instantiation: es_out.c:vout_display_SendEventMouseReleased Unexecuted instantiation: control.c:vout_display_SendEventMouseReleased Unexecuted instantiation: display.c:vout_display_SendEventMouseReleased Unexecuted instantiation: interlacing.c:vout_display_SendEventMouseReleased Unexecuted instantiation: snapshot.c:vout_display_SendEventMouseReleased |
498 | | static inline void vout_display_SendEventViewpointMoved(vout_display_t *vd, |
499 | | const vlc_viewpoint_t *vp) |
500 | 0 | { |
501 | 0 | if (vd->owner.viewpoint_moved) |
502 | 0 | vd->owner.viewpoint_moved(vd->owner.sys, vp); |
503 | 0 | } Unexecuted instantiation: decoder.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: es.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: flac.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: h26x.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: essetup.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: tta.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: encttml.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: substtml.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: ty.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: encvtt.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: webvtt.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: subsvtt.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: a52.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: copy.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: dts.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: h264.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: hxxx_common.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: hevc.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: mlp.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: mpeg4audio.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: mpeg4video.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: mpegaudio.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: mpegvideo.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: vc1.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_SendEventViewpointMoved(vout_display_t*, vlc_viewpoint_t const*) Unexecuted instantiation: adpcm.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: aes3.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: araw.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: g711.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: lpcm.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: uleaddvaudio.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: rawvideo.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: cc.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: cea708.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: cvdsub.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: dvbsub.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: scte18.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: scte27.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: spudec.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: parse.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: stl.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: subsdec.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: subsusf.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: svcdsub.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: textst.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: substx3g.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: decoder_device.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: decoder_helpers.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: demux.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: input.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: player.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: aout.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: vout.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: osd.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: resource.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: common.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: dec.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: filters.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: meter.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: output.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: volume.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: video_output.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: video_text.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: video_widgets.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: vout_subpictures.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: video_window.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: vout_intf.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: vout_wrapper.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: image.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: objects.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: filter.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: filter_chain.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: subpicture.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: stream_output.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: libvlc-module.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: es_out.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: control.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: display.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: interlacing.c:vout_display_SendEventViewpointMoved Unexecuted instantiation: snapshot.c:vout_display_SendEventViewpointMoved |
504 | | |
505 | | /** |
506 | | * Helper function that applies the necessary transforms to the mouse position |
507 | | * and then calls vout_display_SendEventMouseMoved. |
508 | | * |
509 | | * \param vd vout_display_t. |
510 | | * \param m_x Mouse x position (relative to place, origin is top left). |
511 | | * \param m_y Mouse y position (relative to place, origin is top left). |
512 | | */ |
513 | | static inline void vout_display_SendMouseMovedDisplayCoordinates(vout_display_t *vd, int m_x, int m_y) |
514 | 0 | { |
515 | 0 | vlc_window_ReportMouseMoved(vd->cfg->window, m_x, m_y); |
516 | 0 | } Unexecuted instantiation: decoder.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: es.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: flac.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: h26x.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: essetup.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: tta.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: encttml.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: substtml.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: ty.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: encvtt.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: webvtt.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: subsvtt.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: a52.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: copy.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: dts.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: h264.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: hxxx_common.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: hevc.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: mlp.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: mpeg4audio.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: mpeg4video.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: mpegaudio.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: mpegvideo.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: vc1.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_SendMouseMovedDisplayCoordinates(vout_display_t*, int, int) Unexecuted instantiation: adpcm.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: aes3.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: araw.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: g711.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: lpcm.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: uleaddvaudio.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: rawvideo.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: cc.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: cea708.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: cvdsub.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: dvbsub.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: scte18.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: scte27.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: spudec.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: parse.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: stl.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: subsdec.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: subsusf.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: svcdsub.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: textst.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: substx3g.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: decoder_device.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: decoder_helpers.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: demux.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: input.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: player.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: aout.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: vout.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: osd.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: resource.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: common.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: dec.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: filters.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: meter.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: output.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: volume.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: video_output.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: video_text.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: video_widgets.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: vout_subpictures.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: video_window.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: vout_intf.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: vout_wrapper.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: image.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: objects.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: filter.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: filter_chain.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: subpicture.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: stream_output.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: libvlc-module.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: es_out.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: control.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: display.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: interlacing.c:vout_display_SendMouseMovedDisplayCoordinates Unexecuted instantiation: snapshot.c:vout_display_SendMouseMovedDisplayCoordinates |
517 | | |
518 | | static inline bool vout_display_cfg_IsWindowed(const vout_display_cfg_t *cfg) |
519 | 0 | { |
520 | 0 | return cfg->window->type != VLC_WINDOW_TYPE_DUMMY; |
521 | 0 | } Unexecuted instantiation: decoder.c:vout_display_cfg_IsWindowed Unexecuted instantiation: es.c:vout_display_cfg_IsWindowed Unexecuted instantiation: flac.c:vout_display_cfg_IsWindowed Unexecuted instantiation: h26x.c:vout_display_cfg_IsWindowed Unexecuted instantiation: essetup.c:vout_display_cfg_IsWindowed Unexecuted instantiation: tta.c:vout_display_cfg_IsWindowed Unexecuted instantiation: encttml.c:vout_display_cfg_IsWindowed Unexecuted instantiation: substtml.c:vout_display_cfg_IsWindowed Unexecuted instantiation: ty.c:vout_display_cfg_IsWindowed Unexecuted instantiation: encvtt.c:vout_display_cfg_IsWindowed Unexecuted instantiation: webvtt.c:vout_display_cfg_IsWindowed Unexecuted instantiation: subsvtt.c:vout_display_cfg_IsWindowed Unexecuted instantiation: a52.c:vout_display_cfg_IsWindowed Unexecuted instantiation: copy.c:vout_display_cfg_IsWindowed Unexecuted instantiation: dts.c:vout_display_cfg_IsWindowed Unexecuted instantiation: h264.c:vout_display_cfg_IsWindowed Unexecuted instantiation: hxxx_common.c:vout_display_cfg_IsWindowed Unexecuted instantiation: hevc.c:vout_display_cfg_IsWindowed Unexecuted instantiation: mlp.c:vout_display_cfg_IsWindowed Unexecuted instantiation: mpeg4audio.c:vout_display_cfg_IsWindowed Unexecuted instantiation: mpeg4video.c:vout_display_cfg_IsWindowed Unexecuted instantiation: mpegaudio.c:vout_display_cfg_IsWindowed Unexecuted instantiation: mpegvideo.c:vout_display_cfg_IsWindowed Unexecuted instantiation: vc1.c:vout_display_cfg_IsWindowed Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_cfg_IsWindowed(vout_display_cfg const*) Unexecuted instantiation: adpcm.c:vout_display_cfg_IsWindowed Unexecuted instantiation: aes3.c:vout_display_cfg_IsWindowed Unexecuted instantiation: araw.c:vout_display_cfg_IsWindowed Unexecuted instantiation: g711.c:vout_display_cfg_IsWindowed Unexecuted instantiation: lpcm.c:vout_display_cfg_IsWindowed Unexecuted instantiation: uleaddvaudio.c:vout_display_cfg_IsWindowed Unexecuted instantiation: rawvideo.c:vout_display_cfg_IsWindowed Unexecuted instantiation: cc.c:vout_display_cfg_IsWindowed Unexecuted instantiation: cea708.c:vout_display_cfg_IsWindowed Unexecuted instantiation: cvdsub.c:vout_display_cfg_IsWindowed Unexecuted instantiation: dvbsub.c:vout_display_cfg_IsWindowed Unexecuted instantiation: scte18.c:vout_display_cfg_IsWindowed Unexecuted instantiation: scte27.c:vout_display_cfg_IsWindowed Unexecuted instantiation: spudec.c:vout_display_cfg_IsWindowed Unexecuted instantiation: parse.c:vout_display_cfg_IsWindowed Unexecuted instantiation: stl.c:vout_display_cfg_IsWindowed Unexecuted instantiation: subsdec.c:vout_display_cfg_IsWindowed Unexecuted instantiation: subsusf.c:vout_display_cfg_IsWindowed Unexecuted instantiation: svcdsub.c:vout_display_cfg_IsWindowed Unexecuted instantiation: textst.c:vout_display_cfg_IsWindowed Unexecuted instantiation: substx3g.c:vout_display_cfg_IsWindowed Unexecuted instantiation: decoder_device.c:vout_display_cfg_IsWindowed Unexecuted instantiation: decoder_helpers.c:vout_display_cfg_IsWindowed Unexecuted instantiation: demux.c:vout_display_cfg_IsWindowed Unexecuted instantiation: input.c:vout_display_cfg_IsWindowed Unexecuted instantiation: player.c:vout_display_cfg_IsWindowed Unexecuted instantiation: aout.c:vout_display_cfg_IsWindowed Unexecuted instantiation: vout.c:vout_display_cfg_IsWindowed Unexecuted instantiation: osd.c:vout_display_cfg_IsWindowed Unexecuted instantiation: resource.c:vout_display_cfg_IsWindowed Unexecuted instantiation: common.c:vout_display_cfg_IsWindowed Unexecuted instantiation: dec.c:vout_display_cfg_IsWindowed Unexecuted instantiation: filters.c:vout_display_cfg_IsWindowed Unexecuted instantiation: meter.c:vout_display_cfg_IsWindowed Unexecuted instantiation: output.c:vout_display_cfg_IsWindowed Unexecuted instantiation: volume.c:vout_display_cfg_IsWindowed Unexecuted instantiation: video_output.c:vout_display_cfg_IsWindowed Unexecuted instantiation: video_text.c:vout_display_cfg_IsWindowed Unexecuted instantiation: video_widgets.c:vout_display_cfg_IsWindowed Unexecuted instantiation: vout_subpictures.c:vout_display_cfg_IsWindowed Unexecuted instantiation: video_window.c:vout_display_cfg_IsWindowed Unexecuted instantiation: vout_intf.c:vout_display_cfg_IsWindowed Unexecuted instantiation: vout_wrapper.c:vout_display_cfg_IsWindowed Unexecuted instantiation: image.c:vout_display_cfg_IsWindowed Unexecuted instantiation: objects.c:vout_display_cfg_IsWindowed Unexecuted instantiation: filter.c:vout_display_cfg_IsWindowed Unexecuted instantiation: filter_chain.c:vout_display_cfg_IsWindowed Unexecuted instantiation: subpicture.c:vout_display_cfg_IsWindowed Unexecuted instantiation: stream_output.c:vout_display_cfg_IsWindowed Unexecuted instantiation: libvlc-module.c:vout_display_cfg_IsWindowed Unexecuted instantiation: es_out.c:vout_display_cfg_IsWindowed Unexecuted instantiation: control.c:vout_display_cfg_IsWindowed Unexecuted instantiation: display.c:vout_display_cfg_IsWindowed Unexecuted instantiation: interlacing.c:vout_display_cfg_IsWindowed Unexecuted instantiation: snapshot.c:vout_display_cfg_IsWindowed |
522 | | |
523 | | static inline int vout_display_ChangeProjection(vout_display_t *vd, video_projection_mode_t projection) |
524 | 0 | { |
525 | 0 | if (vd->ops->change_source_projection == NULL) |
526 | 0 | return VLC_ENOTSUP; |
527 | 0 | return vd->ops->change_source_projection(vd, projection); |
528 | 0 | } Unexecuted instantiation: decoder.c:vout_display_ChangeProjection Unexecuted instantiation: es.c:vout_display_ChangeProjection Unexecuted instantiation: flac.c:vout_display_ChangeProjection Unexecuted instantiation: h26x.c:vout_display_ChangeProjection Unexecuted instantiation: essetup.c:vout_display_ChangeProjection Unexecuted instantiation: tta.c:vout_display_ChangeProjection Unexecuted instantiation: encttml.c:vout_display_ChangeProjection Unexecuted instantiation: substtml.c:vout_display_ChangeProjection Unexecuted instantiation: ty.c:vout_display_ChangeProjection Unexecuted instantiation: encvtt.c:vout_display_ChangeProjection Unexecuted instantiation: webvtt.c:vout_display_ChangeProjection Unexecuted instantiation: subsvtt.c:vout_display_ChangeProjection Unexecuted instantiation: a52.c:vout_display_ChangeProjection Unexecuted instantiation: copy.c:vout_display_ChangeProjection Unexecuted instantiation: dts.c:vout_display_ChangeProjection Unexecuted instantiation: h264.c:vout_display_ChangeProjection Unexecuted instantiation: hxxx_common.c:vout_display_ChangeProjection Unexecuted instantiation: hevc.c:vout_display_ChangeProjection Unexecuted instantiation: mlp.c:vout_display_ChangeProjection Unexecuted instantiation: mpeg4audio.c:vout_display_ChangeProjection Unexecuted instantiation: mpeg4video.c:vout_display_ChangeProjection Unexecuted instantiation: mpegaudio.c:vout_display_ChangeProjection Unexecuted instantiation: mpegvideo.c:vout_display_ChangeProjection Unexecuted instantiation: vc1.c:vout_display_ChangeProjection Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_ChangeProjection(vout_display_t*, video_projection_mode_t) Unexecuted instantiation: adpcm.c:vout_display_ChangeProjection Unexecuted instantiation: aes3.c:vout_display_ChangeProjection Unexecuted instantiation: araw.c:vout_display_ChangeProjection Unexecuted instantiation: g711.c:vout_display_ChangeProjection Unexecuted instantiation: lpcm.c:vout_display_ChangeProjection Unexecuted instantiation: uleaddvaudio.c:vout_display_ChangeProjection Unexecuted instantiation: rawvideo.c:vout_display_ChangeProjection Unexecuted instantiation: cc.c:vout_display_ChangeProjection Unexecuted instantiation: cea708.c:vout_display_ChangeProjection Unexecuted instantiation: cvdsub.c:vout_display_ChangeProjection Unexecuted instantiation: dvbsub.c:vout_display_ChangeProjection Unexecuted instantiation: scte18.c:vout_display_ChangeProjection Unexecuted instantiation: scte27.c:vout_display_ChangeProjection Unexecuted instantiation: spudec.c:vout_display_ChangeProjection Unexecuted instantiation: parse.c:vout_display_ChangeProjection Unexecuted instantiation: stl.c:vout_display_ChangeProjection Unexecuted instantiation: subsdec.c:vout_display_ChangeProjection Unexecuted instantiation: subsusf.c:vout_display_ChangeProjection Unexecuted instantiation: svcdsub.c:vout_display_ChangeProjection Unexecuted instantiation: textst.c:vout_display_ChangeProjection Unexecuted instantiation: substx3g.c:vout_display_ChangeProjection Unexecuted instantiation: decoder_device.c:vout_display_ChangeProjection Unexecuted instantiation: decoder_helpers.c:vout_display_ChangeProjection Unexecuted instantiation: demux.c:vout_display_ChangeProjection Unexecuted instantiation: input.c:vout_display_ChangeProjection Unexecuted instantiation: player.c:vout_display_ChangeProjection Unexecuted instantiation: aout.c:vout_display_ChangeProjection Unexecuted instantiation: vout.c:vout_display_ChangeProjection Unexecuted instantiation: osd.c:vout_display_ChangeProjection Unexecuted instantiation: resource.c:vout_display_ChangeProjection Unexecuted instantiation: common.c:vout_display_ChangeProjection Unexecuted instantiation: dec.c:vout_display_ChangeProjection Unexecuted instantiation: filters.c:vout_display_ChangeProjection Unexecuted instantiation: meter.c:vout_display_ChangeProjection Unexecuted instantiation: output.c:vout_display_ChangeProjection Unexecuted instantiation: volume.c:vout_display_ChangeProjection Unexecuted instantiation: video_output.c:vout_display_ChangeProjection Unexecuted instantiation: video_text.c:vout_display_ChangeProjection Unexecuted instantiation: video_widgets.c:vout_display_ChangeProjection Unexecuted instantiation: vout_subpictures.c:vout_display_ChangeProjection Unexecuted instantiation: video_window.c:vout_display_ChangeProjection Unexecuted instantiation: vout_intf.c:vout_display_ChangeProjection Unexecuted instantiation: vout_wrapper.c:vout_display_ChangeProjection Unexecuted instantiation: image.c:vout_display_ChangeProjection Unexecuted instantiation: objects.c:vout_display_ChangeProjection Unexecuted instantiation: filter.c:vout_display_ChangeProjection Unexecuted instantiation: filter_chain.c:vout_display_ChangeProjection Unexecuted instantiation: subpicture.c:vout_display_ChangeProjection Unexecuted instantiation: stream_output.c:vout_display_ChangeProjection Unexecuted instantiation: libvlc-module.c:vout_display_ChangeProjection Unexecuted instantiation: es_out.c:vout_display_ChangeProjection Unexecuted instantiation: control.c:vout_display_ChangeProjection Unexecuted instantiation: display.c:vout_display_ChangeProjection Unexecuted instantiation: interlacing.c:vout_display_ChangeProjection Unexecuted instantiation: snapshot.c:vout_display_ChangeProjection |
529 | | |
530 | | /** |
531 | | * Computes the default display size given the source and |
532 | | * the display configuration. |
533 | | * |
534 | | * This assumes that the picture is already cropped. |
535 | | */ |
536 | | VLC_API |
537 | | void vout_display_GetDefaultDisplaySize(unsigned *width, unsigned *height, |
538 | | const video_format_t *source, |
539 | | const struct vout_display_placement *); |
540 | | |
541 | | /** |
542 | | * Compares two \ref vout_display_place_t. |
543 | | */ |
544 | | static inline bool vout_display_PlaceEquals(const vout_display_place_t *p1, |
545 | | const vout_display_place_t *p2) |
546 | 0 | { |
547 | 0 | return p1->x == p2->x && p1->width == p2->width && |
548 | 0 | p1->y == p2->y && p1->height == p2->height; |
549 | 0 | } Unexecuted instantiation: decoder.c:vout_display_PlaceEquals Unexecuted instantiation: es.c:vout_display_PlaceEquals Unexecuted instantiation: flac.c:vout_display_PlaceEquals Unexecuted instantiation: h26x.c:vout_display_PlaceEquals Unexecuted instantiation: essetup.c:vout_display_PlaceEquals Unexecuted instantiation: tta.c:vout_display_PlaceEquals Unexecuted instantiation: encttml.c:vout_display_PlaceEquals Unexecuted instantiation: substtml.c:vout_display_PlaceEquals Unexecuted instantiation: ty.c:vout_display_PlaceEquals Unexecuted instantiation: encvtt.c:vout_display_PlaceEquals Unexecuted instantiation: webvtt.c:vout_display_PlaceEquals Unexecuted instantiation: subsvtt.c:vout_display_PlaceEquals Unexecuted instantiation: a52.c:vout_display_PlaceEquals Unexecuted instantiation: copy.c:vout_display_PlaceEquals Unexecuted instantiation: dts.c:vout_display_PlaceEquals Unexecuted instantiation: h264.c:vout_display_PlaceEquals Unexecuted instantiation: hxxx_common.c:vout_display_PlaceEquals Unexecuted instantiation: hevc.c:vout_display_PlaceEquals Unexecuted instantiation: mlp.c:vout_display_PlaceEquals Unexecuted instantiation: mpeg4audio.c:vout_display_PlaceEquals Unexecuted instantiation: mpeg4video.c:vout_display_PlaceEquals Unexecuted instantiation: mpegaudio.c:vout_display_PlaceEquals Unexecuted instantiation: mpegvideo.c:vout_display_PlaceEquals Unexecuted instantiation: vc1.c:vout_display_PlaceEquals Unexecuted instantiation: chapter_command_dvd.cpp:vout_display_PlaceEquals(vout_display_place_t const*, vout_display_place_t const*) Unexecuted instantiation: adpcm.c:vout_display_PlaceEquals Unexecuted instantiation: aes3.c:vout_display_PlaceEquals Unexecuted instantiation: araw.c:vout_display_PlaceEquals Unexecuted instantiation: g711.c:vout_display_PlaceEquals Unexecuted instantiation: lpcm.c:vout_display_PlaceEquals Unexecuted instantiation: uleaddvaudio.c:vout_display_PlaceEquals Unexecuted instantiation: rawvideo.c:vout_display_PlaceEquals Unexecuted instantiation: cc.c:vout_display_PlaceEquals Unexecuted instantiation: cea708.c:vout_display_PlaceEquals Unexecuted instantiation: cvdsub.c:vout_display_PlaceEquals Unexecuted instantiation: dvbsub.c:vout_display_PlaceEquals Unexecuted instantiation: scte18.c:vout_display_PlaceEquals Unexecuted instantiation: scte27.c:vout_display_PlaceEquals Unexecuted instantiation: spudec.c:vout_display_PlaceEquals Unexecuted instantiation: parse.c:vout_display_PlaceEquals Unexecuted instantiation: stl.c:vout_display_PlaceEquals Unexecuted instantiation: subsdec.c:vout_display_PlaceEquals Unexecuted instantiation: subsusf.c:vout_display_PlaceEquals Unexecuted instantiation: svcdsub.c:vout_display_PlaceEquals Unexecuted instantiation: textst.c:vout_display_PlaceEquals Unexecuted instantiation: substx3g.c:vout_display_PlaceEquals Unexecuted instantiation: decoder_device.c:vout_display_PlaceEquals Unexecuted instantiation: decoder_helpers.c:vout_display_PlaceEquals Unexecuted instantiation: demux.c:vout_display_PlaceEquals Unexecuted instantiation: input.c:vout_display_PlaceEquals Unexecuted instantiation: player.c:vout_display_PlaceEquals Unexecuted instantiation: aout.c:vout_display_PlaceEquals Unexecuted instantiation: vout.c:vout_display_PlaceEquals Unexecuted instantiation: osd.c:vout_display_PlaceEquals Unexecuted instantiation: resource.c:vout_display_PlaceEquals Unexecuted instantiation: common.c:vout_display_PlaceEquals Unexecuted instantiation: dec.c:vout_display_PlaceEquals Unexecuted instantiation: filters.c:vout_display_PlaceEquals Unexecuted instantiation: meter.c:vout_display_PlaceEquals Unexecuted instantiation: output.c:vout_display_PlaceEquals Unexecuted instantiation: volume.c:vout_display_PlaceEquals Unexecuted instantiation: video_output.c:vout_display_PlaceEquals Unexecuted instantiation: video_text.c:vout_display_PlaceEquals Unexecuted instantiation: video_widgets.c:vout_display_PlaceEquals Unexecuted instantiation: vout_subpictures.c:vout_display_PlaceEquals Unexecuted instantiation: video_window.c:vout_display_PlaceEquals Unexecuted instantiation: vout_intf.c:vout_display_PlaceEquals Unexecuted instantiation: vout_wrapper.c:vout_display_PlaceEquals Unexecuted instantiation: image.c:vout_display_PlaceEquals Unexecuted instantiation: objects.c:vout_display_PlaceEquals Unexecuted instantiation: filter.c:vout_display_PlaceEquals Unexecuted instantiation: filter_chain.c:vout_display_PlaceEquals Unexecuted instantiation: subpicture.c:vout_display_PlaceEquals Unexecuted instantiation: stream_output.c:vout_display_PlaceEquals Unexecuted instantiation: libvlc-module.c:vout_display_PlaceEquals Unexecuted instantiation: es_out.c:vout_display_PlaceEquals Unexecuted instantiation: control.c:vout_display_PlaceEquals Unexecuted instantiation: display.c:vout_display_PlaceEquals Unexecuted instantiation: interlacing.c:vout_display_PlaceEquals Unexecuted instantiation: snapshot.c:vout_display_PlaceEquals |
550 | | |
551 | | /** |
552 | | * Computes the intended picture placement inside the display. |
553 | | * |
554 | | * This function computes where to show a picture inside the display with |
555 | | * respect to the provided parameters, and returns the result |
556 | | * in a \ref vout_display_place_t structure. |
557 | | * |
558 | | * This assumes that cropping is done by an external mean. |
559 | | * |
560 | | * \param place Storage space for the picture placement [OUT] |
561 | | * \param source Video source format |
562 | | * \param cfg Display configuration |
563 | | */ |
564 | | VLC_API |
565 | | void vout_display_PlacePicture(vout_display_place_t *restrict place, |
566 | | const video_format_t *restrict source, |
567 | | const struct vout_display_placement *cfg); |
568 | | |
569 | | /** |
570 | | * Translates coordinates. |
571 | | * |
572 | | * This translates coordinates from window pixel coordinate space to |
573 | | * original video sample coordinate space. |
574 | | * |
575 | | * \param x pointer to abscissa to be translated |
576 | | * \param y pointer to ordinate to be translated |
577 | | * \param fmt video format |
578 | | * \param dp display configuration |
579 | | */ |
580 | | void vout_display_TranslateCoordinates(int *x, int *y, |
581 | | const video_format_t *fmt, |
582 | | const struct vout_display_placement *dp); |
583 | | |
584 | | /** @} */ |
585 | | #endif /* VLC_VOUT_DISPLAY_H */ |