Program stream (PS or MPEG-PS) is a container format for multiplexing digital audio, video and more. The PS format is specified in MPEG-1 Part 1 (ISO/IEC 11172-1) and MPEG-2 Part 1, Systems (ISO/IEC standard 13818-1[9]/ITU-T H.222.0[6][7]). The MPEG-2 Program Stream is analogous and similar to ISO/IEC 11172 Systems layer and it is forward compatible.[10][11]

MPEG Program Stream
Filename extension
.mpg, .mpeg, .m2p, .ps
Internet media type
video/MP2P,[1] video/MP1S,[1] video/mpeg[2][3]
Uniform Type Identifier (UTI)public.mpeg[2][3]
Developed byMPEG
Initial releaseAugust 1993; 31 years ago (1993-08)[4]
Latest release
ISO/IEC 13818-1:2019
June 2019; 5 years ago (2019-06)
Type of formatContainer format
Container forAudio, video, data
Extended toVOB, EVO, MOD
StandardISO/IEC 11172-1,[4] ISO/IEC 13818-1,[5] ITU-T H.222.0[6][7]
Open format?Yes
Free format?Yes[8]

Program streams are used on DVD-Video discs and HD DVD video discs, but with some restrictions and extensions.[12][13] The filename extensions are VOB and EVO respectively.

Coding structure

edit

Program streams are created by combining one or more Packetized Elementary Streams (PES), which have a common time base, into a single stream. It is designed for reasonably reliable media such as disks, in contrast to MPEG transport stream which is for data transmission in which loss of data is likely. Program streams have variable size records and minimal use of start codes which would make over the air reception difficult, but has less overhead. Program stream coding layer allows only one program of one or more elementary streams to be packaged into a single stream, in contrast to transport stream, which allows multiple programs.[10]

MPEG-2 Program stream can contain MPEG-1 Part 2 video, MPEG-2 Part 2 video, MPEG-1 Part 3 audio (MP3, MP2, MP1) or MPEG-2 Part 3 audio.[10] It can also contain MPEG-4 Part 2 video, MPEG-2 Part 7 audio (AAC) or MPEG-4 Part 3 (AAC) audio,[10] but they are rarely used.[citation needed] The MPEG-2 Program stream has provisions for non-standard data (e.g. AC-3 audio or subtitles) in the form of so-called private streams.[14] International Organization for Standardization authorized SMPTE Registration Authority, LLC as the registration authority for MPEG-2 format identifiers. It publishes a list of compression formats which can be encapsulated in MPEG-2 transport stream and program stream.[15]

Coding details

edit
Partial MPEG-2 Program Stream pack header format[16]
Name Number
of bits
Description
sync bytes 32 0x000001BA
marker bits 2 01b for MPEG-2 version. The marker bits for the MPEG-1 version are 4 bits with value 0010b.
System clock [32..30] 3 System Clock Reference (SCR) bits 32 to 30
marker bit 1 1 Bit always set.
System clock [29..15] 15 System clock bits 29 to 15
marker bit 1 1 Bit always set.
System clock [14..0] 15 System clock bits 14 to 0
marker bit 1 1 Bit always set.
SCR extension 9
marker bit 1 1 Bit always set.
bit rate 22 In units of 50 bytes per second.
marker bits 2 11 Bits always set.
reserved 5 reserved for future use
stuffing length 3
stuffing bytes 8*stuffing length
system header (optional) 0 or more if system header start code follows: 0x000001BB
Partial system header format
Name Number
of bytes
Description
sync bytes 4 0x000001BB
header length 2
rate bound and marker bits 3
audio bound and flags 1
flags, marker bit, and video bound 1
Packet rate restriction and reserved byte 1

See also

edit

References

edit
  1. ^ a b "RFC 3555 - MIME Type Registration of RTP Payload Formats". July 2003. Retrieved 2010-03-20.
  2. ^ a b "Details for: MPEG-2 Program Stream". PRONOM: The technical registry. The National Archives (United Kingdom).
  3. ^ a b "Details for: MPEG-1 Program Stream". PRONOM: The technical registry. The National Archives (United Kingdom).
  4. ^ a b ISO (1993). "ISO/IEC 11172-1:1993 - Information technology -- Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s -- Part 1: Systems". Retrieved 2010-07-18.
  5. ^ ISO (1996). "ISO/IEC 13818-1:1996 - Information technology -- Generic coding of moving pictures and associated audio information: Systems". Retrieved 2010-07-18.
  6. ^ a b ITU-T (May 2006). "H.222.0 Summary". Archived from the original on 2011-05-19. Retrieved 2010-06-03.
  7. ^ a b ITU-T. "H.222.0 : Information technology - Generic coding of moving pictures and associated audio information: Systems". Retrieved 2010-06-03.
  8. ^ MPEG-2 Encoding Family (Full draft). Sustainability of Digital Formats. Washington, D.C.: Library of Congress. 14 February 2012. Retrieved 13 December 2021. Licenses pertain to tools and not to streams or files per se.
  9. ^ ISO/IEC 13818-1:2000 - Information technology -- Generic coding of moving pictures and associated audio information: Systems (PDF), neuron2.net, 2000-12-01, archived from the original (PDF) on 2010-06-11
  10. ^ a b c d ISO (2000-12-01) ISO/IEC 13818-1 : 2000, Second edition Page X, Retrieved on 2009-07-25
  11. ^ Data Broadcasting, MPEG-2 Transport Basics, MPEG-2 Program Stream, Retrieved on 2009-07-25
  12. ^ DVD - MPeg differences, Retrieved on 2009-07-24
  13. ^ MPEG.org (July 21, 1996) DVD Technical Notes - Video Data Specifications, Retrieved on 2009-07-25
  14. ^ What is a VOB file, Retrieved on 2009-07-26
  15. ^ "MPEG Transport Stream Identifiers". SMPTE Registration Authority, LLC. Retrieved 2016-09-16.
  16. ^ "Pack Header". dvd.sourceforge.net.
edit