TSDuck v3.39-3843
MPEG Transport Stream Toolkit
|
This protected inner class contains the analysis context for one PID. More...
#include <tsTSAnalyzer.h>
Public Member Functions | |
PIDContext (PID pid, const UString &description=UNREFERENCED) | |
Default constructor. | |
void | addService (uint16_t service_id) |
Register a service id for the PID. | |
UString | fullDescription (bool include_attributes) const |
Return a full description, with comment and optionally attributes. | |
Public Attributes | |
UStringVector | attributes {} |
Audio or video attributes (several lines if attributes changed). | |
MPEG2AudioAttributes | audio2 {} |
Last MPEG-2 audio attributes. | |
BitRate | bitrate = 0 |
Average PID bitrate in b/s. | |
uint64_t | br_last_pcr = INVALID_PCR |
Last PCR value in the PID, for bitrate computation. | |
uint64_t | br_last_pcr_pkt = 0 |
Index of packet with last PCR. | |
bool | carry_audio = false |
This PID carries audio data. | |
bool | carry_ecm = false |
This PID carries ECM's. | |
bool | carry_emm = false |
This PID carries EMM's. | |
bool | carry_pes = false |
This PID carries PES packets. | |
bool | carry_section = false |
This PID carries sections. | |
bool | carry_t2mi = false |
Carry T2-MI encasulated data. | |
bool | carry_video = false |
This PID carries video data. | |
uint16_t | cas_id = 0 |
For EMM and ECM streams. | |
std::set< uint32_t > | cas_operators {} |
Operators for EMM and ECM streams, when applicable. | |
UString | comment {} |
Additional description (ie "MPE", "HbbTV"). | |
uint64_t | crypto_period = 0 |
Average number of TS packets per crypto-period. | |
uint64_t | cryptop_cnt = 0 |
Number of crypto-periods. | |
uint64_t | cryptop_ts_cnt = 0 |
Number of TS packets in all crypto-periods. | |
uint8_t | cur_continuity = 0 |
Current continuity count. | |
uint8_t | cur_ts_sc = 0 |
Current scrambling control in TS header. | |
uint64_t | cur_ts_sc_pkt = 0 |
First packet index of current crypto-period. | |
UString | description {} |
Readable description string (ie "MPEG-2 Audio"). | |
uint64_t | dts_cnt = 0 |
Number of DTS's. | |
uint64_t | dts_leap_cnt = 0 |
Number of leaps in DTS's (potential time discontinuities). | |
uint64_t | duplicated = 0 |
Number of duplicated packets. | |
uint64_t | exp_discont = 0 |
Number of expected discontinuities. | |
uint64_t | first_dts = INVALID_DTS |
First DTS value in the PID, if any. | |
uint64_t | first_pcr = INVALID_PCR |
First PCR value in the PID, if any. | |
uint64_t | first_pts = INVALID_PTS |
First PTS value in the PID, if any. | |
uint64_t | inv_pes = 0 |
Number of invalid PES packets. | |
uint64_t | inv_pes_start = 0 |
Number of invalid PES start code. | |
uint64_t | inv_sections = 0 |
Number of invalid sections. | |
uint64_t | inv_ts_sc_cnt = 0 |
Number of invalid scrambling control in TS headers. | |
bool | is_pcr_pid = false |
Is the PCR PID for this service. | |
bool | is_pmt_pid = false |
Is the PMT PID for this service. | |
UStringVector | languages {} |
For audio or subtitles (3 chars per language). | |
uint64_t | last_dts = INVALID_DTS |
Last DTS value in the PID, if any. | |
uint64_t | last_pcr = INVALID_PCR |
Last PCR value in the PID, if any. | |
uint64_t | last_pts = INVALID_PTS |
Last PTS value in the PID, if any. | |
bool | optional = false |
Optional PID, don't display report if no packet. | |
uint64_t | pcr_cnt = 0 |
Number of PCR's. | |
uint64_t | pcr_leap_cnt = 0 |
Number of leaps in PCR's (potential time discontinuities). | |
uint8_t | pes_stream_id = 0 |
Stream_id in PES packets on this PID. | |
const PID | pid |
PID value. | |
uint64_t | pl_start_cnt = 0 |
Number of unit_start & has_payload in packets. | |
uint64_t | pmt_cnt = 0 |
Number of PMT (for PMT PID's). | |
uint64_t | pts_cnt = 0 |
Number of PTS's. | |
uint64_t | pts_leap_cnt = 0 |
Number of leaps in PTS's (potential time discontinuities). | |
bool | referenced = false |
Is referenced (by service or global). | |
bool | same_stream_id = false |
All PES packets have same stream_id. | |
bool | scrambled = false |
Contains some scrambled packets. | |
ETIDContextMap | sections {} |
List of sections in this PID. | |
ServiceIdSet | services {} |
List of service ids the PID belongs to. | |
std::set< uint32_t > | ssu_oui {} |
Set of applicable OUI's for SSU. | |
uint8_t | stream_type = 0 |
Stream type in PMT. | |
uint64_t | t2mi_cnt = 0 |
Number of T2-MI packets. | |
std::map< uint8_t, uint64_t > | t2mi_plp_ts {} |
For T2-MI streams, map key = PLP (Physical Layer Pipe) to value = number of embedded TS packets. | |
uint64_t | ts_af_cnt = 0 |
Number of TS packets with adaptation field. | |
uint64_t | ts_bitrate_cnt = 0 |
Number of computed TS bitrates. | |
BitRate | ts_bitrate_sum = 0 |
Sum of all computed TS bitrates. | |
BitRate | ts_pcr_bitrate = 0 |
Average TS bitrate in b/s (eval from PCR). | |
uint64_t | ts_pkt_cnt = 0 |
Number of TS packets. | |
uint64_t | ts_sc_cnt = 0 |
Number of scrambled packets. | |
uint64_t | unexp_discont = 0 |
Number of unexpected discontinuities. | |
uint64_t | unit_start_cnt = 0 |
Number of unit_start in packets. | |
This protected inner class contains the analysis context for one PID.
Default constructor.
[in] | pid | PID value. |
[in] | description | PID description. |
void ts::TSAnalyzer::PIDContext::addService | ( | uint16_t | service_id | ) |
Register a service id for the PID.
[in] | service_id | A service id which references the PID. |
UString ts::TSAnalyzer::PIDContext::fullDescription | ( | bool | include_attributes | ) | const |
Return a full description, with comment and optionally attributes.
[in] | include_attributes | Include the PID attributes in the description. |