There are several ways to embed filler data into a MPEG transport stream (MPEG-TS) conforming to ITU-T Rec. H.222.0 (also known as ISO/IEC 13818-1). Besides using null packets having the reserved PID
0x1FFF, within a video elementary stream (ES) zero byte stuffing can be used (see mpeg2cleaner). H.264 and H.265 both also provide a specific NAL unit for filler data.
Another option to insert filler data is the use of special TS packets which only have an Adaptation Field (and no payload). Furthermore the indicators/flags bitmask at the beginning of the Adaptation Field is zero, so that the Adaptation Field does not contain meaningful information. The remaining TS packet then comprises of stuffing bytes only. The following picture shows such TS packets in a hex editor:
As in TS packets carrying only an Adaptation Field the Continuity Counter is not increased, this special TS packets can be removed without the need to manipulate other TS packets. The AFFcleaner performs the removal of such TS packets containing Adaptation Field fillers.
If you have questions/suggestions/criticism, please use the e-mail address in the homepage imprint.
Meanwhile also some other programs remove Adaptation Field filler data:
If there is a similar feature in another program, I would be glad to get a hint, so that it can be listed here.
- VDR - Video Disk Recorder (since v2.3.1)
- DVBViewer Pro (since v5.5.0, can be activated optionally)
- DVBViewer Recording Service (since v1.31, can be activated optionally)
AFFcleaner v1.0a - Windows version
AFFcleaner v1.0a - PPA for Ubuntu 14.04/16.04 (i386/AMD64)
AFFcleaner v1.0a - C source code
- PID statistics
- ignore Null Packets