Streaming a MPEG2 TS file to a Set Top Box

So, I have this really weird problem. I am working on a video on demand solution for a Hybrid DTH Set Top Box. The problem is that this box can only read MPEG2 TS Files with AAC Audio. It does not support HLS, HDS or HSS just simple HTTP Streaming (It does not support RTP, RTMP or RTSP or the likes).

I tried using wowza to stream a .TS transcoded file to the box and it cannot read it because I have to use either one of the above mentioned protocols It supports. After scampering from piller to post for a solution I came across VLC Media Player which also doubles up as a media server. I was able to successfully stream and play the file by using the following command line parameter on the server. The Client however just point’s to the server’s IP address…

C:\Program Files (x86)\VideoLAN\VLC" vlc -vvv “C:\content\mahadev.ts” :sout=#http{mux=ts,dst=:1935/} :sout-keep

As you may have noticed, I was running this demo from my laptop doubling up as an application / media server. My questions is, I want to bring my application to production and wish to know how I can use Wowza Media Server to solve this issue. Is there a combination of VLC and Wowza that I can use to achieve this purpose?

I wish to extend my application to all other screens and devices as well therefore want to invest in just one server that can take me the entire way. Any help from anyone in this matter will be highly appreciated!

Hi there,

Wowza does not support .ts files for VOD.

Salvadore

Right, that is relevant to RTP/RTSP streams, not HTTP (HLS, HDS, smooth) streams.

Richard

forceMPEGTSOUT will output an MPEG-TS stream with VOD, but the file has to be mp4.

There is no way to use .ts files

Salvadore

You can convert the .ts files to mp4.

Here is an article that may be helpful:

How to encode video on demand content

Salvadore

I can’t really say what will work with this box because I don’t have one. All I can suggest is test different methods on it

Salvadore

Thanks Salvadore, for your reply.

May I ask if you know of any other streaming solution that will be able to stream .ts files as VOD? I would have loved to use VLC but I am not being able to figure out how to install that on a cloud instance (i.e. Amazon, Limelight, etc.). Plus I somehow feel that what VLC is doing is nothing but a bad hack which would not be very resource friendly for production. Again, this is just what I FEEL. Do you have any experience in working with VLC as a media server?

Also, I came across this link in Wowza’s Forum https://www.wowza.com/docs/how-to-set-up-video-on-demand-streaming) which explicitly states that Wowza has a Property to force output to MPEG-TS (set-top box) which states…

When streaming out using RTSP/RTP, you can force the output to MPEG-TS (which is required by many set-top boxes) by adding the following properties to the RTP/Properties container in [install-dir]/conf/[application]/Application.xml (be sure to get the correct container, there are several in the Application.xml file):

Code:

forceMPEGTSOut

true

Boolean

rtpWrapMPEGTS

true

Boolean

Even if I can force output to a MPEG2.TS file it would solve the purpose for me. The only problem is that I need the streaming to be in HTTP rather than RTP. Do you think that is possible? Thanks!

Thanks Salvatore, you have been a great help. I was wondering that whether I use an MP4 file or a ts source file it should not make a difference as long as the output is in MPEG-TS. Can the method of forcing the MPEG-TS output work with plain HTTP streaming or would I still need to use RTP/RTSP? Remember that I can’t use HLS, HDS, or HSS. This STB is funny like that.

Thanks Salvadore! My questions was, does the method of Forcing MPEG - TS work on plain HTTP streaming or does it only work with RTP? When I mean HTTP Streaming I mean plain HTTP Streaming and not HTTP Live / Dynamic / Progressive Streaming as the box is not compatible to any of these.