MPEG 트랜스포트 스트림

MPEG transport stream
MPEG 전송 스트림
파일 이름 확장자
.ts, .tsv, .tsa, .m2t[1]
인터넷 미디어 유형
비디오/MP2T[2]
개발자MPEG
초기 릴리즈1995년 7월 10일; 27년 전(1995-07-10)[3]
최신 릴리즈
ISO/IEC 13818-1:2019
2019년 6월, 3년 전(2019-06)
포맷의 종류컨테이너 형식
컨테이너:오디오, 비디오, 데이터
확장처M2TS, TOD
표준.ISO/IEC 13818-1, ITU-T 권장 H.222[3].0
오픈 포맷?네.
프리 포맷?네, 그렇습니다[4].

MPEG 트랜스포트 스트림(MPEG-TS, MTS) 또는 단순 트랜스포트 스트림(TS)은 오디오, 비디오프로그램 및 시스템 정보 프로토콜(PSIP) 데이터의 전송 및 저장을 위한 [5]표준 디지털 컨테이너 형식입니다.DVB, ATSC, IPTV와 같은 방송 시스템에 사용됩니다.

트랜스포트 스트림은 패킷화된 기본 스트림을 캡슐화하는 컨테이너 포맷을 지정합니다.이 포맷은 스트림을 전송하는 통신 채널이 열화되었을 때 전송 무결성을 유지하기 위한 오류 정정동기화 패턴 기능을 갖추고 있습니다.

트랜스포트 스트림은 이름이 비슷한 MPEG 프로그램스트림과는 몇 가지 중요한 점에서 다릅니다.프로그램 스트림은 디스크(DVD 등)와 같은 합리적으로 신뢰할 수 있는 미디어를 위해 설계되어 있는 반면 트랜스포트 스트림은 지상파 또는 위성 방송과 같이 신뢰성이 낮은 전송을 위해 설계되어 있습니다.또, 트랜스포트 스트림은 복수의 프로그램을 반송해도 좋다.

전송 스트림은 공식적으로 ISO/IEC 표준 13818-1 또는 ITU-T Rec. H.222.[3]0으로 알려진 MPEG-2 Part 1, Systems에 명시되어 있습니다.

개요

복수의 MPEG 프로그램이 조합되어 송신 안테나에 송신됩니다.수신기는 스트림 중 하나를 해석 및 디코딩합니다.

트랜스포트 스트림은 MPEG 코덱 또는 임의의 수의 비 MPEG 코덱(AC3 또는 DTS 오디오, MJPEG 또는 JPEG 2000 비디오 등), 자막용 텍스트와 화상, 스트림을 식별하는 테이블, 나아가 브로드캐스터 지정으로 메인 데이터 스트림을 랩하는 다른 서브스트림(PES)을 캡슐화합니다.c 전자 프로그램 가이드와 같은 정보.여러 개의 다른 텔레비전 채널이나 영화의 여러 각도와 같이 많은 스트림들이 종종 함께 섞인다.

각 스트림은 최대 188바이트 섹션으로 분할되어 인터리브됩니다.패킷 사이즈가 작기 때문에 AVI, MOV/MP4, MKV 등의 일반적인 컨테이너에 비해 지연이 적고 오류 복원력이 뛰어난 인터리브가 가능합니다.이는 특히 큰 프레임이 허용할 수 없는 음성 지연을 초래할 수 있는 화상 회의의 경우에 중요합니다.

트랜스포트 스트림은 데이터가 충분하지 [a]않은 경우 Constant Bit Rate(CBR; 고정 비트레이트)로 브로드캐스트되고 패딩 바이트로 채워지는 경향이 있습니다.

요소들

패킷

네트워크 패킷은 트랜스포트 스트림에서 데이터의 기본 단위이며 트랜스포트 스트림은 패킷의 시퀀스일 뿐입니다.각 패킷은 동기 바이트와 헤더로 시작되며, 그 뒤에 옵션의 추가 헤더가 추가될 수 있습니다.나머지 패킷은 payload로 구성됩니다.모든 헤더 필드는 빅 엔디안으로 읽힙니다.패킷의 길이는 188 바이트이지만, 통신 매체에 의해서 정보가 [b]추가되는 경우가 있습니다.188 바이트 패킷사이즈는 원래 Asynchronous Transfer Mode([7][8]ATM; 비동기 전송 모드) 시스템과의 호환성을 위해 선택되었습니다.

부분 전송 스트림 패킷 형식
이름. 비트수 비트마스크(빅엔디안) 묘사
4 바이트 트랜스포트 스트림 헤더
동기 바이트 8 0xff000000 0x47 비트 패턴(ASCII 문자 'G')
트랜스포트 에러 인디케이터(TEI) 1 0x800000 복조기가 FEC 데이터의 오류를 수정할 수 없는 경우에 설정됩니다.패킷이 [9]파손되어 있는 것을 나타냅니다.
Payload Unit Start Indicator(PUSI; 페이로드 유닛 스타트 인디케이터) 1 0x400000 이 패킷에 새로운 페이로드 유닛의 첫 번째 바이트가 포함되어 있을 때 설정됩니다.payload의 첫 번째 바이트는 이 새로운 payload 유닛의 시작점을 나타냅니다.

이 필드를 사용하면 전송 중 읽기를 시작한 수신기가 데이터 추출을 언제 시작할 수 있는지 알 수 있습니다.

전송 우선순위 1 0x200000 현재의 패킷이 같은 PID 의 다른 패킷보다 높은 priority를 가지는 경우에 설정됩니다.
PID 13 0x1fff00 payload 데이터를 설명하는 Packet Identifier.
트랜스포트 스크램블링 제어(TSC) 2 0xc0 '00' = 스크램블되지 않음

DVB-CSAATSC DES의 경우에만:[10]
'01' (0x40) = 향후 사용을 위해 예약됨
'10' (0x80) = 짝수 키를 사용하여 스크램블됨
'11' (0xC0) = 홀수 키를 사용하여 스크램블됨

적응 필드 제어 2 0x30 01 – 적응 필드 없음, 페이로드만,

10 – 적응 필드만, 페이로드 없음
11 – 적응 필드 뒤에 payload가 이어 payload,
00 – 향후 사용을 위해 예약됨

연속성 카운터 4 0xf 각 스트림 내의 페이로드 패킷 시퀀스 번호(0x00 ~0x0F) (PID 8191 제외)
payload 플래그가 설정되어 있는 경우에만 PID 단위로 증가합니다.
옵션 필드
적응 필드 변수 적응 필드 컨트롤이 10 또는 11인 경우 표시됩니다.포맷에 대해서는, 이하를 참조해 주세요.
페이로드 데이터 변수 적응 필드 컨트롤이 01 또는 11인 경우 표시됩니다.payload는 PES 패킷, 프로그램 고유 정보(아래) 또는 기타 데이터일 수 있습니다.
적응 필드 형식
이름. 비트수 비트 마스크 묘사
적응 필드 길이 8 이 바이트 바로 뒤에 있는 적응 필드의 바이트 수
불연속 표시기 1 0x80 연속성 카운터 또는 프로그램 클럭 참조와 관련하여 현재 TS 패킷이 중단 상태인 경우 설정됩니다.
랜덤 액세스 인디케이터 1 0x40 이 시점부터 오류 없이 스트림을 디코딩할 수 있는 경우 설정
기본 스트림 우선 순위 표시기 1 0x20 이 스트림을 "우선순위 높음"으로 간주할 때 설정
PCR 플래그 1 0x10 PCR 필드가 있는 경우 설정
OPCR 플래그 1 0x08 OPCR 필드가 있는 경우 설정
스플라이싱 포인트플래그 1 0x04 스플라이스 카운트다운 필드가 있는 경우 설정
개인 데이터 전송 플래그 1 0x02 전송 개인 데이터가 있는 경우 설정됩니다.
적응 필드 확장 플래그 1 0x01 적응 확장 데이터가 있는 경우 설정됩니다.
옵션 필드
PCR 48 33비트 베이스, 6비트 예약, 9비트 확장으로 저장되는 프로그램 클럭 참조.
값은 base * 300 + extension으로 계산됩니다.
OPCR 48 원래 프로그램 시계 참조.어떤 TS가 다른 TS에 복사될 때 도움이 됩니다.
스플라이스 카운트다운 8 이 1개의 스플라이싱 포인트에서 발생한 TS 패킷 수를 나타냅니다(2개의 보완 서명은 음수일 수 있음).
개인 데이터 길이 전송 8 다음 필드의 길이
개인 데이터 전송 변수 개인 데이터
적응 확장 변수 이하를 참조해 주세요.
바이트 채우기 변수 항상0xFF
적응 확장 형식
이름. 비트수 비트 마스크 묘사
적응 확장 길이 8 0xff00 헤더의 길이
Legal Time Window(LTW; 법정 시간 1 0x0080
분할 환율 플래그 1 0x0040
이음새 없는 스플라이스 플래그 1 0x0020
예약필 5 0x001f
옵션 필드
LTW 플래그 세트(2바이트)
LTW 유효 플래그 1 0x8000
LTW 오프셋 15 0x7fff 패킷이 없어졌을 경우의 버퍼 상태를 판단하기 위한 재로드 캐스터의 추가 정보.
단편 플래그 세트(3바이트)
예약필 2 0xc00000
분할율 22 0x3fffff LTW의 종료 시간을 정의하기 위한 스트림의 레이트(188바이트 패킷 단위).
심리스 스플라이스 플래그 세트(5바이트)
스플라이스 타입 4 0xf000000000 H.262 스플라이스의 파라미터를 나타냅니다.
DTS 다음 액세스 장치 36 0x0efffefffe 스플라이스 포인트의 PES DTS.마커 비트 1개(0x1), 15비트, 마커 비트 1개, 15비트 및 마커 비트 1개 등 여러 필드로 분할하여 총 33개의 데이터 비트를 생성합니다.
페이로드 형식
이름. 비트수 비트 마스크 묘사
페이로드 포인터(옵션) 8 0xff Payload Unit Start Indicator(PUSI) 플래그가 설정되어 있는 경우에만 표시됩니다.

이 바이트 뒤에 새로운 페이로드 유닛이 시작되는 인덱스가 표시됩니다.인덱스 앞의 페이로드 바이트는 이전 페이로드 유닛의 일부입니다.

실제 페이로드 변수 payload의 내용.

Packet Identifier(PID; 패킷 식별자)

트랜스포트 스트림 내의 각 테이블 또는 기본 스트림은 13비트 Packet Identifier(PID; 패킷 식별자)에 의해 식별됩니다.디멀티플렉서는 부분적으로 동일한 PID에 의해 식별된 패킷을 찾아 트랜스포트 스트림에서 기본 스트림을 추출한다.대부분의 어플리케이션에서는 특정 PID가 트랜스포트 스트림에 표시되는 빈도를 결정하기 위해 시분할 다중화가 사용됩니다.

사용 중인 패킷 식별자
십진수 16진수 묘사
0 0x0000 Program Association Table(PAT; 프로그램어소시에이션 테이블)에는 모든 프로그램 맵테이블의 디렉토리 리스트가 포함됩니다.
1 0x0001 조건부 액세스 테이블(CAT)에는 프로그램 맵테이블에서 사용되는 모든 ITU-T Rec. H.222 자격 관리 메시지스트림 디렉토리 목록이 포함됩니다.
2 0x0002 TSDT(Transport Stream Description Table)에는 전체 전송 스트림과 관련된 설명자가 포함되어 있습니다.
3 0x0003 IPMP 제어 정보 테이블에는 프로그램 맵테이블에서 사용되는 모든 ISO/IEC 14496-13 제어 스트림의 디렉토리 목록이 포함되어 있습니다.
4–15 0x0004-0x000F 향후 사용을 위해 예약됨
16–31 0x0010-0x001F DVB메타데이터에서[12] 사용
  • 0x0010: NIT, ST
  • 0x0011: SDT, BAT, ST
  • 0x0012: EIT, ST, CIT
  • 0x0013: RST, ST
  • 0x0014: TDT, TOT, ST
  • 0x0015: 네트워크 동기화
  • 0x0016: RNT
  • 0x0017-0x001B: 향후 사용을 위해 예약됨
  • 0x001C: 인밴드시그널링
  • 0x001D: 측정
  • 0x001E: DIT
  • 0x001F: 앉음
32-8186 0x0020-0x1FFA 지도 테이블, 기본 스트림 및 기타 데이터 테이블을 프로그래밍하기 위해 필요에 따라 할당할 수 있습니다.
8187 0x1FFB DigiCipher 2/ATSC MGT 메타데이터에서 사용
8188–8190 0x1FFC-0x1FFE 지도 테이블, 기본 스트림 및 기타 데이터 테이블을 프로그래밍하기 위해 필요에 따라 할당할 수 있습니다.
8191 0x1FFF 늘 패킷(고정 대역폭 패딩에 사용)

프로그램

트랜스포트 스트림에는 프로그램의 개념이 있습니다.각 프로그램은 프로그램 맵 테이블(PMT)에 의해 기술됩니다.해당 프로그램과 관련된 기본 스트림은 PMT에 나열된 PID를 가집니다. 다른 PID는 PMT 자체와 연결됩니다.예를 들어, 디지털 텔레비전에 사용되는 트랜스포트 스트림은 세 개의 텔레비전 채널을 나타내는 세 개의 프로그램을 포함할 수 있습니다.각 채널이 1개의 비디오스트림, 1개 또는2개의 오디오스트림 및 필요한 메타데이터로 구성되어 있다고 가정합니다.3개의 채널 중 하나를 디코딩하는 수신기는 프로그램과 관련된 각 PID의 payload를 디코딩하기만 하면 된다.다른 모든 PID의 내용을 폐기할 수 있습니다.여러 프로그램이 있는 트랜스포트 스트림을 MPTS(Multi-Program Transport Stream)라고 합니다.단일 프로그램 전송 스트림을 Single Program Transport Stream(SPTS; 단일 프로그램 전송 스트림)이라고 합니다.

프로그램 고유의 정보

PSI 테이블에는 프로그램 관련성(PAT), 프로그램 맵(PMT), 조건부 액세스(CAT), 네트워크 정보(NIT)의 4가지 프로그램이 있습니다.MPEG-2 사양에서는 CAT 및 NIT 포맷은 지정되어 있지 않습니다.

PCR

디코더가 관련된 비디오에 일치하는 오디오 트랙 등의 동기화된 콘텐츠를 적어도 100밀리초마다 제공할 수 있도록 MPEG-2 트랜스포트 스트림 패킷의 적응 필드에 프로그램 클럭 레퍼런스(PCR)를 송신한다.MPEG-2 프로그램의 PCR을 사용하는 PID는 연관된PMT의 pcr_pid 값으로 식별됩니다.PCR 값이 올바르게 사용되면 디코더에서 system_timing_clock을 생성하기 위해 사용됩니다.System Time Clock(STC; 시스템타임 클럭) 디코더는 올바르게 구현되면 오디오 및 비디오의 기본 스트림을 동기화하기 위해 사용되는 고정밀 타임 베이스를 제공합니다.MPEG-2의 타이밍은 이 클락을 참조합니다.예를 들어 Presentation Time Stamp(PTS; 프레젠테이션타임스탬프)는 PCR에 상대적인 것을 목적으로 하고 있습니다.첫 번째 33비트는 90kHz 클럭을 기반으로 합니다.마지막 9비트는 27MHz 클럭을 기반으로 합니다.PCR에 허용되는 최대 지터는 +/- 500 ns입니다.

늘 패킷

ATSCDVB와 같은 일부 전송 방식은 전송 스트림에 엄격한 고정 비트레이트 요건을 부과합니다.스트림이 일정한 비트환율을 유지하기 위해 멀티플렉서는 추가 패킷을 삽입해야 할 수 있습니다.PID 0x1FF는 이 목적으로 예약되어 있습니다.늘 패킷의 payload는 모두0 이며, 수신측은 [13]그 내용을 무시합니다.

디지털 비디오 카메라에서 사용

Transport Stream은 원래 방송용으로 설계되었습니다.이후 표준 188바이트 패킷에 4바이트의 타임코드(TC) 필드를 추가하여 디지털 비디오 카메라, 레코더 및 플레이어에 사용할 수 있도록 조정되어 192바이트 [14][15]패킷이 생성되었습니다.이것은 비공식적으로 M2TS 스트림이라고 불리는 것입니다.Blu-ray Disc Association에서는 이를 "BDAV MPEG-2 트랜스포트 스트림"[14]이라고 부릅니다.JVC는 GZ-HD7[16][17]같은 HDD 기반 캠코더에 사용[c] 때 TOD라고 불렀습니다.타임코드를 사용하면 미디어 플레이어 또는 비선형 비디오 편집 [18]시스템에서 스트림의 모든 부분에 빠르게 액세스할 수 있습니다.또한 여러 카메라의 비디오 스트림을 여러 카메라로 동기화하기 위해 사용됩니다.

Blu-ray에서 사용

메뉴 지원으로 작성된 Blu-ray Disc 비디오 타이틀은 Blu-ray Disc Movie(BDMV) 형식이며 MPEG-2 트랜스포트 스트림 [19][20]형식을 기반으로 한 BDAV 컨테이너에 오디오, 비디오 및 기타 스트림을 포함합니다.Blu-ray Disc 비디오에서는, 이러한 수정된 MPEG-2 트랜스포트 스트림을 사용하고 있습니다.DVD의 프로그램 스트림에서는 트랜스포트 오버헤드가 발생하지 않습니다.

영화 개봉에 사용되는 BDMV 형식의 소비자 지향적인 대안인 BDAV(Blu-ray Disc Audio/Visual) 형식도 있습니다.BDAV 포맷은 오디오/비디오 [20][d]녹화에 사용할 수 있는 Blu-ray 디스크에서 사용됩니다.Blu-ray 디스크는 MPEG-2 트랜스포트 스트림 녹음 방식을 채용하고 있습니다.이것에 의해,[15] BDAV 변환된 디지털 브로드캐스트의 트랜스포트 스트림을, 패킷의 변경을 최소한으로 억제해 그대로 기록할 수 있습니다.또한 BDAV 변환된 디지털 브로드캐스트를 그대로 기록하고 스트림에서 불필요한 패킷을 폐기하는 것만으로 데이터를 편집할 수 있는 간단한 스트림 컷 스타일 편집이 가능합니다.지극히 자연스럽지만, 고속으로 사용하기 쉬운 검색 기능이 [15][22]내장되어 있습니다.

「 」를 참조해 주세요.

메모들

  1. ^ Blu-ray 포맷에는 CBR이 필요 없습니다.
  2. ^ 전송 오류 수정은 ISDB & DVB(16바이트) 및 ATSC(20바이트)[6]에 의해 추가되며, M2TS 포맷은 4바이트의 저작권 및 타임스탬프 태그를 가진 패킷에 프리픽스를 붙입니다.
  3. ^ "Transport stream on disk"의 약자일 수 있습니다.
  4. ^ 파일 이름 확장자 .m2ts는 각 [14][21]패킷에 4개의 옥텟이 추가되어 호환성이 없는 BDAV MPEG-2 트랜스포트 스트림이 포함된 Blu-ray Disc 비디오 파일에서 사용됩니다.

레퍼런스

  1. ^ "TVNT.net".
  2. ^ MIME Type Registration of RTP Payload Formats. July 2003. doi:10.17487/RFC3555. RFC 3555.
  3. ^ a b c ITU-T (October 2014). "Recommendation H.222.0 (10/14)".
  4. ^ 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.
  5. ^ "MPEG-2 Transport Stream". AfterDawn.com. Retrieved 8 June 2010.
  6. ^ "ATSC transmission". Broadcastengineering.com. 20 June 2005. Retrieved 17 May 2012.
  7. ^ "MPEG Systems FAQ". Mpeg.chiariglione.org. Retrieved 17 May 2012.
  8. ^ "ATSC MPEG Transport Stream Monitor". Tek.com. Retrieved 17 May 2012.
  9. ^ "TSReader". Coolstf.com. 7 April 2008. Archived from the original on 27 March 2010. Retrieved 17 May 2012.
  10. ^ "Standards – DVB" (PDF). Dvb.org. Archived from the original (PDF) on 13 March 2011. Retrieved 11 September 2012.
  11. ^ Fairhurst, Gorry. "MPEG-2 Transmission". Archived from the original on 13 August 2017. Retrieved 30 November 2018.
  12. ^ "5.1.3 Coding of PID and table_id fields". Digital Video Broadcasting (DVB); Specification for Service Information (SI) in DVB systems (PDF). Etsi.org. EN. Vol. 300 468 (v1.13.1 ed.). 2012. p. 20. Retrieved 13 October 2016.
  13. ^ A Guide to MPEG Fundamentals and Protocol Analysis (PDF), Tektronix, p. 37, retrieved 23 April 2020
  14. ^ a b c BD ROM – Audio Visual Application Format Specifications (PDF), Blu-ray Disc Association, March 2005, p. 15-16, retrieved 26 July 2009
  15. ^ a b c BD-RE – Audiovisual Application Format Specification for BD-RE 2.1 (PDF), Blu-ray Disc Association, March 2008, archived from the original (PDF) on 6 February 2009
  16. ^ "Steve Mullen, M2TS primer". Dvinfo.net.
  17. ^ "Working with JVC Everio MOD & TOD files". Archived from the original on 23 October 2008.
  18. ^ "How MPEG-TS works". Forum.videohelp.com. Retrieved 17 May 2012.[자체 인식 소스?]
  19. ^ Afterdawn.com 용어집– BD-MV(Blu-ray Movie) 및 BDAV 컨테이너 2009년 2월 18일 Wayback Machine에서 아카이브, 2009년 7월 26일 취득
  20. ^ a b Afterdawn.com 용어집– BDAV 컨테이너, 2009년 7월 26일 취득
  21. ^ Videohelp.com Blu-ray 디스크HD DVD란?2009년 12월 24일 Wayback Machine에서 아카이브 완료, 2009년 7월 26일 취득
  22. ^ Blu-ray Disc Association (2004년 8월)Blu-ray 디스크 포맷, 화이트 페이퍼 (PDF) 22페이지, 2009년 7월 28일 취득

외부 링크