             var filteredTags : Vector.<FLVTag>=  new Vector.<FLVTag>();
             var filteredDuration : Number = 0;
             aacIdx = avcIdx = disIdx = metIdx = videoIdx = audioIdx = lastIdx = -1;
+            audio_dts = video_dts = Number.POSITIVE_INFINITY;
             for (var i : int = 0; i < tags.length; i++) {
                 var tag : FLVTag = tags[i];
                 switch(tag.type) {

                        // retrieve first keyframe after first_pts
                        if (videoIdx == -1 && tag.pts > first_pts && tag.keyframe) {
                            lastIdx = videoIdx = i;
                            CONFIG::LOGGING {
                                Log.debug("found AVC_NALU_K after overlap @PTS:" + tag.pts);
                            }

                // modify PTS for DISCONTINUITY/METADATA/AAC_HEADER/AVC_HEADER tag
                // and push as filtered tag
                if(disIdx >=0) {
                    tags[disIdx].pts = tags[disIdx].dts = Math.min(audio_dts,video_dts);
                    filteredTags.push(tags[disIdx]);
                }

                if(metIdx >=0) {
                    tags[metIdx].pts = tags[metIdx].dts = Math.min(audio_dts,video_dts);
                    filteredTags.push(tags[metIdx]);
                }
                if(aacIdx >=0) {
                    tags[aacIdx].pts = tags[aacIdx].dts = audio_dts;
                    filteredTags.push(tags[aacIdx]);
                }
                if(avcIdx >=0) {
                    tags[avcIdx].pts = tags[avcIdx].dts = video_dts;
                    filteredTags.push(tags[avcIdx]);
                }

