Keep TS packets with no continuity counter increase and no payload

This behavior is defined in ISO-13818-1, section 2.4.3.3(continuity_counter).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=140029161
This commit is contained in:
aquilescanta 2016-11-23 07:13:36 -08:00 committed by Oliver Woodman
parent eb62d00ea4
commit a7dff14d3c

View file

@ -216,9 +216,11 @@ public final class TsExtractor implements Extractor {
int previousCounter = continuityCounters.get(pid, continuityCounter - 1);
continuityCounters.put(pid, continuityCounter);
if (previousCounter == continuityCounter) {
// Duplicate packet found.
tsPacketBuffer.setPosition(endOfPacket);
return RESULT_CONTINUE;
if (payloadExists) {
// Duplicate packet found.
tsPacketBuffer.setPosition(endOfPacket);
return RESULT_CONTINUE;
}
} else if (continuityCounter != (previousCounter + 1) % 16) {
discontinuityFound = true;
}