| 122 | }; |
| 123 | |
| 124 | uint32_t crc32_ts(const void* data, size_t len) { |
| 125 | const uint8_t* p = (const uint8_t*)data; |
| 126 | uint32_t crc = 0xffffffff; |
| 127 | for (size_t i = 0; i < len; ++i) { |
| 128 | crc = (crc << 8) ^ crctab[(crc >> 24) ^ *p++]; |
| 129 | } |
| 130 | return crc; |
| 131 | } |
| 132 | |
| 133 | // Transport Stream packets are 188 bytes in length. |
| 134 | static const size_t TS_PACKET_SIZE = 188; |