맨위로가기

MPEG 트랜스포트 스트림

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

MPEG 트랜스포트 스트림은 OSI 네트워크 프로토콜 스택과 유사한 계층 구조를 가지며, 디지털 방송 및 저장 매체에서 오디오, 비디오 및 기타 데이터를 전송하는 데 사용되는 컨테이너 형식이다. 트랜스포트 스트림은 패킷, PID, 프로그램, 프로그램 특정 정보(PSI), PCR 등으로 구성되며, 다중화 및 역다중화 과정을 거쳐 데이터를 효율적으로 전송한다. 각 패킷은 188바이트 또는 204/208바이트의 고정된 길이를 가지며, PID를 통해 각 스트림을 식별한다. 블루레이 디스크 및 디지털 비디오 카메라에서도 활용되며, 특히 블루레이 디스크 영화(BDMV) 및 BDAV 형식에서 오디오, 비디오 스트림을 저장하는 데 사용된다.

더 읽어볼만한 페이지

  • MPEG-2 - H.262/MPEG-2 파트 2
    H.262/MPEG-2 파트 2는 디지털 TV 및 DVD 등에 사용되는 영상 압축 표준으로, HDTV 카메라의 비압축 영상 스트림을 효율적으로 압축하기 위해 다양한 화면 샘플링 기술을 활용하며, DVD-Video, HDV, XDCAM 등에서 활용된다.
  • MPEG-2 - MPEG 프로그램 스트림
    MPEG 프로그램 스트림은 신뢰성 있는 미디어를 위해 설계된 코딩 구조로, 공통의 시간 기준을 갖는 하나 이상의 PES를 결합하여 다양한 코덱을 지원하며 팩 헤더와 시스템 헤더를 포함하는 특정 코딩 방식을 따른다.
  • ATSC - 디지털 표준 텔레비전
    디지털 표준 텔레비전(SDTV)은 아날로그 TV의 디지털화를 위해 개발된 표준으로, 디지털 TV 방송과 DVD 플레이어 등에서 사용되며, 고스트 현상과 노이즈를 제거하지만 수신 불량 시 블록 현상이 발생할 수 있고, DVB, ATSC, ISDB 등의 표준이 이를 지원하며 다양한 해상도로 국가별 정의 기준에 차이가 있지만 여러 분야에서 활용된다.
  • ATSC - ATSC 3.0
    ATSC 3.0은 고효율 물리 계층, OFDM 변조, LDPC FEC 코드를 사용하는 차세대 방송 기술 표준으로, 다양한 비디오 형식을 지원하고 암호화, 디지털 워터마킹, 긴급 재난 경보 시스템 등의 기능을 제공하며 대한민국이 세계 최초로 상용화했다.
  • MPEG - ATSC
    ATSC는 디지털 텔레비전 방송 표준을 개발하는 미국 기관으로, 1996년 ATSC 1.0 표준이 채택된 후 H.264 코덱을 지원하는 개정판이 승인되었으며, 미국을 비롯한 여러 국가에서 디지털 방송 전환에 사용되었으나 특허 문제와 기술적 한계, 국가별 적용 차이 등의 이슈가 있고, 최근에는 ATSC 3.0이 개발되어 도입되고 있다.
  • MPEG - MPEG-1 오디오 레이어 II
    MPEG-1 오디오 레이어 II (MP2)는 디지털 오디오 압축 표준으로, 디지털 오디오 방송, 디지털 멀티미디어 방송, 디지털 비디오 방송 등 다양한 분야에서 사용되며, MUSICAM 오디오 코덱을 기반으로 하고, MP3와 비교하여 시간 해상도가 높고 오류에 대한 강인성이 강한 특징을 가진다.
MPEG 트랜스포트 스트림 - [IT 관련 정보]에 관한 문서
개요
종류미디어 컨테이너
개발MPEG
발표일1995년
최신 버전 발표일2022년 9월
표준ISO/IEC 13818-1
ITU-T 권고 H.222.0
확장자.ts, .tsv, .tsa, .m2t
상세 정보
포함 가능오디오, 비디오, 데이터
확장됨M2TS, TOD
개방 여부
라이선스자유

2. 통신 계층

트랜스포트 스트림은 OSI 네트워크 프로토콜 스택과 비슷한 계층 구조를 가지며, 수신기에서 처리된다. 예를 들어 비디오를 포함하는 스트림은 다음과 같은 단계를 거칠 수 있다.

# 다양한 프로그램 구성

# PES (패킷화된 기초 스트림, Packetized Elementary Stream)

# ES (기초 스트림, Elementary stream) - 소리 및 영상 (아래는 영상만 해당)

# GOP 구조 (Group of pictures) - 임의 접근 포인트 제공

# 슬라이스 (Slice) - 상호 예측을 통하여 파급된 오류 방지

# 매크로블록 - 6~12개의 DCT 블록으로 구성

# 인코딩 블록 / 단순 블록 - DCT 인코딩 블록, 8x8 화소

트랜스포트 스트림(TS)으로 다중화 처리된 데이터의 예는 EPG (전자 프로그램 안내)이다. 더 자세한 내용은 프로그램과 시스템 정보 프로토콜 문서를 참고하라.

트랜스포트 스트림은 여러 다른 하위 스트림, 종종 패킷화된 기본 스트림 (PES)을 캡슐화한다. PES는 다시 MPEG 코덱 또는 여러 비 MPEG 코덱 (예: AC3 또는 DTS 오디오, MJPEG 또는 JPEG 2000 비디오), 자막용 텍스트 및 그림, 스트림을 식별하는 테이블, 심지어 전자 프로그램 가이드와 같은 방송사별 정보를 캡슐화한다. 여러 스트림이 종종 혼합되어 여러 개의 서로 다른 텔레비전 채널 또는 영화의 여러 각도와 같이 전송된다.

각 스트림은 최대 188바이트 섹션으로 잘리고 함께 인터리빙된다. 작은 패킷 크기 덕분에 스트림은 MPEG 프로그램 스트림AVI, MOV/MP4, MKV와 같은 다른 일반적인 컨테이너에 비해 더 적은 대기 시간과 더 큰 오류 복원력으로 인터리빙될 수 있다. 일반적으로 각 프레임을 하나의 패킷으로 래핑하는데, 이는 큰 프레임이 허용할 수 없는 오디오 지연을 발생시킬 수 있는 화상 회의에 특히 중요하다.

트랜스포트 스트림은 고정 비트 전송률 (CBR)로 방송되는 경향이 있으며, 데이터가 충분하지 않을 때는 패딩 바이트로 채워진다.

3. 트랜스포트 스트림의 구성 요소

트랜스포트 스트림은 패킷화된 기본 스트림(PES)을 캡슐화하며, PES는 다시 MPEG 코덱이나 AC3, DTS 오디오, MJPEG, JPEG 2000 비디오와 같은 비 MPEG 코덱, 자막, 스트림 식별 테이블, 전자 프로그램 가이드 등의 방송사별 정보를 포함한다. 여러 스트림은 혼합되어 여러 텔레비전 채널이나 영화의 여러 각도를 전송한다.

각 스트림은 최대 188바이트 섹션으로 잘리고 인터리빙된다. 작은 패킷 크기 덕분에 MPEG 프로그램 스트림, AVI, MOV/MP4, MKV와 같은 컨테이너에 비해 적은 대기 시간과 큰 오류 복원력으로 인터리빙될 수 있다. 보통 각 프레임은 하나의 패킷으로 래핑되는데, 이는 화상 회의에서 큰 프레임이 허용할 수 없는 오디오 지연을 발생시킬 수 있기 때문이다.

트랜스포트 스트림은 고정 비트 전송률(CBR)로 방송되는 경향이 있으며, 데이터가 충분하지 않을 때는 패딩 바이트로 채워진다.

3. 1. 패킷 (Packet)

트랜스포트 스트림(TS)의 기본 데이터 단위는 패킷이다. 각 패킷은 `0x47` 값을 가지는 싱크 바이트로 시작하며, 3개의 1비트 플래그, 13비트의 PID (패킷 식별자), 4비트의 연속 카운터, 그리고 추가적인 유효 필드(존재할 경우)를 포함한다. 패킷의 나머지 부분은 페이로드(payload)로 구성된다. 패킷의 기본 길이는 188바이트이지만,[27] 통신 매체에 따라 오류 정정을 위한 바이트가 추가될 수 있다.

ISDB-T 및 DVB-T/C/S의 경우, 전송 패킷 크기(트랜스포트 스트림 패킷 + FEC 데이터)는 204바이트이며, ATSC 8-VSB의 경우 208바이트이다. ATSC는 20바이트의 리드 솔로몬 전방 오류 정정을 사용하여 208바이트 패킷을 생성한다.[28] 188바이트 패킷 크기는 원래 ATM 체계와의 호환성을 위해 선택되었다.[29][30]

TS 패킷 포맷 (일부)
이름비트32-bit BE 마스크설명
싱크 바이트80xff0000000x47 (ASCII char G)
전송 오류 표시기 (TEI)10x800000스트림에서 오류를 정정할 수 없을 때 복조를 통해 설정됨. 역다중화기(demultiplxer)에 패킷에 정정할 수 없는 오류가 있음을 알림.[31]
페이로드 유닛 시작 표시기10x4000001은 PES(PSI)의 시작을 나타내고, 그렇지 않으면 0.
전송 우선 순위10x2000001은 같은 PID를 갖는 다른 패킷들보다 더 높은 우선 순위를 갖는 것을 의미.
PID130x1fff00패킷 ID
스크램블 제어20xc000 = 스크램블(scramble) 안 함. DVB 기준:[32] 01 = 사용 예약, 10 = 짝수로 스크램블, 11 = 홀수로 스크램블
유효 필드 제어20x3001 - 유효 필드 없음, 페이로드 존재
연속 카운터40xf각 스트림에서 페이로드 패킷의 연속된 숫자. 페이로드가 있을 때만 증가되며 각 PID 단위로 증가.
알림: 위의 총 비트 수는 32이며 트랜스포트 스트림 4바이트 접두사(prefix)이다.
유효 필드0 이상플래그에 의존
페이로드 데이터0 이상플래그에 의존



유효 필드 포맷
이름비트 수설명
유효 필드 길이8즉각 이 바이트의 길이만큼 유효 필드가 따라옴
불연속 표시기1TS 패킷의 연속 카운터가 연속적이지 않으면 1로 설정
임의 접근 표시기1이 TS 패킷의 PES 패킷이 영상/소리 시퀀스를 시작하면 1로 설정
기초 스트림 우선 순위 표시기11 = 높은 순위
PCR 플래그11이면 유효 필드가 PCR 필드를 포함한다는 것을 뜻함
OPCR 플래그11이면 유효 필드가 OPCR 필드를 포함한다는 것을 뜻함
접합(Splicing) 포인트 플래그11이면 유효 필드에 접합 카운트다운 필드가 존재한다는 것을 뜻함
트랜스포트 개별 데이터 플래그11이면 유효 필드에 개별 데이터 바이트가 존재한다는 것을 뜻함
유효 필드 확장 플래그11이면 유효 필드 확장이 존재한다는 것을 뜻함
아래의 필드는 선택 사항이다가변값플래그에 의존
PCR33+9프로그램 클록 참조
OPCR33+9OP(Original Program) 클록 참조. 하나의 TS가 다른 곳으로 복사될 때 도와줌.
접합(Splice) 카운트다운8이 곳으로부터 얼마나 많은 TS 패킷에 접합 포인트가 발생하였는지 알려 줌 (음수값)
빈 자리 메우는 바이트가변값


3. 2. PID (Packet Identifier)

트랜스포트 스트림(TS)에서 각 테이블이나 기초 스트림(ES)은 13비트 패킷 식별자(PID)로 구분된다. 역다중화기는 이 PID를 기준으로 같은 PID를 가진 패킷을 찾아 TS에서 ES를 추출한다. 시분할 다중화는 특정 PID가 TS에 얼마나 자주 나타나는지를 결정하는 데 사용된다.[14]

주요 패킷 식별자(PID)
10진수16진수설명
00x0000프로그램 연결 테이블 (PAT). 모든 프로그램 맵 테이블의 목록을 포함한다.
10x0001조건부 액세스 테이블 (CAT). 프로그램 맵 테이블에서 사용되는 모든 ITU-T Rec. H.222 권한 관리 메시지 스트림의 목록을 포함한다.
20x0002트랜스포트 스트림 설명 테이블 (TSDT). 전체 트랜스포트 스트림과 관련된 설명자를 포함한다.
30x0003IPMP 제어 정보 테이블. 프로그램 맵 테이블에서 사용되는 모든 ISO/IEC 14496-13 제어 스트림의 목록을 포함한다.
4–150x0004-0x000F향후 사용을 위해 예약됨
16–310x0010-0x001FDVB 메타데이터에 사용됨[14]
0x0010NIT, ST
0x0011SDT, BAT, ST
0x0012EIT, ST, CIT
0x0013RST, ST
0x0014TDT, TOT, ST
0x0015네트워크 동기화
0x0016RNT
0x0017-0x001B향후 사용을 위해 예약됨
0x001C대역내 신호
0x001D측정
0x001EDIT
0x001FSIT
32-81860x0020-0x1FFA프로그램 맵 테이블, 기본 스트림 및 기타 데이터 테이블에 필요에 따라 할당될 수 있음
81870x1FFBDigiCipher 2/ATSC MGT 메타데이터에 사용됨
8188–81900x1FFC-0x1FFE프로그램 맵 테이블, 기본 스트림 및 기타 데이터 테이블에 필요에 따라 할당될 수 있음
81910x1FFFNull 패킷 (고정 대역폭 패딩에 사용됨)


3. 3. 프로그램 (Program)

트랜스포트 스트림(TS)에는 프로그램 개념이 있다. 각 프로그램은 고유 PID를 갖는 프로그램 맵 테이블(PMT)로 기술되며, 그 프로그램과 연결된 기초 스트림은 PMT에 나열된 PID를 가진다. 예를 들어 디지털 TV에 쓰이는 TS는 세 개의 텔레비전 채널을 표현하기 위하여 이러한 프로그램들을 포함할 수 있다. 각 채널이 하나의 비디오 스트림과 한두 개의 오디오 스트림, 또 필요한 메타 데이터를 갖고 있다는 가정을 해 볼 수 있다. 수신기가 특정한 채널을 디코딩하려면 이 프로그램에 연결된 각 PID의 페이로드를 디코딩하여야 한다.[1]

둘 이상의 프로그램을 가진 트랜스포트 스트림을 다중 프로그램 트랜스포트 스트림(MPTS)이라고 하고, 단일 프로그램 트랜스포트 스트림을 단일 프로그램 트랜스포트 스트림(SPTS)이라고 한다.[1]

3. 4. 프로그램 특정 정보 (PSI, Program Specific Information)

프로그램 특정 정보(PSI)는 트랜스포트 스트림 내 프로그램 구성 정보를 담고 있는 테이블이다. PSI에는 프로그램 연결 정보(PAT), 프로그램 맵(PMT), 조건부 접근 정보(CAT), 네트워크 정보(NIT)의 네 가지 종류가 있다.[1] MPEG-2 규격은 CAT와 NIT의 형식을 구체적으로 명시하지 않는다.[1]

3. 5. PCR (Program Clock Reference)

표시 시간 스탬프(PTS)와 같이 동기화된 콘텐츠 표현을 위해 디코더에서는 프로그램 클록 참조(PCR)를 사용한다. PCR은 MPEG-2 TS 패킷의 유효 필드에 전송되며, 적어도 100 밀리초마다 전송되어야 한다. MPEG-2 프로그램을 위한 PCR이 있는 PID는 연결된 프로그램 맵 테이블(PMT) 안에서 pcr_pid 값으로 식별된다. PCR 값은 디코더 안에서 시스템 타이밍 클록(STC)을 생성하는 데 사용되며, STC 디코더는 영상 및 소리의 기초 시스템을 동기화하는 데 쓰이는 더 정확한 시간대를 제공한다.

MPEG2 타이밍은 이 클록을 참조한다. 처음 33비트는 90kHz 클록에 기반을 두며 마지막 9비트는 27MHz 클록에 기반을 둔다. PCR이 허용하는 최대 지터는 +/- 500 나노초이다.

3. 6. Null 패킷

ATSCDVB 같은 일부 전송 체계는 TS에 엄격한 고정 비트 전송률(CBR)을 요구한다. 스트림이 고정 비트 전송률을 유지하려면 다중화기는 추가적인 패킷을 삽입해야 한다. 이때 PID 0x1FFF가 예약되어 있다. 널 패킷의 페이로드는 데이터에 전혀 포함되지 않으며, 수신기는 널 패킷의 콘텐츠 내용을 무시한다.[15]

4. 디지털 비디오 카메라 및 블루레이 디스크에서의 활용

디지털 비디오 카메라는 188바이트 패킷에 4바이트 타임코드(TC) 필드를 추가하여 192바이트 패킷을 사용한다. 이러한 형식은 일반적으로 M2TS 스트림이라고 불리며, HDV 카메라에서 흔히 발견된다. 블루레이 디스크 협회는 이를 "BDAV MPEG-2 전송 스트림"이라고 부른다.[16] JVC는 GZ-HD7과 같은 HDD 기반 캠코더에서 사용될 때 이를 TOD라고 불렀다.[18][19] 타임코드를 사용하면 미디어 플레이어 또는 비선형 비디오 편집 시스템에서 스트림의 모든 부분에 빠르게 액세스할 수 있으며,[20] 다중 카메라 설정에서 여러 카메라의 비디오 스트림을 동기화하는 데에도 사용된다.

메뉴 지원과 함께 제작된 블루레이 디스크 비디오 타이틀은 블루레이 디스크 영화(BDMV) 형식이며, MPEG-2 전송 스트림 형식을 기반으로 하는 BDAV 컨테이너에 오디오, 비디오 및 기타 스트림을 포함한다.[21][22] 블루레이 디스크 비디오는 DVD의 추가 전송 오버헤드가 없는 프로그램 스트림과 비교하여 이러한 수정된 MPEG-2 전송 스트림을 사용한다.

BDMV 형식의 소비자 지향적 대안인 BDAV(블루레이 디스크 오디오/비주얼) 형식도 있다. BDAV 형식은 오디오/비디오 녹화를 위해 블루레이 디스크 기록 가능(BD-R)에 사용된다.[22] 블루레이 디스크는 MPEG-2 전송 스트림 기록 방식을 사용한다. 이렇게 하면 BDAV로 변환된 디지털 방송의 전송 스트림을 패킷을 최소한으로 변경하여 그대로 기록할 수 있다.[17] 또한 스트림에서 원치 않는 패킷을 버리는 것만으로 데이터를 편집할 수 있는 BDAV로 변환된 디지털 방송의 간단한 스트림 컷 스타일 편집을 가능하게 하며, 고속으로 사용하기 쉬운 검색 기능이 내장되어 있다.[17][24]

참조

[1] 웹사이트 "TVNT.net - Le forum de la TNT • [Topic Unique] Akira DHB-B31HDR - Double tuner enregistreur TNT HD - MKV - DIVX - DTS : Les adaptateurs pour recevoir la TNT gratuite en SD ou HD" http://www.tvnt.net/[...]
[2] IETF MIME Type Registration of RTP Payload Formats 2003-07
[3] 웹사이트 mpeg2TransportStream https://developer.ap[...] Apple Inc
[4] 웹사이트 Recommendation H.222.0 (10/14) http://www.itu.int/r[...] 2014-10
[5] Full draft MPEG-2 Encoding Family https://www.loc.gov/[...] Library of Congress 2021-12-13
[6] 웹사이트 MPEG-2 Transport Stream http://www.afterdawn[...] 2010-06-08
[7] 웹사이트 ATSC transmission http://broadcastengi[...] 2012-05-17
[8] 웹사이트 MPEG Systems FAQ http://mpeg.chiarigl[...] 2012-05-17
[9] 웹사이트 ATSC MPEG Transport Stream Monitor http://www.tek.com/d[...] 2012-05-17
[10] 웹사이트 TSReader http://www.coolstf.c[...] 2012-05-17
[11] 웹사이트 "Information technology – Generic coding of moving pictures and associated audio information: systems" https://www.itu.int/[...] 2000-02
[12] 웹사이트 Standards – DVB http://www.dvb.org/t[...] 2012-09-11
[13] 웹사이트 MPEG-2 Transmission http://www.abdn.ac.u[...] 2018-11-30
[14] 서적 Digital Video Broadcasting (DVB); Specification for Service Information (SI) in DVB systems http://www.etsi.org/[...] 2016-10-13
[15] 서적 A Guide to MPEG Fundamentals and Protocol Analysis http://www.img.lx.it[...] Tektronix 2020-04-23
[16] 서적 BD ROM – Audio Visual Application Format Specifications http://www.blu-raydi[...] Blu-ray Disc Association 2009-07-26
[17] 서적 BD-RE – Audiovisual Application Format Specification for BD-RE 2.1 http://www.blu-raydi[...] Blu-ray Disc Association 2008-03
[18] 웹사이트 Steve Mullen, M2TS primer http://dvinfo.net/co[...]
[19] 웹사이트 Working with JVC Everio MOD & TOD files http://www.avchduser[...]
[20] 웹사이트 How MPEG-TS works http://forum.videohe[...] 2012-05-17
[21] 웹사이트 Glossary – BD-MV (Blu-ray Movie) and BDAV container http://www.afterdawn[...] 2009-07-26
[22] 웹사이트 Glossary – BDAV container http://www.afterdawn[...] 2009-07-26
[23] 웹사이트 What is Blu-ray Disc and HD DVD? http://www.videohelp[...] 2009-07-26
[24] 간행물 Blu-ray Disc Format, White paper http://www.blu-raydi[...] Blu-ray Disc Association 2009-07-28
[25] IETF MIME Type Registration of RTP Payload Formats 2003-07
[26] 웹인용 Recommendation H.222.0 (10/14) http://www.itu.int/r[...] 2014-10
[27] 웹인용 보관된 사본 http://neuron2.net/l[...] 2010-04-07
[28] 웹인용 ATSC transmission http://broadcastengi[...] 2010-04-07
[29] 웹인용 MPEG Systems FAQ http://mpeg.chiarigl[...] 2010-04-07
[30] 웹인용 Search Results: 14851 http://www.tek.com/s[...] 2010-04-07
[31] 웹인용 TSReader Support http://www.coolstf.c[...] 2010-04-07
[32] 웹사이트 DVB scrambling control bits defined. Page 6 http://www.bjpace.co[...]
[33] 웹사이트 Entering MPlayer homepage http://www.mplayerhq[...]
[34] 웹사이트 VideoLAN - VLC media player - Open Source Multimedia Framework and Player http://www.videolan.[...]
[35] 웹인용 OpenCaster 2.4: the free digital tv software http://www.avalpa.co[...] 2010-04-07
[36] 웹인용 nexgenta's opencaster at master - GitHub http://github.com/ne[...] 2010-04-07
[37] 웹인용 CCCP - Combined Community Codec Pack http://cccp-project.[...] 2017-06-09
[38] 웹사이트 Squared 5 - MPEG Streamclip video converter for Mac and Windows http://www.squared5.[...]
[39] 웹인용 How to use Mac TS Converter to convert TS to MP4, MOV on Mac? http://www.ifunia.co[...] 2010-04-07



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com