MPEG program stream: Difference between revisions

Content deleted Content added
Blanked the page
Line 1:
'''Program stream''' ('''PS''' or '''MPEG-PS''') is a [[container format (digital)|container format]] for multiplexing [[digital audio]], [[video]] and more. The PS format is specified in [[MPEG-1]] Systems and [[MPEG-2]] Part 1, Systems (ISO/IEC standard [http://neuron2.net/library/mpeg2/iso13818-1.pdf 13818-1]).
Program streams are created by combining one or more [[Packetized Elementary Stream]]s (PES), which have a common time base, into a single stream. It is designed for reasonably reliable media such as disks, in contrast to [[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 code]]s which would make over the air reception difficult, but has less overhead.
 
Program streams are used on [[DVD]] video discs and [[HD DVD]] video discs. The file extensions are [[VOB]] and [[Enhanced VOB|EVO]] respectively. Blu-ray uses a transport stream (TS) format with an additional 4 byte time code added to the beginning of each TS packet[http://en.wikipedia.org/w/index.php?title=MPEG_transport_stream&action=edit&section=11].
 
==Coding structure==
If you open up an unencrypted VOB file or other program stream with a [[hex editor]] you will see the following structure.
 
{|class="wikitable"
|+ Partial Program Stream Pack header format<ref>[http://dvd.sourceforge.net/dvdinfo/packhdr.html Pack Header<!-- Bot generated title -->]</ref>
!Name
!Number<br>of [[bit]]s
!Description
|-
|[[sync byte]]s||32||0x000001BA
|-
|marker bits||2||01[[binary|b]]
|-
|System clock [32..30]||3||[http://www.bretl.com/mpeghtml/SCR.HTM System Clock Reference] (SCR) bits 32 thru 30
|-
|marker bit||1||1 Bit always set.
|-
|System clock [29..15]||15||System clock bits 29 thru 15
|-
|marker bit||1||1 Bit always set.
|-
|System clock [14..0]||15||System clock bits 14 thru 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<br>of [[bytes]]
!Description
|-
|[[sync byte]]s||4||0x000001BB
|-
|header length||2||
|-
|rate bound and marker bits||3||
|-
|audio bound and flags||1||
|-
|flags, market bit, and video bound||1||
|-
|Packet rate restriction and reserved byte||1||
|}
 
==References==
<references />
 
==See also==
*[[Elementary stream]]
*[[Transport stream]]
*[[MPEG-1]]
*[[MPEG-2]]
 
==External links==
* [http://www.chiariglione.org/mpeg/standards/mpeg-2/mpeg-2.htm MPEG-2]
 
{{compu-storage-stub}}
 
[[Category:MPEG]]
 
[[de:Programmstrom]]
[[fr:Program Stream]]