From 884c8093d63402a1ad0b502244b791e3c6782be3 Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Fri, 11 Sep 2020 14:38:47 +0900 Subject: Added debian extra dependency packages. Signed-off-by: Michele Calgaro --- debian/transcode/transcode-1.1.7/libtc/framecode.h | 85 ++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 debian/transcode/transcode-1.1.7/libtc/framecode.h (limited to 'debian/transcode/transcode-1.1.7/libtc/framecode.h') diff --git a/debian/transcode/transcode-1.1.7/libtc/framecode.h b/debian/transcode/transcode-1.1.7/libtc/framecode.h new file mode 100644 index 00000000..72faccf1 --- /dev/null +++ b/debian/transcode/transcode-1.1.7/libtc/framecode.h @@ -0,0 +1,85 @@ +/* + * framecode.h -- framecode list handling include file + * Written by Andrew Church + * + * This file is part of transcode, a video stream processing tool. + * transcode is free software, distributable under the terms of the GNU + * General Public License (version 2 or later). See the file COPYING + * for details. + */ + +#ifndef LIBTC_FRAMECODE_H +#define LIBTC_FRAMECODE_H + +/*************************************************************************/ + +/* A single framecode range structure. Start times are considered + * inclusive, while end times are considered exclusive; thus a range with + * stf==0 and etf==10 contains 10 frames, not 11 frames. */ + +struct fc_time { + struct fc_time *next; + + double fps; /* Frames per second */ + unsigned int stepf; /* Step value (process every stepf'th frame) */ + unsigned int vob_offset; /* For transcode -L (should be removed) */ + + unsigned int sh; /* Start time: hour */ + unsigned int sm; /* Start time: minute */ + unsigned int ss; /* Start time: second */ + unsigned int sf; /* Start time: frame within second */ + unsigned int stf; /* Start time: frame index */ + + unsigned int eh; /* End time: hour */ + unsigned int em; /* End time: minute */ + unsigned int es; /* End time: second */ + unsigned int ef; /* End time: frame within second */ + unsigned int etf; /* End time: frame index */ +}; + +/*************************************************************************/ + +/* Functions for handling fc_time structures. */ + + +/* Allocate a new, zeroed fc_time structure. */ +struct fc_time *new_fc_time(void); + +/* Free a list of allocated fc_time structures. */ +void free_fc_time(struct fc_time *list); + +/* Set fields of an fc_time structure from frame indices. */ +void set_fc_time(struct fc_time *range, int start, int end); + +/* Return whether a list of fc_time structures contains a given frame index. */ +int fc_time_contains(const struct fc_time *list, unsigned int frame); + +/* Parse a string into a list of fc_time structures. */ +struct fc_time *new_fc_time_from_string(const char *string, + const char *separator, + double fps, int verbose); + + +/* Compatibility macros */ + +#define parse_fc_time_string(str,fps,sep,verb,list) \ + ((*(list) = new_fc_time_from_string((str), (sep), (fps), (verb))) \ + != NULL ? 0 : -1) +#define fc_frame_in_time(list,frame) fc_time_contains((list), (frame)) + +// only for avisplit +#define fc_set_start_time(range,n) set_fc_time((range), (n), -1) + +/*************************************************************************/ + +#endif /* LIBTC_FRAMECODE_H */ + +/* + * Local variables: + * c-file-style: "stroustrup" + * c-file-offsets: ((case-label . *) (statement-case-intro . *)) + * indent-tabs-mode: nil + * End: + * + * vim: expandtab shiftwidth=4: + */ -- cgit v1.2.3