version 1.11, 2001/05/05 13:14:55
|
version 1.12, 2001/07/12 10:01:39
|
Line 21
|
Line 21
|
#define DEBUG_TIMEPOLL |
#define DEBUG_TIMEPOLL |
#endif |
#endif |
|
|
|
#define PES_LOWEST_SID (0xBC) |
|
#define NUMBER_ELEMD 19 |
|
#define TS_PACKET_SIZE 188 |
|
|
|
#define CRC_SIZE 4 |
|
|
#define MAX_MSEC_OUTDELAY 500 |
#define MAX_MSEC_OUTDELAY 500 |
#define MAX_MSEC_PUSHJTTR (2 * 250) |
#define MAX_MSEC_PUSHJTTR (2 * 250) |
#define MAX_MSEC_PCRDIST (100 * 80/100) |
#define MAX_MSEC_PCRDIST (100 * 80/100) |
|
|
#define MAX_POLLFD (MAX_INFILE+3) |
#define TRIGGER_MSEC_INPUT 250 |
|
#define TRIGGER_MSEC_OUTPUT 250 |
|
|
#define MAX_DATA_COMB 512 |
#define MAX_DATA_COMB 512 |
#define HIGHWATER_COM 8 |
#define HIGHWATER_COM 8 |
|
|
#define MAX_CTRL_OUTB (1 << 11) |
#define MAX_CTRL_OUTB (1 << 16) |
#define MAX_DATA_OUTB (MAX_CTRL_OUTB << 7) |
#define MAX_DATA_OUTB (MAX_CTRL_OUTB << 7) |
#define HIGHWATER_OUT 512 |
#define HIGHWATER_OUT 512 |
#define MAX_WRITE_OUT (128 * 188) |
#define MAX_WRITE_OUT (44 * TS_PACKET_SIZE) |
|
|
#define MAX_CTRL_INB (1 << 8) |
#define MAX_CTRL_INB (1 << 10) |
#define MAX_DATA_INBV (MAX_CTRL_INB << 10) |
#define MAX_DATA_INBV (MAX_CTRL_INB << 10) |
#define MAX_DATA_INBA (MAX_CTRL_INB << 9) |
#define MAX_DATA_INBA (MAX_CTRL_INB << 9) |
#define MAX_DATA_INB (MAX_CTRL_INB << 9) |
#define MAX_DATA_INB (MAX_CTRL_INB << 9) |
Line 58
|
Line 65
|
#define MAX_PSI_SIZE 1025 |
#define MAX_PSI_SIZE 1025 |
#define MAX_PMTSTREAMS (MAX_PSI_SIZE / 4) |
#define MAX_PMTSTREAMS (MAX_PSI_SIZE / 4) |
|
|
|
#define MAX_POLLFD (MAX_INFILE+3) |
|
|
#define ENDSTR_KILL 0 |
#define ENDSTR_KILL 0 |
#define ENDSTR_CLOSE 1 |
#define ENDSTR_CLOSE 1 |
#define ENDSTR_WAIT 2 |
#define ENDSTR_WAIT 2 |
|
|
#define PES_LOWEST_SID (0xBC) |
|
#define NUMBER_ELEMD 19 |
|
#define TS_PACKET_SIZE 188 |
|
|
|
#define CRC_SIZE 4 |
|
|
|
#define boolean __u8 |
#define boolean __u8 |
#define FALSE 0 |
#define FALSE 0 |
#define TRUE 1 |
#define TRUE 1 |
Line 126 typedef struct {
|
Line 129 typedef struct {
|
int mask; |
int mask; |
} refr_data; |
} refr_data; |
|
|
/* Test on buffer emptiness */ |
|
#define list_empty(refr) ((refr).out == (refr).in) |
|
|
|
/* Create a new buffer, return TRUE on success, FALSE otherwise */ |
/* Create a new buffer, return TRUE on success, FALSE otherwise */ |
#define list_create(refr,size) \ |
#define list_create(refr,size) \ |
Line 141 typedef struct {
|
Line 142 typedef struct {
|
#define list_release(refr) \ |
#define list_release(refr) \ |
((refr).mask = 0, free((refr).ptr), (refr).ptr = NULL) |
((refr).mask = 0, free((refr).ptr), (refr).ptr = NULL) |
|
|
|
/* Test on buffer emptiness */ |
|
#define list_empty(refr) ((refr).out == (refr).in) |
|
|
/* Compute number of free elements in buffer */ |
/* Compute number of free elements in buffer */ |
#define list_free(refr) \ |
#define list_free(refr) \ |
(((refr).out - (refr).in - 1) & (refr).mask) |
(((refr).out - (refr).in - 1) & (refr).mask) |
Line 158 typedef struct {
|
Line 162 typedef struct {
|
#define list_full(refr) \ |
#define list_full(refr) \ |
(list_free(refr) == 0) |
(list_free(refr) == 0) |
|
|
/* Test on buffer half-fullness (as trigger criterium) */ |
/* Test on buffer partial fullness (as trigger criterium) */ |
#define list_halffull(refr) \ |
#define list_partialfull(refr) \ |
(list_size(refr) > ((refr).mask >> 1)) |
(list_size(refr) > ((refr).mask * 3/4)) |
|
|
/* Increment an index variable that points in to a buffer by a given value */ |
/* Increment an index variable that points in to a buffer by a given value */ |
#define list_incr(var,refr,incr) \ |
#define list_incr(var,refr,incr) \ |
((var) = (((var) + (incr)) & (refr).mask)) |
((var) = (((var) + (incr)) & (refr).mask)) |
|
|
|
|
/* Check a data byte against a mask */ |
/* Check a data byte against a mask */ |
#define marker_check(data,val,mask) \ |
#define marker_check(data,val,mask) \ |
(((data & mask) != val) ? \ |
(((data & mask) != val) ? \ |