diff --git a/lib/transmuxer.js b/lib/transmuxer.js
index <HASH>..<HASH> 100644
--- a/lib/transmuxer.js
+++ b/lib/transmuxer.js
@@ -115,8 +115,7 @@ TransportParseStream = function() {
   self = this;
 
   this.packetsWaitingForPMT = [];
-  this.foundPMT = false;
-  this.programMapTable = {};
+  this.programMapTable = undefined;
 
   parsePsi = function(payload, psi) {
     var offset = 0;
@@ -189,7 +188,6 @@ TransportParseStream = function() {
       offset += ((payload[offset + 3] & 0x0F) << 8 | payload[offset + 4]) + 5;
     }
 
-    self.foundPMT = true;
     // record the map on the packet as well
     pmt.programMapTable = self.programMapTable;
 
@@ -287,7 +285,7 @@ TransportParseStream = function() {
       result.type = 'pmt';
       parsePsi(packet.subarray(offset), result);
       this.trigger('data', result);
-    } else if (!this.foundPMT) {
+    } else if (this.programMapTable === undefined) {
       this.packetsWaitingForPMT.push([packet, offset, result]);
     } else {
       this.processPES_(packet, offset, result);
Get rid of the `foundPMT` flag in the TransportParseStream