Education·7 min

Por Shamir

Qué es un archivo .TS y por qué tus transmisiones están hechas de ellos

Si alguna vez has revisado el contenido de un manifiesto de transmisión, has visto una lista de archivos que terminan en .ts. Si alguna vez has extraído video de una grabadora o tarjeta capturadora, es posible que hayas terminado con uno. Y si alguna vez intentaste abrirlo haciendo doble clic, es muy probable que no haya pasado nada.

.ts significa MPEG Transport Stream y es uno de los formatos más importantes, aunque poco conocidos, del video. Fue diseñado para transmisiones satelitales y terrestres en los años 90, y tres décadas después terminó transportando una enorme parte de las transmisiones por internet — por una razón que resulta realmente ingeniosa cuando la entiendes.

Qué es realmente un Transport Stream

La mayoría de los formatos de video que conoces son archivos: un contenedor con un encabezado al principio, un índice que indica dónde está cada elemento y un final definido. MP4 funciona así. Está diseñado para almacenarse en un disco y permitir búsquedas dentro de él.

Un transport stream no tiene esa estructura. Es un flujo continuo de paquetes pequeños y de tamaño fijo —de 188 bytes cada uno— que puede comenzar a recibirse en cualquier momento.

Esa decisión de diseño surgió de la transmisión televisiva. Cuando sintonizas un canal, no empiezas desde el principio de nada. Te conectas a una señal que ya está en curso, y la imagen debe aparecer en uno o dos segundos. Un formato con un encabezado al principio y un índice no serviría: no existe un principio.

Por eso, un transport stream repite continuamente todo lo necesario. Cada cierto tiempo vuelve a enviar las tablas que describen qué transmisiones contiene e incluye con regularidad un fotograma clave completo desde el que puedes comenzar a decodificar. Conéctate en cualquier punto y podrás empezar a reproducir en un segundo.

Esa es toda la idea y explica todo lo demás.

Por qué las transmisiones por internet lo adoptaron

HLS —el método de transmisión detrás de la mayoría de los videos en vivo que ves— funciona dividiendo el contenido en segmentos cortos, normalmente de dos a diez segundos, y enumerándolos en un manifiesto. Tu reproductor obtiene los segmentos en secuencia y, si tu conexión se debilita, empieza discretamente a solicitar versiones de menor calidad en lugar de detenerse.

Para que esto funcione, cada segmento debe poder decodificarse de forma independiente. El segmento 47 no puede depender de un encabezado que solo existe en el segmento 1, porque el reproductor podría conectarse en el 47 o cambiar de calidad entre el 46 y el 47.

El transport stream ya tenía exactamente ese formato. Se describe a sí mismo, puede comenzar a reproducirse desde cualquier punto y resiste la pérdida de datos. HLS no tuvo que inventar un formato de segmentos; heredó uno de transmisión que llevaba resolviendo el mismo problema desde antes de que la web tuviera video.

Así que cuando revisas un manifiesto .m3u8 y ves:

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

son fragmentos de transport stream de seis segundos. Tu transmisión no es un solo video. Son miles de videos pequeños que se solicitan en orden. (Por qué eso significa que no puedes simplemente "convertir" una transmisión a MP4.)

.TS frente a .MP4

.ts (MPEG-TS).mp4
EstructuraFlujo continuo de paquetesArchivo indexado con encabezado
¿Comenzar desde cualquier punto?No: necesita el encabezado
¿Resiste la pérdida de datos?, se resincroniza en el siguiente paqueteLos daños pueden inutilizar todo el archivo
BúsquedaLenta, sin índiceRápida, con índice
SobrecargaMayor (los encabezados se repiten constantemente)Menor
Diseñado paraTransmisiones y streaming en vivoAlmacenamiento y reproducción de archivos completos

Ninguno es mejor. Resuelven problemas opuestos. .ts está optimizado para llegar; .mp4 está optimizado para permanecer almacenado.

Por eso también convertir entre ellos es algo habitual y, en principio, no implica pérdida: el video y el audio que contienen pueden ser idénticos; solo cambia el contenedor.

Dónde puedes encontrar archivos .TS

  • Dentro de las transmisiones HLS. Los segmentos mencionados antes. Nunca los ves individualmente; tu reproductor los solicita y descarta.
  • En una fuente estilo Xtream con output=ts. Ese parámetro solicita al servidor un transport stream sin procesar en lugar de HLS segmentado. (Cómo se construyen esas URL.)
  • En equipos de captura de transmisiones. Los sintonizadores, las tarjetas capturadoras y las grabadoras suelen escribir directamente en .ts porque eso es lo que reciben por aire.
  • En discos Blu-ray, como .m2ts, un formato muy relacionado.
  • En videocámaras, especialmente en los modelos AVCHD, que también usan .m2ts.

Cuando un archivo .TS no se reproduce

Es algo común y normalmente se debe a una de estas cinco cosas.

1. No hay una asociación de archivos. Windows y macOS no incluyen un controlador para .ts. Al hacer doble clic no pasa nada o se abre algo que no sirve. No se trata de corrupción; el archivo no tiene ningún problema. Ábrelo desde el reproductor.

Peor aún: en algunos sistemas, .ts está asociado con un editor de código porque también es la extensión de los archivos de código fuente de TypeScript. Que un video se abra en un editor de texto es confuso, pero inofensivo.

2. El códec interno, no el contenedor. .ts es un contenedor. En su interior puede haber MPEG-2 (transmisiones antiguas), H.264 o HEVC. Si tu dispositivo no puede decodificar el códec, el contenedor es irrelevante. El síntoma clásico es que el audio se reproduce, pero la imagen aparece en negro. (Pantalla negra, pero el audio funciona.)

MPEG-2 es un culpable común en este caso: es muy antiguo y algunos dispositivos modernos ya no incluyen un decodificador para él porque nadie esperaba seguir necesitándolo.

3. Audio inusual. Los transport streams de transmisiones suelen incluir audio AC-3, E-AC-3 o DTS. El video se reproduce, pero no hay sonido. Es un problema del códec de audio o de la salida directa, no del contenedor. (Soluciones para cuando no hay sonido.)

4. Una captura incompleta. Si una captura se interrumpe mientras se está escribiendo, se genera un archivo parcial. El transport stream se degrada de forma gradual: normalmente se reproduce hasta el punto de interrupción. Esta es una de sus ventajas reales frente a MP4, cuyo archivo incompleto podría no abrirse en absoluto.

5. La búsqueda es lenta y parece que algo está fallando. Como no hay un índice, un reproductor que avance por un archivo .ts grande tiene que escanearlo. Que la búsqueda sea lenta en un archivo transport stream grande es normal, no un defecto.

Qué programas pueden abrirlo

Para abrir un archivo .ts en tu computadora, los reproductores de uso general funcionan bien. VLC y mpv son las opciones habituales y ambos abren transport streams directamente, incluso los más problemáticos. Para eso están especialmente bien preparados.

Para transmisiones enviadas como transport stream a través de una red —una fuente Xtream con output=ts, una lista de reproducción HLS de segmentos .ts o un dispositivo en tu red local—, esa es la función principal de un reproductor, y Tuneline la ofrece en macOS, Windows, Linux, iPhone, iPad, Android, Android TV, Google TV y Apple TV.

Para precisar la diferencia, porque es importante: Tuneline abre listas de reproducción y transmisiones, no archivos de video locales. Si tienes una grabación .ts en el disco duro, usa VLC o mpv. Si recibes un transport stream a través de una red, eso es exactamente para lo que está diseñado Tuneline.

La pregunta sobre output=ts frente a output=m3u8

Si tu fuente te permite elegir —y las fuentes estilo Xtream sí lo permiten—, vale la pena entenderlo, porque cambiar esta opción soluciona muchos problemas de reproducción.

output=ts te ofrece el flujo continuo sin procesar. Tiene la compatibilidad más amplia y funciona prácticamente en cualquier lugar, pero no cuenta con tasa de bits adaptable. Con una conexión débil, se detiene en lugar de reducir la calidad.

output=m3u8 te ofrece HLS segmentado. Funciona mejor con conexiones inestables porque el reproductor puede cambiar a una calidad inferior durante la transmisión y, por lo general, se adapta mejor a las redes móviles.

Consejo práctico: prueba primero m3u8 en teléfonos y redes Wi-Fi inestables; prueba ts cuando algo se niegue por completo a reproducirse. Cambiar el parámetro requiere editar un solo carácter y resuelve una cantidad sorprendente de reportes de "no se reproduce". (Por qué las transmisiones se traban y qué las soluciona realmente.)

En resumen

  • .ts es MPEG Transport Stream, creado para transmisiones: un flujo continuo de paquetes al que puedes conectarte en cualquier momento.
  • HLS lo adoptó porque las transmisiones necesitan segmentos que puedan decodificarse de forma independiente, y eso es exactamente lo que ya era.
  • Tu transmisión en vivo está compuesta por miles de segmentos .ts cortos, no por un solo archivo.
  • .ts puede comenzar desde cualquier punto y resiste los daños; .mp4 permite búsquedas rápidas y almacena los datos de forma eficiente. Cada uno tiene una función diferente.
  • Los errores de reproducción suelen deberse al códec interno (MPEG-2, HEVC, AC-3), no al contenedor.
  • Que la búsqueda sea lenta en un .ts grande es normal: no hay un índice.

¿Tienes un flujo de transporte que llega a través de la red? Descarga Tuneline — gratis, sin contenido incluido y en todas tus plataformas.

Compartir el artículo

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.

Lee este artículo en otro idioma

Tuneline es una aplicación reproductora de medios. No proporciona, aloja ni distribuye ningún contenido. Tú traes tu propia lista de reproducción, igual que lo harías con VLC.