-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmodule-streamrelay.h
More file actions
80 lines (68 loc) · 1.63 KB
/
module-streamrelay.h
File metadata and controls
80 lines (68 loc) · 1.63 KB
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
68
69
70
71
72
73
74
75
76
77
78
79
80
#ifndef MODULE_STREAMRELAY_H_
#define MODULE_STREAMRELAY_H_
#ifdef MODULE_STREAMRELAY
#define STREAM_SERVER_MAX_CONNECTIONS 16
#define DVB_MAX_TS_PACKETS 278
#define DVB_BUFFER_SIZE_CSA 188*DVB_MAX_TS_PACKETS
#define DVB_BUFFER_WAIT_CSA 188*(DVB_MAX_TS_PACKETS-128)
#define DVB_BUFFER_SIZE DVB_BUFFER_SIZE_CSA
//#define __BISS__
#ifdef __BISS__
#define MAX_STREAM_PIDS 32
#endif
#include "cscrypt/md5.h"
#include <dvbcsa/dvbcsa.h>
#if DVBCSA_KEY_ECM
#define DVBCSA_HEADER_ECM 1
#define dvbcsa_bs_key_set(a,b) dvbcsa_bs_key_set_ecm(ecm,a,b)
#else
#define DVBCSA_HEADER_ECM 0
#endif
#ifndef STATIC_LIBDVBCSA
#define STATIC_LIBDVBCSA 0
#endif
#define EVEN 0
#define ODD 1
typedef struct
{
struct dvbcsa_bs_key_s *key[2];
} stream_client_key_data;
typedef struct
{
int32_t connid;
int8_t have_cat_data;
int8_t have_pat_data;
int8_t have_pmt_data;
int8_t have_ecm_data;
int8_t have_emm_data;
uint8_t cat_data[1024+208];
uint8_t pat_data[1024+208];
uint8_t pmt_data[1024+208];
uint8_t ecm_data[1024+208];
uint8_t emm_data[1024+208];
uint16_t cat_data_pos;
uint16_t pat_data_pos;
uint16_t pmt_data_pos;
uint16_t ecm_data_pos;
uint16_t emm_data_pos;
uint16_t srvid;
uint16_t caid;
uint16_t tsid;
uint16_t onid;
uint32_t ens;
uint16_t pmt_pid;
uint16_t ecm_pid;
uint16_t emm_pid;
uint16_t pcr_pid;
#ifdef __BISS__
uint8_t STREAMpidcount;
uint16_t STREAMpids[MAX_STREAM_PIDS];
#endif
uint8_t ecm_md5[MD5_DIGEST_LENGTH];
} stream_client_data;
void *stream_server(void *a);
void init_stream_server(void);
void stop_stream_server(void);
bool stream_write_cw(ECM_REQUEST *er);
#endif // MODULE_STREAMRELAY
#endif // MODULE_STREAMRELAY_H_