Skip to content
Sonny Walkman edited this page Mar 28, 2024 · 26 revisions

Welcome to the mptsd wiki!

Below is my basic usage information page to assist with usage and shall be updated when improvements and feature available.

mptsd is a versatile tool for MPEG TS multichannel multiplexing of individual SPTS => MPTS. (Single Program Transport Stream) => (Multiple Program Transport Stream)

MPEG transport stream

mptsd offering a wide range of features from server configuration to handling various output settings.

This document provides an overview of all command-line options available as of 28-03-2024.

Usage

Identification

  • -i ident: Sets the server ident. Default: ux/mptsd.

Server Settings

  • -b addr: Binds to a local IP address. Default: 0.0.0.0.
  • -p port: Sets the port to listen on. Default: 0.
  • -N: Disables network.
  • -d pidfile: Daemonizes with specified pidfile.
  • -l host: Specifies the Syslog host. Default: disabled.
  • -L port: Sets the Syslog port. Default: 514.

Configuration Files

  • -g file: Specifies the global configuration file. Default: mptsd.conf.
  • -c file: Specifies the channels configuration file. Default: mptsd_channels.conf.
  • -e file: Specifies the EPG configuration file. Default: mptsd_epg.conf.
  • -n file: Specifies the NIT configuration file. Default: mptsd_nit.conf.

Output Settings

  • -O ip: Sets the output UDP address.
  • -P ip: Sets the output UDP port. Default: 5000.
  • -o ip: Specifies the output interface address. Default: 0.0.0.0.
  • -t ttl: Sets the multicast TTL. Default: 1.
  • -s SSRC: Enables RTP. Default: disabled.
  • -B Mbps: Sets the output bitrate in Mbps. Default: 38.00.
  • -m mode: Sets the PCR mode. Available modes:
    • Mode 0: Do not touch PCRs (default).
    • Mode 1: Move PCRs to their calculated place.
    • Mode 2: Rewrite PCRs using output bitrate.
    • Mode 3: Move PCRs and rewrite them.

Mode 3 Note:-

mptsd provides the capability for exact PCR restamping, achievable by employing the -m 3 option. This functionality is especially vital for hardware modulators that necessitate precise PCR values to function correctly. Given the importance of this feature for many cost-effective modulators, it is advised to always use -m 3 setting with them.

Compatibility and performance testing of mptsd has successfully demonstrated its effective operation with the following modulators:

  • Dektec DTE-3114
  • HiDes UT-100C

Employing the -m 3 option ensures that mptsd meets the technical requirements needed for optimal functionality with these and potentially other hardware modulators.

Other Settings

  • -q: Quiet mode.
  • -D: Debug mode.
  • -W: Write output file (recommended to use with -N).
  • -f: Specifies the output filename. Default: mptsd-output.ts (use - for stdout).
  • -E: Write input file.
  • -9: Enable LCN support. Default: disabled.

mptsd Configuration Files Analysis

mptsd.conf

The global configuration file for mptsd, affecting server-wide settings.

Key Sections:

  • General Settings: Server ID, IP bindings, and network configurations.
  • Logging: Controls for logging level and output (console, syslog).
  • Performance Tuning: Parameters for optimizing server performance.

mptsd_channels.conf

Defines channels and their source streams for the multiplex.

Key Sections:

  • Channel Definition: Names, IDs, and source addresses for each channel.
  • PID Mappings: Custom mappings of PIDs from source to multiplex.

mptsd_epg.conf

Configures EPG data sourcing and association for the multiplex.

Key Sections:

  • EPG Sources: Methods and sources for acquiring EPG data.
  • EPG Association: Links EPG data to specific channels.

mptsd_nit.conf

Manages the Network Information Table (NIT) for the digital television network.

Key Sections:

  • Network ID: Unique identifier for the network.
  • Transport Streams: List of transport streams with identifiers.
  • Network Descriptors: Additional network metadata.

Example command line

mptsd -m 3 -b 0.0.0.0 -O 224.0.0.1 -p 1234 -g ./somepath/mux/mptsd.conf -c ./somepath/mux/mptsd_channels.conf -e ./somepath/mux/mptsd_epg.conf -n ./somepath/mux/mptsd_nit.conf -i mysuper-mux
Clone this wiki locally