Generar un TS (Transport Stream) valido para DVB-T y DVB-T2 (TDT)

Tras mucho buscar por internet y probar miles de software (emulados con wine, compilados, crackeados…) al final como siempre la solución estaba más cerca de lo que creía. Y es que al final es posible generar este tipo de streams con FFMPEG. La solución es sencilla:

ffmpeg -i input.mpg -vcodec copy -acodec copy 
-mpegts_original_network_id 0x1122 /
-mpegts_transport_stream_id 0x3344 /
-mpegts_service_id 0x5566 /
-mpegts_pmt_start_pid 0x1500 /
-mpegts_start_pid 0x150 /
-metadata service_provider="Iker Perez de Albeniz" /
-metadata service_name="TeleAlbeniz" /
-y out.ts

la primera línea indicamos el input y como el formato original es MPEG2 indicamos que copie el códec de video y audio. Las siguientes líneas completan las tablas e información necesarias para los receptores de TDT

6 Responses to Generar un TS (Transport Stream) valido para DVB-T y DVB-T2 (TDT)
  1. Yuki

    Me imagino, que con una capturadora que tenga salida, puedes redirigir la este stream por la salida de la “capturadora”, y si lo juntas a la toma de casa, la tele detectará un nuevo canal, no?

    Se podrían hacer varios canales (uno para pelis, otro para series…) y sacarlos todos una única capturadora?

  2. Iker

    Claro.. necesitas un hardware que coja ese TS y lo encapsule en DVB-T o DVB-T2 y lo module..

    http://www.dektec.com/Products/PCI/DTA-115/index.asp

    También podrías encapsular y codificar por software y luego intentar emitirlo usando tarjetas radio tipo USRP..

    https://www.ettus.com/product

    es decir.. el post solo indica como generar un TS valido.. pero para emitir/recibir hace falta bastante mas..

  3. Carlos

    Hola,
    Les comento que trabajo en un modesto Canal Cable de una ciudad del interior de Uruguay.
    Desde hace unos meses estoy desarrollando una serie de scripts en BASH y PHP (como frontend) para que el canal local se maneje enteramente por la web y sin tramas análogas. El equipo que toma la señal en la cabecera me exije que le envíe un stream en TS con PAT y PMT. Despues de mucho googlear y muchas pruebas realizadas, comencé a utilizar el avconv (que es igual al ffmpeg pero consume menos procesador) y basicamente la linea que le envia el stream a la cabecera es algo asi (solo lo elemental):
    avconv -re -i “cualquier_archivo_de_video” -f mpegts -vcodec mpeg2video -b ${vbr} -s ${res} -acodec copy -metadata service_provider=”Canal Local” -metadata service_name=”TV Cable” -threads 1 udp://10.222.1.10:56008?pkt_size=188

    Fue mas que importante, escencial! utilizar el: ?pkt_size=188 sin eso salian puras rayas por los receptores.
    Me gustaria ponerme en contacto con personas que esten interesadas en intercambiar experiencias acerca de este tema ya que podemos ayudarnos mutuamente y asi aprender mas.
    Dejo mis datos para el que quiera contactarme.

    Carlos Giurleo
    cgiurleo@gmail.com

    Gracias
    Saludos

  4. Iker

    Muchas gracias Carlos!! La verdad es que la razón por la que escribí esta entrada era para que existiera una referencia en castellano explicando claramente como generar trasport streams validos y tu aportación es muy interesante.. espero que gente interesada llegue a este post y puedan servirles de ayuda ambas “recetas”.

  5. ogry

    Hola!

    No se si este blog aún se mantiene, y tampoco si hay algún grupo en el que volcar mis dudas y aportes, pero he encontrado un modulador DVB-T por USB bastante barato (150€), sobre el que quiero probar a enviar un TS con varios programas simultáneos.

    ¿Alguien me ayuda?

  6. ogry

    Bueno, parece que el blog está muerto. O será cosa del verano, que a veces se alarga muuucho.

    El caso es que entre tanto, he encontrado OpenCaster, de Avalpa, un opensource de excelentes prestaciones.

    Estoy empezando a ver la luz.

Deja un comentario

Your email address will not be published. Please enter your name, email and a comment.

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>