A MPEG-2 Transport Stream, also referred to as MPEG or MPEG-2 TS or simply TS, is a special format for transmitting MPEG (MPEG-1, MPEG-2, or MPEG-4) video muxed with other streams. It's commonly used for digital television and Streaming across networks, including the internet.
Unlike Programs Streams, which are optimized for efficient storage and assume the decoder has access to the entire stream for synchronization purposes, Transport Streams are designed for delivering data in real time over unreliable transport media, to a device which is assumed to start reading data from some point after the beginning of transmission.
In order to accommodate this, extra timestamps must be added to the stream at a regular interval, with synchronization of various packets(chunks of elementary streams) set relative to the most recent timestamp instead of a single point at the beginning of the file like a Program Stream.
There are two major variants of MPEG-2 TS. If multiple programs, which are sets of video and other Elementary Streams intended to play together, are muxed into the TS it's called an MPTS, or Multiple Program Transport Stream. This is generally used for more traditional broadcasting like DVB or over the air HDTV. After the decoder receives the TS it can decode only the streams for the program it's playing, and ignore streams for other programs.
If only a single program is muxed into a TS it's considered an SPTS or Single Program Transport Stream. SPTS streams generally serve two purposes. When the program to be decoded is known in advance, like with streaming across the internet, it doesn't make sense to waste bandwidth transmitting streams that won't ever be decoded, but preserving timing information is still essential. An SPTS solves both problems.
The other common use for SPTS streams is for stream Capture.Capture devices that simply copy MPEG-2 streams as they're broadcast use SPTS streams because that's what they're capturing. Since only one program will be captured at a time, that's what the resulting MPEG file will contain.
Since most applications designed to open MPEG-2 files expect the standard information from a Program Stream, it's often necessary to re-package the elementary streams in that format before working with them on your computer. Fortunately, since PS and TS streams only differ in delivery information, rather than actual video or audio data, this can be done without any re-encoding or quality loss.