컨테이너 MPEG Transport Stream

TS / M2TS

방송을 위해 만들어졌고, 수신기는 중간에 끼어들 수도 있으며, 그 무엇에도 끝이 없다.

한줄 요약

MPEG Transport Stream은 텔레비전이 전송되는 방식 그 자체입니다. 수신기가 언제든 디코딩을 시작할 수 있고 유실된 데이터에서도 복구할 수 있도록 설계되어 있는데, 이게 전파를 타기엔 훌륭하지만 파일로서는 어색합니다 — 인덱스가 없어서 탐색은 그저 추측이고, 재생 시간도 자주 틀리거나 아예 없습니다.

2026년 7월 30일

별도 앱 없이 열리는지

iPhone · iPad 거부
Mac 거부
FoxDL 열림

두 시스템 모두 .ts나 .m2ts 파일을 직접 열지는 못하지만, 다른 무언가가 그 포장을 먼저 풀어주기만 하면 안에 든 H.264나 HEVC는 완벽하게 디코딩합니다. 이번에도 걸림돌은 포장지입니다.

핵심 정보

정식 명칭 MPEG-2 Transport Stream
종류 저장보다는 전송을 위해 설계된 컨테이너
확장자 .ts, .m2ts, .mts, .m2t
공개 1995년, MPEG-2의 일부로
패킷 크기 188바이트 고정 — 손상되어도 거의 아무것도 잃지 않을 만큼 작음
담긴 영상 옛날 방송은 MPEG-2, 최근 방송은 H.264와 HEVC
담긴 오디오 AC-3, E-AC-3, AAC, MP2
인덱스 없음. 파일 어디에도 특정 순간이 어디 있는지 알려주는 정보가 없음
주로 나오는 곳 IPTV 스트림, DVB·ATSC 녹화, AVCHD 캠코더, Blu-ray 디스크

시작이라는 게 없는 형식

여기 나온 다른 모든 컨테이너는 파일 전체를 갖고 있고 헤더부터 먼저 읽을 수 있다고 가정합니다. Transport Stream은 그 반대를 가정합니다 — 내가 도착하기 전부터 이미 시작됐고 내가 떠난 뒤에도 계속될 방송에 중간에 끼어든 상황을 전제로 합니다. 그래서 디코더에 필요한 모든 것 — 스트림 구조, 타이밍 참조, 각종 매개변수 — 을 매 순간마다, 영원히 반복해서 실어 나릅니다.

188바이트짜리 패킷도 같은 발상입니다. 간섭으로 패킷 하나가 망가지면 디코더는 몇 밀리초만 잃고 계속 진행합니다. 하나의 커다란 인덱스를 중심으로 만들어진 형식이라면 그 순간 파일의 나머지 전체를 잃었을 것입니다.

목적에 맞게는 정말 훌륭한 설계지만, 디스크에 놓인 파일로서는 어울리지 않는 모양입니다. 방송을 강인하게 만드는 모든 요소가, 녹화본으로서는 다루기 힘들게 만듭니다.

녹화본이 이상하게 동작하는 이유

인덱스가 없으니, 47분 지점으로 가고 싶은 플레이어는 추정할 수밖에 없습니다 — 비트레이트에 시간을 곱해서 대략 그 지점으로 뛰어든 다음, 디코딩 가능한 다음 프레임을 찾아 헤맵니다. 고정 비트레이트 방송이라면 꽤 근접하게 맞아떨어집니다. 가변 비트레이트 녹화본이라면 몇 초씩 어긋날 수 있고, 중단된 스트림을 이어붙인 녹화본이라면 몇 분씩 어긋날 수도 있습니다.

재생 시간도 같은 이유로 문제가 됩니다. 플레이어는 파일 전체를 읽어서 길이를 알아내거나, 아니면 비트레이트로 대충 짐작해야 합니다. 녹화본이 가끔 잘못된 길이를 보여주거나 아예 안 보여주는 이유, 탐색 바가 허구에 가까운 이유가 여기 있습니다.

해결책은 재다중화입니다 — 스트림을 한 번 읽고, 같은 영상과 오디오를 진짜 인덱스를 갖춘 MP4나 MKV에 새로 씁니다. 아무것도 재인코딩되지 않고 화질도 그대로 유지되며, 디스크 속도로 끝납니다. 그 이후로는 탐색이 즉각적이고 정확해지는데, 파일이 마침내 자기 프레임들이 어디 있는지 알게 되었기 때문입니다.

TS 파일을 다루는 법

  1. 그냥 보고 싶다면 직접 재생하기

    자체 디먹서를 가진 플레이어라면 아무 준비 없이도 .ts를 엽니다. 탐색은 대략적일 텐데, 이는 플레이어의 문제가 아니라 형식 자체의 특성입니다 — 그냥 한 번 쭉 보는 용도라면 이 정도로 충분합니다.

  2. 보관할 거라면 MP4나 MKV로 재다중화하기

    빠르고 무손실이며, 탐색과 재생 시간 문제를 영구적으로 고쳐줍니다. 한 번 보고 말 게 아니라 라이브러리에 넣어둘 거라면 반드시 이렇게 하세요.

  3. IPTV 스트림은 그대로 두기

    TS가 파일이 아니라 라이브 스트림으로 도착하는 경우라면 이 중 어느 것도 해당하지 않습니다 — 아직 끝나지 않았으니 색인화할 대상 자체가 없는 것입니다. 이때의 버퍼링은 네트워크 문제입니다.

자세히 보기 M3U, Xtream Codes, EPG — 용어의 의미와 내가 가진 것이 무엇인지 M3U인지 Xtream인지, EPG가 작동하려면 무엇이 필요한지, 버퍼링의 원인은 무엇이고 누가 그걸 고칠 수 있는지.

이 형식에 관한 질문

관련 형식

이제 라이브러리 하나로 다 모을 수 있습니다.

무료로 다운로드할 수 있습니다. 계정도, 가입도, 어딘가에 넘겨줄 정보도 필요 없습니다.

다운로드 App Store