TSDuck v3.38-3691
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
tsLegacyBandWidth.h File Reference

Handling of legacy definitions for terrestrial modulation bandwidths. More...

Namespaces

namespace  ts
 TSDuck namespace, containing all TSDuck classes and functions.
 

Functions

BandWidth ts::BandWidthCodeFromHz (uint32_t hz)
 Get the bandwidth code from a value in Hz (deprecated).
 
uint32_t ts::BandWidthValueHz (BandWidth bw)
 Get the bandwidth value in Hz (deprecated).
 
void ts::DefineLegacyBandWidthArg (Args &args, const UChar *name, UChar short_name=0, BandWidth dvbt_default=0, BandWidth isdbt_default=0)
 Add a command line option definition for bandwidth.
 
bool ts::GetLegacyBandWidth (std::optional< BandWidth > &bandwidth, const xml::Element *element, const UString &attribute)
 Get optional bandwidth parameter from an XML element, accepting legacy values.
 
bool ts::LegacyBandWidthToHz (BandWidth &bandwidth, const UString &str)
 Convert a string containing a bandwidth value into an integer value in Hz.
 
bool ts::LoadLegacyBandWidthArg (BandWidth &bandwidth, Args &args, const UChar *name, BandWidth def_value=0)
 Load a bandwidth argument from command line.
 
bool ts::LoadLegacyBandWidthArg (std::optional< BandWidth > &bandwidth, Args &args, const UChar *name)
 Load a bandwidth argument from command line.
 

Variables

constexpr BandWidth ts::BW_10_MHZ = 10'000'000
 10 MHz bandwidth (DVB-T2 only, legacy symbol).
 
constexpr BandWidth ts::BW_1_712_MHZ = 1'712'000
 1.712 MHz bandwidth (DVB-T2 only, legacy symbol).
 
constexpr BandWidth ts::BW_5_MHZ = 5'000'000
 5 MHz bandwidth (DVB-T2 only, legacy symbol).
 
constexpr BandWidth ts::BW_6_MHZ = 6'000'000
 6 MHz bandwidth (legacy symbol).
 
constexpr BandWidth ts::BW_7_MHZ = 7'000'000
 7 MHz bandwidth (legacy symbol).
 
constexpr BandWidth ts::BW_8_MHZ = 8'000'000
 8 MHz bandwidth (legacy symbol).
 
constexpr BandWidth ts::BW_AUTO = 0
 Bandwidth automatically set (legacy symbol).
 

Detailed Description

Handling of legacy definitions for terrestrial modulation bandwidths.

Legacy issue: The bandwith type for DVB-T/T2 and ISDB-T used to be an enum type with a few values (BW_AUTO, BW_8_MHZ, etc.). This was a legacy from the Linux DVB API version 3. The bandwidth is now a 32-bit unsigned integer containing a value in Hz. The former enum values are redefined as constants.