VLC  4.0.0-dev
snapshot.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * snapshot.h : vout internal snapshot
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 LIBVLC_VOUT_INTERNAL_SNAPSHOT_H
24 #define LIBVLC_VOUT_INTERNAL_SNAPSHOT_H
25 
26 #include <vlc_picture.h>
27 
29 
30 /* */
33 
35 
36 /* */
38 
39 /**
40  * It tells if they are pending snapshot request
41  */
43 
44 /**
45  * It set the picture used to create the snapshots.
46  *
47  * The given picture is cloned.
48  * If p_fmt is non NULL it will override the format of the p_picture (mainly
49  * used because of aspect/crop problems).
50  */
52 
53 /**
54  * This function will return the directory used for snapshots
55  */
56 char *vout_snapshot_GetDirectory(void);
57 
58 typedef struct {
60  int sequence;
61  char *path;
62  char *format;
63  char *prefix_fmt;
65 
66 /**
67  * This function will write an image to the disk an return the file name created.
68  */
69 int vout_snapshot_SaveImage(char **name, int *sequential,
70  const block_t *image,
71  vout_thread_t *p_vout,
72  const vout_snapshot_save_cfg_t *cfg);
73 
74 #endif
This file defines picture structures and functions in vlc.
Video picture.
Definition: vlc_picture.h:127
Definition: snapshot.h:58
char * prefix_fmt
Definition: snapshot.h:63
picture_t * vout_snapshot_Get(vout_snapshot_t *, vlc_tick_t timeout)
Definition: snapshot.c:97
int vout_snapshot_SaveImage(char **name, int *sequential, const block_t *image, vout_thread_t *p_vout, const vout_snapshot_save_cfg_t *cfg)
This function will write an image to the disk an return the file name created.
Definition: snapshot.c:169
char * vout_snapshot_GetDirectory(void)
This function will return the directory used for snapshots.
Definition: snapshot.c:164
bool is_sequential
Definition: snapshot.h:59
void vout_snapshot_End(vout_snapshot_t *)
Definition: snapshot.c:83
int sequence
Definition: snapshot.h:60
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
Video output thread descriptor.
Definition: vlc_vout.h:60
video format description
Definition: vlc_es.h:349
bool vout_snapshot_IsRequested(vout_snapshot_t *)
It tells if they are pending snapshot request.
Definition: snapshot.c:125
char * format
Definition: snapshot.h:62
const char name[16]
Definition: httpd.c:1269
void vout_snapshot_Destroy(vout_snapshot_t *)
Definition: snapshot.c:68
char * path
Definition: snapshot.h:61
vout_snapshot_t * vout_snapshot_New(void)
Definition: snapshot.c:53
Definition: vlc_block.h:117
Definition: snapshot.c:43
void vout_snapshot_Set(vout_snapshot_t *, const video_format_t *, picture_t *)
It set the picture used to create the snapshots.
Definition: snapshot.c:138