-
type dvb_frontend_parameters¶
6.1.1.3. 前端参数¶
传递给前端设备进行调谐的参数种类取决于您使用的硬件类型。
结构体 dvb_frontend_parameters
使用带有特定于系统的参数的联合。 但是,由于较新的传输系统需要更多数据,因此结构体大小不足以容纳,并且仅扩展其大小会破坏现有应用程序。 因此,这些参数被使用 FE_GET_PROPERTY/FE_SET_PROPERTY ioctl 的方式所取代。 新的 API 足够灵活,可以向现有传输系统添加新参数,并添加更新的传输系统。
因此,较新的应用程序应使用 FE_GET_PROPERTY/FE_SET_PROPERTY 代替,以便能够支持更新的系统传输,如 DVB-S2、DVB-T2、DVB-C2、ISDB 等。
所有类型的参数都在 dvb_frontend_parameters
结构体中组合成一个联合
struct dvb_frontend_parameters {
uint32_t frequency; /* (absolute) frequency in Hz for QAM/OFDM */
/* intermediate frequency in kHz for QPSK */
fe_spectral_inversion_t inversion;
union {
struct dvb_qpsk_parameters qpsk;
struct dvb_qam_parameters qam;
struct dvb_ofdm_parameters ofdm;
struct dvb_vsb_parameters vsb;
} u;
};
对于 QPSK 前端,frequency
字段指定中频,即有效添加到 LNB 本地振荡器频率 (LOF) 的偏移量。 中频必须以 kHz 为单位指定。 对于 QAM 和 OFDM 前端,frequency
指定绝对频率,以 Hz 为单位给出。
-
type dvb_qpsk_parameters¶
6.1.1.3.1. QPSK 参数¶
对于卫星 QPSK 前端,您必须使用 dvb_qpsk_parameters
结构体
struct dvb_qpsk_parameters {
uint32_t symbol_rate; /* symbol rate in Symbols per second */
fe_code_rate_t fec_inner; /* forward error correction (see above) */
};
-
type dvb_qam_parameters¶
6.1.1.3.2. QAM 参数¶
对于有线 QAM 前端,您使用 dvb_qam_parameters
结构体
struct dvb_qam_parameters {
uint32_t symbol_rate; /* symbol rate in Symbols per second */
fe_code_rate_t fec_inner; /* forward error correction (see above) */
fe_modulation_t modulation; /* modulation type (see above) */
};
-
type dvb_vsb_parameters¶
6.1.1.3.3. VSB 参数¶
ATSC 前端由 dvb_vsb_parameters
结构体支持
struct dvb_vsb_parameters {
fe_modulation_t modulation; /* modulation type (see above) */
};
-
type dvb_ofdm_parameters¶
6.1.1.3.4. OFDM 参数¶
DVB-T 前端由 dvb_ofdm_parameters
结构体支持
struct dvb_ofdm_parameters {
fe_bandwidth_t bandwidth;
fe_code_rate_t code_rate_HP; /* high priority stream code rate */
fe_code_rate_t code_rate_LP; /* low priority stream code rate */
fe_modulation_t constellation; /* modulation type (see above) */
fe_transmit_mode_t transmission_mode;
fe_guard_interval_t guard_interval;
fe_hierarchy_t hierarchy_information;
};