00001
00002
00003 #include <stdint.h>
00004 #include "tspacket.h"
00005
00006 const unsigned int TSHeader::kHeaderSize = 4;
00007
00008 const unsigned int TSPacket::kSize = 188;
00009 const unsigned int TSPacket::kPayloadSize = 188-4;
00010
00011 const unsigned int TSPacket::kDVBEmissionSize = 204;
00012 const unsigned int TSPacket::kISDBEmissionSize = 204;
00013 const unsigned int TSPacket::k8VSBEmissionSize = 208;
00014
00015 const unsigned char TSHeader::kPayloadOnlyHeader[4] =
00016 {
00017 SYNC_BYTE,
00018 0x40,
00019 0x0,
00020 0x10,
00021 };
00022
00023 const unsigned char NULL_PACKET_BYTES[188] =
00024 {
00025 SYNC_BYTE, 0x1F, 0xFF, 0x00,
00026 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00027 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00028 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00029 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00030 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00031 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
00032 };
00033
00034 const TSPacket *TSPacket::kNullPacket =
00035 reinterpret_cast<const TSPacket*>(NULL_PACKET_BYTES);
00036
00037 QString TSPacket::toString() const
00038 {
00039 QString str;
00040 str.append("TSPacket @0x%1 ").arg((intptr_t)(&data()[0]),0,16);
00041 str.append("raw: 0x%1 0x%2 0x%3 0x%4\n")
00042 .arg(int(data()[0]),0,16).arg(int(data()[1]),0,16)
00043 .arg(int(data()[2]),0,16).arg(int(data()[3]),0,16);
00044 str.append(" inSync: %1\n").arg(HasSync());
00045 str.append(" transportError: %1\n").arg(TransportError());
00046 str.append(" payloadStart: %1\n").arg(PayloadStart());
00047 str.append(" priority: %1\n").arg(Priority());
00048 str.append(" pid: %1\n").arg(PID());
00049 str.append(" scrambled (if>1): %1\n").arg(ScramblingControl());
00050 str.append(" adaptationFieldControl: %1\n").arg(AdaptationFieldControl());
00051 str.append(" continuityCounter: %1\n").arg(ContinuityCounter());
00052 return str;
00053 }