Я хочу знать, как добавить PAT и PMT в заголовки TS на MPEG 2 TS. Я широко прочитал спецификацию о MPEG 2 TS. Мне удалось создать заголовок PES и заголовки полей адаптации, но я не знаю, вставлять ли PAT и PMT в заголовок TS, это мой код, пожалуйста (java для android)
private void ADD_TS_header(byte[] packet,ByteBuffer buffer){
/*0 sync_byte 8 bits
1 transport_error_indicator 1 bit
2 payload_unit_start_indicator 1 bit
3 transport_priority 1 bit
4 PID 13 bits
5 transport_scrambling_control 2 bits
6 adaptation_field_control 2 bits
7 continuity_counter 4 bits*/
int PID_flag = 0b0000000000000; // (0x0000 >> 13)
int adaptation_field_control_flag = 0b01; // ((0x1 & 0x3)>>1)
packet[0] = (byte) (byte)(0x47 & 0xff); // Octet de synchronisation vaut (byte)0x47 01000111
packet[1] = (byte) 0x800000; // Indicateur d'erreur de transmission
packet[2] = (byte) 0x400000; // Identificateur de début de la charge utile
packet[3] = (byte) 0x200000; // Priorité de transmission, 0 est la priorité basse, 1 est la priorité haute
packet[4] = (byte) PID_flag; // Un PAT est dans des paquets ayant un code PID de zéro (0x0000)
/* if (packet[4] == 0) {
// add PAT and PMT from PSI
}*/
packet[5] = (byte) 0x00; // Contrôle du brouillage de la transmission, 00 signifie non crypté
packet[6] = (byte) adaptation_field_control_flag; // indique si elle contient la région adaptative (indication field)
packet[7] = (byte) (0xf) ;
/* if (packet[6] == 11 || packet[6] == 10) {
add_adaptation_field() exist;
}else{
not adaptation field such as in this case
}*/
}