comparison libmpdemux/dvbin.h @ 9610:76c6d8f1ebf5

this is a combo patch that: 1) adds an experimental TS demuxer to mplayer 2) adds an input (streaming) interface from DVB cards. It compiles and runs with the following versions of the drivers: dvb-kernel (HEAD) (with stock kernel 2.4.20) and 0.9.4 (with kernel 2.4.18) patch by Nico <nsabbi@libero.it> some cleanups, ts demuxer fixes by me
author arpi
date Sun, 16 Mar 2003 20:13:28 +0000
parents
children 4847392922be
comparison
equal deleted inserted replaced
9609:bb8593ea37cb 9610:76c6d8f1ebf5
1
2 #ifndef DVBIN_H
3 #define DVBIN_H
4
5 extern int dvbin_param_on;
6
7 #ifdef HAVE_DVB_HEAD
8 #include <linux/dvb/dmx.h>
9 #include <linux/dvb/frontend.h>
10 #else
11 #include <ost/dmx.h>
12 #include <ost/sec.h>
13 #include <ost/frontend.h>
14 #define fe_status_t FrontendStatus
15 #define fe_spectral_inversion_t SpectralInversion
16 #define fe_modulation_t Modulation
17 #define fe_code_rate_t CodeRate
18 #define fe_transmit_mode_t TransmitMode
19 #define fe_guard_interval_t GuardInterval
20 #define fe_bandwidth_t BandWidth
21 #define fe_sec_voltage_t SecVoltage
22 #define dmx_pes_filter_params dmxPesFilterParams
23 #define dmx_sct_filter_params dmxSctFilterParams
24 #define dmx_pes_type_t dmxPesType_t
25 #endif
26
27
28
29 #define DVB_CHANNEL_LOWER -1
30 #define DVB_CHANNEL_HIGHER 1
31
32
33 typedef struct
34 {
35 int next, prev;
36 } dvb_history_t;
37
38 typedef struct {
39 char *name;
40 int freq, srate, diseqc, tone;
41 char pol;
42 int vpid, apid1, apid2, tpid, dpid1, dpid2, progid, ca;
43 fe_spectral_inversion_t inv;
44 fe_modulation_t mod;
45 fe_transmit_mode_t trans;
46 fe_bandwidth_t bw;
47 fe_guard_interval_t gi;
48 fe_code_rate_t cr;
49 } dvb_channel_t;
50
51
52 typedef struct {
53 uint16_t NUM_CHANNELS;
54 uint16_t current;
55 dvb_channel_t channels[512];
56 } dvb_channels_list;
57
58
59
60 typedef struct {
61 int fe_fd;
62 int sec_fd;
63 int demux_fd[3];
64 int dvr_fd;
65 int input;
66 int output;
67 int discard;
68
69 dvb_channel_t channel;
70 dvb_channels_list *list;
71 } dvb_priv_t;
72
73
74 extern dvb_history_t *dvb_step_channel(dvb_priv_t*, int, dvb_history_t*);
75
76 extern dvb_channels_list *dvb_get_channels(char *, const char *);
77 extern dvb_history_t dvb_prev_next;
78
79
80
81
82 #ifndef DVB_T_LOCATION
83 #ifndef UK
84 #warning No DVB-T country defined in dvb_defaults.h, defaulting to UK
85 #endif
86
87 /* UNITED KINGDOM settings */
88 #define DVB_T_LOCATION "in United Kingdom"
89 #define BANDWIDTH_DEFAULT BANDWIDTH_8_MHZ
90 #define HP_CODERATE_DEFAULT FEC_2_3
91 #define CONSTELLATION_DEFAULT QAM_64
92 #define TRANSMISSION_MODE_DEFAULT TRANSMISSION_MODE_2K
93 #define GUARD_INTERVAL_DEFAULT GUARD_INTERVAL_1_32
94 #define HIERARCHY_DEFAULT HIERARCHY_NONE
95 #endif
96
97 #define HIERARCHY_DEFAULT HIERARCHY_NONE
98 #define LP_CODERATE_DEFAULT (0)
99
100
101
102 #endif