TSDuck v3.40-4033
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::TSProcessorArgs Class Reference

Transport stream processor options and their command line options. More...

#include <tsTSProcessorArgs.h>

Collaboration diagram for ts::TSProcessorArgs:

Public Member Functions

 TSProcessorArgs ()=default
 Constructor.
 
void applyDefaults (bool realtime)
 Apply default values to options which were not specified on the command line.
 
void defineArgs (Args &args)
 Add command line option definitions in an Args.
 
bool loadArgs (DuckContext &duck, Args &args)
 Load arguments from command line.
 

Public Attributes

UString app_name {}
 Application name, for help messages.
 
cn::milliseconds bitrate_adj = DEFAULT_BITRATE_INTERVAL
 Bitrate adjust interval.
 
IPAddress control_local {}
 Local interface on which to listen for control commands.
 
uint16_t control_port = 0
 TCP server port for control commands.
 
bool control_reuse = false
 Set the 'reuse port' socket option on the control TCP server port.
 
IPAddressVector control_sources {}
 Remote IP addresses which are allowed to send control commands.
 
cn::milliseconds control_timeout = DEFAULT_CONTROL_TIMEOUT
 Reception timeout in milliseconds for control commands.
 
DuckContext::SavedArgs duck_args {}
 Default TSDuck context options for all plugins. Each plugin can override them in its context.
 
cn::milliseconds final_wait = cn::milliseconds(-1)
 Time to wait after last input packet. Zero means infinite, negative means none.
 
BitRate fixed_bitrate = 0
 Fixed input bitrate (user-specified).
 
bool ignore_jt = false
 Ignore "joint termination" options in plugins.
 
PacketCounter init_bitrate_adj = DEFAULT_INIT_BITRATE_PKT_INTERVAL
 As long as input bitrate is unknown, reevaluate periodically.
 
size_t init_input_pkt = 0
 Initial number of input packets to read before starting the processing (zero means default).
 
PluginOptions input {}
 Input plugin description.
 
size_t instuff_inpkt = 0
 Add input stuffing: add instuff_nullpkt null packets every instuff_inpkt input packets.
 
size_t instuff_nullpkt = 0
 Add input stuffing: add instuff_nullpkt null packets every instuff_inpkt input packets.
 
size_t instuff_start = 0
 Add input stuffing: add instuff_start null packets before actual input.
 
size_t instuff_stop = 0
 Add input stuffing: add instuff_end null packets after end of actual input.
 
bool log_plugin_index = false
 Log plugin index with plugin name.
 
size_t max_flush_pkt = 0
 Max processed packets before flush.
 
size_t max_input_pkt = 0
 Max packets per input operation.
 
size_t max_output_pkt = NPOS
 Max packets per outsput operation. NPOS means unlimited.
 
PluginOptions output {}
 Output plugin description.
 
PluginOptionsVector plugins {}
 Packet processor plugins descriptions.
 
Tristate realtime = Tristate::Maybe
 Use real-time options.
 
cn::milliseconds receive_timeout {}
 Timeout on input operations.
 
size_t ts_buffer_size = DEFAULT_BUFFER_SIZE
 Size in bytes of the global TS packet buffer.
 

Static Public Attributes

static constexpr cn::milliseconds DEFAULT_BITRATE_INTERVAL = cn::milliseconds(5000)
 Default bitrate adjustment interval, in milliseconds.
 
static constexpr size_t DEFAULT_BUFFER_SIZE = 16 * 1000000
 Default size in bytes of global TS buffer.
 
static constexpr cn::milliseconds DEFAULT_CONTROL_TIMEOUT = cn::milliseconds(5000)
 Default control command reception timeout, in milliseconds.
 
static constexpr PacketCounter DEFAULT_INIT_BITRATE_PKT_INTERVAL = 1000
 Default initial bitrate reevaluation interval, in packets.
 
static constexpr size_t MIN_BUFFER_SIZE = 18800
 Minimum size in bytes of global TS buffer.
 

Detailed Description

Transport stream processor options and their command line options.

Member Function Documentation

◆ defineArgs()

void ts::TSProcessorArgs::defineArgs ( Args args)

Add command line option definitions in an Args.

Parameters
[in,out]argsCommand line arguments to update.

◆ loadArgs()

bool ts::TSProcessorArgs::loadArgs ( DuckContext duck,
Args args 
)

Load arguments from command line.

Args error indicator is set in case of incorrect arguments.

Parameters
[in,out]duckTSDuck execution context.
[in,out]argsCommand line arguments.
Returns
True on success, false on error in argument line.

◆ applyDefaults()

void ts::TSProcessorArgs::applyDefaults ( bool  realtime)

Apply default values to options which were not specified on the command line.

Parameters
[in]realtimeIf true, apply real-time defaults. If false, apply offline defaults.

The documentation for this class was generated from the following file: