-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathhqv.h
67 lines (62 loc) · 1.72 KB
/
hqv.h
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
#ifndef HQV_H
#define HQV_H
#include <unistd.h>
#include <time.h>
#include <libavutil/fifo.h>
#include <libavutil/log.h>
#include "io.h"
// HQV Date Structure
struct hqv_data {
char source[512];
char output[512];
char output_tmp[512];
char *channel;
int device;
int stationid;
// settings
int seconds;
int offset;
int read_size;
int round;
int record;
int em;
char em_range[8];
int splice;
int align;
int keep;
int archive;
int cc;
// GOP Splicing
unsigned int last_stream;
int try_count;
int loops;
unsigned int nxt_buf_start_pos;
int audio_frames;
int parse_mpeg2;
int break_type; // 0=none, 1=audio, 2=video
// counter
int count;
// DQV/HQV mode
int do_dqv;
int do_hqv;
int do_dvd;
// Signal next segment
int next_file;
// Input file pos
int64_t brfp;
// Fifo
AVFifoBuffer *fifo;
// End of HQV
int finished;
// Fifo Queue
int fifo_full;
};
void set_hqv_defaults(struct hqv_data *hqvData);
void align_time(int seconds, int offset);
int check_em(struct hqv_data *hqv, struct tm *t, int state);
int fifo_read(void *data, uint8_t *buf, int size);
void *hqv_thread(void *data);
char *dqv_get(char *dqout, char *hostname, char *channel, int dev, char *ext, int round_seconds, char *dir);
char *hqv_get(char *dqout, char *hostname, char *channel, int dev, char *ext, int round_seconds, char *dir);
char *sdc_get(char *dqout, char *hostname, char *channel, int dev, char *ext, int round_seconds, char *dir);
#endif