MPEG program stream
{{short description|Container format for multiplexing digital audio, video and more}}
{{Infobox file format
| name = MPEG Program Stream
| icon =
| logo =
| extension = .mpg, .mpeg, .m2p, .ps
| mime = video/MP2P, video/MP1S,{{cite web |url=http://tools.ietf.org/html/rfc3555#page-39 |title=RFC 3555 - MIME Type Registration of RTP Payload Formats |date=July 2003 |access-date=2010-03-20}} video/mpeg{{cite web |url=https://www.nationalarchives.gov.uk/PRONOM/Format/proFormatSearch.aspx?status=detailReport&id=660 |title=Details for: MPEG-2 Program Stream |work=PRONOM: The technical registry |publisher=The National Archives (United Kingdom)}}{{cite web |url=https://www.nationalarchives.gov.uk/PRONOM/Format/proFormatSearch.aspx?status=detailReport&id=659 |title=Details for: MPEG-1 Program Stream |work=PRONOM: The technical registry |publisher=The National Archives (United Kingdom)}}
| type code =
| magic =
| owner = MPEG
| released = {{Start date and age|1993|08|df=yes}}{{cite web | url=http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=19180 | title=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 | author=ISO | year=1993 | access-date=2010-07-18 }}
| latest release version = ISO/IEC 13818-1:2019
| latest release date = {{Start date and age|2019|06|df=yes}}
| type = Container format
| container for = Audio, video, data
| contained by =
| extended from =
| standard = ISO/IEC 11172-1, ISO/IEC 13818-1,{{cite web | url=http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=22989 | title=ISO/IEC 13818-1:1996 - Information technology -- Generic coding of moving pictures and associated audio information: Systems | author=ISO | year=1996 | access-date=2010-07-18 }} ITU-T H.222.0{{cite web|url=http://www.itu.int/dms_pubrec/itu-t/rec/h/T-REC-H.222.0-200605-I!!SUM-HTM-E.htm |archive-url=https://web.archive.org/web/20110519041216/http://www.itu.int/dms_pubrec/itu-t/rec/h/T-REC-H.222.0-200605-I%21%21SUM-HTM-E.htm |archive-date=2011-05-19 |title=H.222.0 Summary |author=ITU-T |date=May 2006 |access-date=2010-06-03 |url-status=dead }}{{cite web |url=http://www.itu.int/rec/T-REC-H.222.0 |title=H.222.0 : Information technology - Generic coding of moving pictures and associated audio information: Systems |author=ITU-T |access-date=2010-06-03}}
| open = Yes
}}
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{{citation |url=http://neuron2.net/library/mpeg2/iso13818-1.pdf |archive-url=https://web.archive.org/web/20100611214610/http://neuron2.net/library/mpeg2/iso13818-1.pdf |archive-date=2010-06-11 |title=ISO/IEC 13818-1:2000 - Information technology -- Generic coding of moving pictures and associated audio information: Systems |publisher=neuron2.net |date=2000-12-01}}/ITU-T H.222.0). The MPEG-2 Program Stream is analogous and similar to ISO/IEC 11172 Systems layer and it is forward compatible.ISO (2000-12-01) [https://web.archive.org/web/20100611214610/http://neuron2.net/library/mpeg2/iso13818-1.pdf ISO/IEC 13818-1 : 2000, Second edition] Page X, Retrieved on 2009-07-25[https://books.google.com/books?id=L7N0LQvBKtYC&dq=mpeg%20program%20stream%20specification&pg=PA39 Data Broadcasting, MPEG-2 Transport Basics, MPEG-2 Program Stream], Retrieved on 2009-07-25
Program streams are used on DVD-Video discs and HD DVD video discs, but with some restrictions and extensions.[http://dvd.sourceforge.net/dvdinfo/dvdmpeg.html DVD - MPeg differences], Retrieved on 2009-07-24MPEG.org (July 21, 1996) [http://www.mpeg.org/MPEG/DVD/Book_B/Video.html DVD Technical Notes - Video Data Specifications], Retrieved on 2009-07-25 The filename extensions are VOB and EVO respectively.
Coding structure
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.
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. It can also contain MPEG-4 Part 2 video, MPEG-2 Part 7 audio (AAC) or MPEG-4 Part 3 (AAC) audio, but they are rarely used.{{Citation needed|reason=MPEG-4 Part 2 streams can be found in many countries and increasingly so as ASO continues worldwide|date=August 2010}} 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.[http://www.mpucoder.com/DVD/vobov.html What is a VOB file], Retrieved on 2009-07-26 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.{{cite web |url=https://smpte-ra.org/mpeg-ts-ids |title=MPEG Transport Stream Identifiers |publisher=SMPTE Registration Authority, LLC |access-date=2016-09-16}}
Coding details
class="wikitable"
|+ Partial MPEG-2 Program Stream pack header format{{Cite web|url=https://dvd.sourceforge.net/dvdinfo/packhdr.html|title=Pack Header|website=dvd.sourceforge.net}} !Name !Number !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 |
class="wikitable"
|+ Partial system header format !Name !Number !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
References
External links
- [http://mpeg.chiariglione.org/standards/mpeg-2/mpeg-2.htm MPEG-2]
- [http://mpeg.chiariglione.org/ Official MPEG web site]
- [https://web.archive.org/web/20121113135154/http://www.bbc.co.uk/rd/pubs/papers/index-mpeg-vision.shtml BBC On MPEG]
- [http://tools.ietf.org/html/rfc3555#page-40 RFC 3555] - MIME Type Registration of RTP Payload Formats (video/MP2P, video/MP1S)
{{Compression formats}}
{{MPEG}}
{{DEFAULTSORT:Mpeg Program Stream}}