24#ifndef VLC_PREPARSER_H
25#define VLC_PREPARSER_H 1
47#define VLC_PREPARSER_REQ_ID_INVALID 0
49#define VLC_PREPARSER_TYPE_PARSE 0x01
50#define VLC_PREPARSER_TYPE_FETCHMETA_LOCAL 0x02
51#define VLC_PREPARSER_TYPE_FETCHMETA_NET 0x04
52#define VLC_PREPARSER_TYPE_THUMBNAIL 0x08
53#define VLC_PREPARSER_TYPE_THUMBNAIL_TO_FILES 0x10
54#define VLC_PREPARSER_TYPE_FETCHMETA_ALL \
55 (VLC_PREPARSER_TYPE_FETCHMETA_LOCAL|VLC_PREPARSER_TYPE_FETCHMETA_NET)
57#define VLC_PREPARSER_OPTION_INTERACT 0x1000
58#define VLC_PREPARSER_OPTION_SUBITEMS 0x2000
126 const bool *result_array,
size_t result_count,
void *data);
300 void *cbs_userdata );
312 const char **out_ext);
348 void *cbs_userdata );
#define VLC_API
Definition fourcc_gen.c:31
#define VLC_DEPRECATED
Definition vlc_common.h:158
size_t vlc_preparser_Cancel(vlc_preparser_t *preparser, vlc_preparser_req_id id)
This function cancel all preparsing requests for a given id.
Definition preparser.c:858
vlc_thumbnailer_format
Thumbnailer output format.
Definition vlc_preparser.h:174
vlc_preparser_req_id vlc_preparser_GenerateThumbnailToFiles(vlc_preparser_t *preparser, input_item_t *item, const struct vlc_thumbnailer_arg *arg, const struct vlc_thumbnailer_output *outputs, size_t output_count, const struct vlc_thumbnailer_to_files_cbs *cbs, void *cbs_userdata)
This function generates a thumbnail to one or several files.
Definition preparser.c:787
void vlc_preparser_SetTimeout(vlc_preparser_t *preparser, vlc_tick_t timeout)
Do not use, libVLC only fonction, will be removed soon.
Definition preparser.c:940
vlc_preparser_req_id vlc_preparser_Push(vlc_preparser_t *preparser, input_item_t *item, int type_option, const input_item_parser_cbs_t *cbs, void *cbs_userdata)
This function enqueues the provided item to be preparsed or fetched.
Definition preparser.c:652
vlc_preparser_t * vlc_preparser_New(vlc_object_t *obj, const struct vlc_preparser_cfg *cfg)
This function creates the preparser object and thread.
Definition preparser.c:571
int vlc_preparser_CheckThumbnailerFormat(enum vlc_thumbnailer_format format)
Check if the format is handled by VLC.
Definition preparser.c:781
int vlc_preparser_GetBestThumbnailerFormat(enum vlc_thumbnailer_format *format, const char **out_ext)
Get the best possible format.
Definition preparser.c:774
size_t vlc_preparser_req_id
Definition vlc_preparser.h:46
void vlc_preparser_Delete(vlc_preparser_t *preparser)
This function destroys the preparser object and thread.
Definition preparser.c:946
vlc_preparser_req_id vlc_preparser_GenerateThumbnail(vlc_preparser_t *preparser, input_item_t *item, const struct vlc_thumbnailer_arg *arg, const struct vlc_thumbnailer_cbs *cbs, void *cbs_userdata)
This function enqueues the provided item for generating a thumbnail.
Definition preparser.c:699
@ VLC_THUMBNAILER_FORMAT_WEBP
Definition vlc_preparser.h:176
@ VLC_THUMBNAILER_FORMAT_PNG
Definition vlc_preparser.h:175
@ VLC_THUMBNAILER_FORMAT_JPEG
Definition vlc_preparser.h:177
void * arg
Definition sort.c:32
Video picture.
Definition vlc_picture.h:130
VLC object common members.
Definition vlc_objects.h:53
Preparser creation configuration.
Definition vlc_preparser.h:223
vlc_tick_t timeout
Timeout of the preparser and/or thumbnailer, 0 for no limits.
Definition vlc_preparser.h:246
int types
A combination of VLC_PREPARSER_TYPE_* flags, it is used to setup the executors for each domain.
Definition vlc_preparser.h:229
unsigned max_parser_threads
The maximum number of threads used by the parser, 0 for default (1 thread)
Definition vlc_preparser.h:235
unsigned max_thumbnailer_threads
The maximum number of threads used by the thumbnailer, 0 for default (1 thread)
Definition vlc_preparser.h:241
Definition preparser.c:47
Seek argument.
Definition vlc_preparser.h:140
enum vlc_thumbnailer_arg::seek::@276 type
enum vlc_thumbnailer_arg::seek::@279 speed
vlc_tick_t time
Seek time if type == VLC_THUMBNAILER_SEEK_TIME.
Definition vlc_preparser.h:153
@ VLC_THUMBNAILER_SEEK_POS
Seek by position.
Definition vlc_preparser.h:148
@ VLC_THUMBNAILER_SEEK_TIME
Seek by time.
Definition vlc_preparser.h:146
@ VLC_THUMBNAILER_SEEK_NONE
Don't seek (default)
Definition vlc_preparser.h:144
double pos
Seek position if type == VLC_THUMBNAILER_SEEK_POS.
Definition vlc_preparser.h:155
@ VLC_THUMBNAILER_SEEK_FAST
Fast, but potentially imprecise.
Definition vlc_preparser.h:162
@ VLC_THUMBNAILER_SEEK_PRECISE
Precise, but potentially slow.
Definition vlc_preparser.h:160
Thumbnailer argument.
Definition vlc_preparser.h:137
bool hw_dec
True to enable hardware decoder (false by default)
Definition vlc_preparser.h:167
Preparser thumbnailer callbacks.
Definition vlc_preparser.h:67
void(* on_ended)(input_item_t *item, int status, picture_t *thumbnail, void *data)
Event received on thumbnailing completion or error.
Definition vlc_preparser.h:92
Thumbnailer output argument.
Definition vlc_preparser.h:186
int height
Requested Height of the thumbnail.
Definition vlc_preparser.h:204
unsigned int creat_mode
File mode bits (cf.
Definition vlc_preparser.h:216
const char * file_path
File output path of the thumbnail.
Definition vlc_preparser.h:214
int width
Requested width of the thumbnail.
Definition vlc_preparser.h:197
enum vlc_thumbnailer_format format
Thumbnailer output format.
Definition vlc_preparser.h:190
bool crop
True if the thumbnail should be cropped.
Definition vlc_preparser.h:211
Preparser thumbnailer to file callbacks.
Definition vlc_preparser.h:102
void(* on_ended)(input_item_t *item, int status, const bool *result_array, size_t result_count, void *data)
Event received on thumbnailing completion or error.
Definition vlc_preparser.h:126
This file is a collection of common definitions and types.
int64_t vlc_tick_t
High precision date or time interval.
Definition vlc_tick.h:48