Mercurial > mplayer.hg
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 |