6#include <unordered_map>
13 uint32_t section_syntax_indicator;
14 uint32_t section_length;
15 uint32_t transport_stream_id;
16 uint32_t version_number;
17 uint32_t current_next_indicator;
18 uint32_t section_number;
19 uint32_t last_section_number;
21 uint32_t program_number[44];
26 bool HasPID(uint32_t pid, uint32_t &idx)
28 if(section_length <= 9)
return false;
29 uint32_t N = (section_length-9)/4;
30 for(uint32_t i=0; i<N; i++){
44 uint32_t elementary_PID;
45 uint32_t ES_info_length;
51 uint32_t section_syntax_indicator;
52 uint32_t section_length;
53 uint32_t program_number;
54 uint32_t version_number;
55 uint32_t current_next_indicator;
56 uint32_t section_number;
57 uint32_t last_section_number;
59 uint32_t program_info_length;
62 std::vector<MPEGProgramMapEntity> entities;
66 bool HasPID(uint32_t pid)
68 for(
auto &tmp : entities){
69 if(tmp.elementary_PID == pid)
return true;
78 bool HasPID(uint32_t )
85 uint32_t discontinuity_indicator;
86 uint32_t random_access_indicator;
87 uint32_t elementary_stream_priority_indicator;
90 uint32_t splicing_point_flag;
91 uint32_t transport_private_data_flag;
92 uint32_t adaptation_field_extension_flag;
93 uint64_t program_clock_reference_base;
94 uint32_t program_clock_reference_extension;
95 uint64_t original_program_clock_reference_base;
96 uint32_t original_program_clock_reference_extension;
97 uint32_t splice_countdown;
98 uint32_t transport_private_data_length;
99 uint32_t private_data_byte[184];
100 uint32_t adaptation_field_extension_length;
102 uint32_t piecewise_rate_flag;
103 uint32_t seamless_splice_flag;
104 uint32_t ltw_valid_flag;
106 uint32_t piecewise_rate;
107 uint32_t Splice_type;
108 uint64_t DTS_next_AU;
114 uint32_t transport_error_indicator = 0;
115 uint32_t payload_unit_start_indicator = 0;
116 uint32_t transport_priority = 0;
118 uint32_t transport_scrambling_control = 0;
119 uint32_t adaptation_field_control = 0;
120 uint32_t continuity_counter = 0;
126 std::vector<uint8_t> data;
145 std::unordered_map<uint32_t, PES_Sinc> pes_sinc;
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....