Education·7 min

Autor Shamir

Co je soubor .TS a proč se z nich skládají vaše streamy

Pokud jste se někdy podívali do manifestu streamu, viděli jste seznam souborů končících na .ts. Jestli jste někdy získávali video z rekordéru nebo snímací karty, možná vám jeden takový soubor vznikl. A pokud jste se ho někdy pokusili otevřít dvojklikem, je dost možné, že se nestalo vůbec nic.

.ts znamená MPEG Transport Stream a jde o jeden z nenápadně nejdůležitějších formátů videa. Byl navržen pro satelitní a pozemní vysílání v 90. letech a o tři desetiletí později začal přenášet obrovský podíl internetového streamování — z důvodu, který je po pochopení skutečně elegantní.

Co transportní stream skutečně je

Většina videoformátů, které znáte, jsou soubory: kontejner s hlavičkou na začátku, indexem umístění jednotlivých částí a jasně definovaným koncem. Takto funguje MP4. Je navržený pro uložení na disku a pro procházení pomocí vyhledávání.

Transportní stream takto uspořádaný není. Je to nepřetržitý tok malých paketů pevné velikosti — každý má 188 bajtů — ke kterému se můžete připojit v libovolném okamžiku.

Toto konstrukční rozhodnutí vycházelo z vysílání. Když televizi přepnete na určitý kanál, nezačínáte od začátku nějakého obsahu. Připojujete se k signálu, který už probíhá, a obraz se musí objevit během jedné či dvou sekund. Formát s hlavičkou na začátku a indexem by byl nepoužitelný: žádný začátek neexistuje.

Transportní stream proto vše potřebné průběžně opakuje. V pravidelných intervalech znovu odesílá tabulky popisující obsažené streamy a pravidelně obsahuje kompletní klíčový snímek, od kterého lze začít dekódovat. Připojíte se kdykoli a během sekundy můžete začít přehrávat.

To je celá myšlenka a vysvětluje vše ostatní.

Proč ho převzalo internetové streamování

HLS — metoda streamování, která stojí za většinou živého videa, jež sledujete — funguje tak, že obsah rozdělí na krátké segmenty, obvykle dlouhé dvě až deset sekund, a uvede je v manifestu. Přehrávač načítá segmenty postupně, a když se připojení zhorší, začne tiše vyžadovat jejich verze v nižší kvalitě, místo aby se přehrávání zastavilo.

Aby to fungovalo, každý segment musí být samostatně dekódovatelný. Segment 47 nemůže záviset na hlavičce, která existuje pouze v segmentu 1, protože přehrávač se může připojit až u segmentu 47 nebo mezi segmenty 46 a 47 přepnout kvalitu.

Transportní stream už přesně takovým formátem byl. Samopopisný, spustitelný odkudkoli a odolný vůči ztrátám. HLS nemusel vymýšlet formát segmentů; převzal vysílací formát, který stejný problém řešil už v době, kdy web ještě video neznal.

Když se tedy podíváte do manifestu .m3u8 a uvidíte:

#EXTINF:6.000,
segment000.ts
#EXTINF:6.000,
segment001.ts

jde o šestisekundové části transportního streamu. Váš stream není jedno video. Je to tisíce malých videí, která se načítají postupně. (Proč to znamená, že stream jednoduše nemůžete „převést“ na MP4.)

.TS vs .MP4

.ts (MPEG-TS).mp4
StrukturaNepřetržitý tok paketůIndexovaný soubor s hlavičkou
Lze začít odkudkoli?AnoNe — potřebuje hlavičku
Odolnost vůči ztrátám?Ano, synchronizace se obnoví u dalšího paketuPoškození může znepřístupnit celý soubor
VyhledáváníPomalé, bez indexuRychlé, indexované
RežieVyšší (hlavičky se neustále opakují)Nižší
Určeno proVysílání a živé streamováníUkládání a přehrávání kompletních souborů

Ani jeden není lepší. Řeší opačné problémy. .ts je optimalizovaný pro přenos; .mp4 pro klidné uložení.

Proto je také převod mezi nimi v principu běžný a bezztrátový — video i zvuk uvnitř mohou zůstat identické a mění se pouze obal.

Kde se se soubory .TS setkáte

  • Uvnitř streamů HLS. Segmenty, jak už bylo uvedeno. Jednotlivě je nikdy nevidíte; přehrávač je načítá a zahazuje.
  • U zdroje ve stylu Xtream s output=ts. Tento parametr požádá server o surový transportní stream namísto segmentovaného HLS. (Jak se tyto adresy sestavují.)
  • U hardwaru pro zachytávání vysílání. Tunery, snímací karty a rekordéry často zapisují .ts přímo, protože právě tento formát dorazil vzduchem.
  • Na discích Blu-ray jako .m2ts — blízce příbuzný formát.
  • Z videokamer, zejména modelů AVCHD, které rovněž používají .m2ts.

Když se soubor .TS nepřehraje

Běžná situace, která má obvykle jednu z pěti příčin.

1. Chybí přiřazení souboru. Windows ani macOS standardně neobsahují obsluhu pro .ts. Po dvojkliku se nic nestane nebo se otevře něco nevhodného. Nejde o poškození; se souborem není nic špatně. Otevřete ho přímo v přehrávači.

Horší je, že v některých systémech je .ts přiřazeno editoru kódu, protože jde také o příponu zdrojových souborů TypeScriptu. Video otevřené v textovém editoru je matoucí, ale neškodné.

2. Problém je v kodeku uvnitř, ne v kontejneru. .ts je pouze obal. Uvnitř může být MPEG-2 (starší vysílání), H.264 nebo HEVC. Pokud vaše zařízení nedokáže daný kodek dekódovat, na kontejneru nezáleží. Typickým příznakem je přehrávání zvuku s černým obrazem. (Černá obrazovka, ale zvuk funguje.)

MPEG-2 je zde častým viníkem: je velmi starý a některá moderní zařízení už jeho dekodér neobsahují, protože nikdo nečekal, že ho bude stále potřebovat.

3. Neobvyklý zvuk. Transportní streamy z vysílání často obsahují zvuk AC-3, E-AC-3 nebo DTS. Video se přehrává, ale není slyšet zvuk. Jde o problém zvukového kodeku nebo průchodu signálu, nikoli kontejneru. (Jak opravit chybějící zvuk.)

4. Nedokončené zachycení. Přerušení zápisu vytvoří neúplný soubor. Transportní stream se s tím vyrovná postupným zhoršením — obvykle se přehraje až do místa přerušení — což je jedna z jeho skutečných výhod oproti MP4, kde se neúplný soubor nemusí otevřít vůbec.

5. Vyhledávání je pomalé a působí jako chyba. Protože neexistuje index, musí přehrávač při procházení velkého souboru .ts skenovat. Pomalé procházení velkého souboru transportního streamu je běžné chování, nikoli závada.

Který software ho otevře

Pro soubor .ts v počítači jsou vhodné univerzální přehrávače. VLC a mpv jsou standardní volbou a oba transportní streamy otevírají přímo, včetně problematických souborů. Právě na to se hodí nejlépe.

U streamů doručovaných po síti jako transportní stream — zdroje Xtream s output=ts, playlistu HLS se segmenty .ts, zařízení ve vaší místní síti — jde o hlavní úkol přehrávače a Tuneline si s nimi poradí na platformách macOS, Windows, Linux, iPhonu, iPadu, Android, Android TV, Google TV a Apple TV.

Abychom byli přesní v důležitém rozdílu: Tuneline otevírá playlisty a streamy, nikoli místní videosoubory. Pokud máte nahrávku .ts uloženou na pevném disku, použijte VLC nebo mpv. Pokud k vám transportní stream přichází po síti, je k tomu určen Tuneline.

Otázka output=ts vs. output=m3u8

Pokud vám zdroj umožňuje volbu — a zdroje ve stylu Xtream ji umožňují — stojí za to tomu porozumět, protože přepnutí často vyřeší řadu problémů s přehráváním.

output=ts vám poskytne surový nepřetržitý stream. Má nejširší kompatibilitu a funguje prakticky všude, ale nepodporuje adaptivní datový tok. Při slabém připojení se zastaví, místo aby přešel na nižší kvalitu.

output=m3u8 vám poskytne segmentované HLS. Na nespolehlivém připojení se chová lépe, protože přehrávač může uprostřed streamu přejít na nižší kvalitu, a obecně je šetrnější k mobilním sítím.

Praktická rada: na telefonech a při slabé Wi-Fi nejprve zkuste m3u8; když se něco odmítá přehrát úplně, zkuste ts. Přepnutí parametru je otázkou jednoho znaku a vyřeší překvapivě velký podíl hlášení typu „nejde to přehrát“. (Proč se streamy trhají a co je skutečně opraví.)

Shrnutí

  • .ts je MPEG Transport Stream, vytvořený pro vysílání: nepřetržitý tok paketů, ke kterému se můžete připojit v libovolném okamžiku.
  • HLS ho převzal, protože streamování potřebuje samostatně dekódovatelné segmenty, a přesně takový už byl.
  • Váš živý stream tvoří tisíce krátkých segmentů .ts, nikoli jeden soubor.
  • .ts lze spustit odkudkoli a odolá poškození; .mp4 umožňuje rychlé vyhledávání a efektivní ukládání. Každý slouží jinému účelu.
  • Selhání přehrávání obvykle způsobuje kodek uvnitř (MPEG-2, HEVC, AC-3), nikoli kontejner.
  • Pomalé posouvání ve velkém souboru .ts je normální — neobsahuje index.

Přichází k vám transportní stream přes síť? Stáhněte si Tuneline — zdarma, bez přibaleného obsahu a pro všechny vaše platformy.

Sdílet článek

The fast fix

Get Tuneline free

A clean, no-account media player for macOS, Windows, Linux, Android, TV, and iOS. Bring your own playlist.

Download free

The cross-platform media player behind these answers — new platforms, sync updates, the honest build story. No spam, unsubscribe anytime.

Přečtěte si tento článek v jiném jazyce

Tuneline je aplikace pro přehrávání médií. Neposkytuje, nehostuje ani nedistribuuje žádný obsah. Vlastní playlist si přinesete sami, přesně jako u VLC.