Log in

View Full Version : libmpegts - open source ts muxer test/discussion thread


kieranrk
28th December 2010, 22:10
It's long overdue for me to actually release this but first a little testing needs to take place:

https://github.com/kierank/libmpegts

Google Code thing: http://code.google.com/p/libmpegts/

Code will be released in pieces.

Basically it's meant to be an open source ts muxing library that's T-STD compliant suitable for video-on-demand and live content (i.e ATSC/DVB/ISDB/CableLabs/Blu-ray etc). The T-STD algorithm will be backported to libavformat in due course. Audio is working but code needs some tidying up.

This has been a bit of flying blind because of a lack of a decent analyzer so thanks to TEB and Holdkjeft (Darren) for the assistance.

Test clip (8mbit CBR SPTS with a low bitrate stream inside to make muxing harder):
http://dl.dropbox.com/u/2701213/ts/crew.ts

Please see if you can find any player/analyzer that complains. Any interesting feature suggestions will be taken into consideration.

TEB
29th December 2010, 16:56
Finally an opensourced TS muxer ;) way to go! ;)

jj666
31st December 2010, 08:26
Looks interesting!

FYI, on your sample, TSPE gave a warning: "Warning: Incorrect Adaptation Field Length detected - must be 183 when Adaptation Field Control = 2", and VideoReDo H264 refused point blank to open it.

Cheers,

-jj-

Blue_MiSfit
31st December 2010, 08:31
Thrilled to see progress on this project, Kierank! I look forward to working with it and hopefully contributing to the development in some way!

Cheers!

Derek

TEB
31st December 2010, 10:25
For those of u that havnt checked it out, this will be a major part of the new OBE project:
github.com/kierank/broadcastencoder/wiki

kieranrk
1st January 2011, 01:28
FYI, on your sample, TSPE gave a warning: "Warning: Incorrect Adaptation Field Length detected - must be 183 when Adaptation Field Control = 2",

Ah that's a good point. Fixed locally.

UltraTV
17th March 2011, 20:13
I'm really glad some people are working on this. To make a request, it would be hugely useful to have a solid implementation of HLS segmentation. The open source implementations to date are not quite up to par with Apple's mediastreamsegmenter.

shon3i
21st March 2011, 00:32
Nice, again thanks kieranrk, i hope we finally can put tsmuxer (and his problems) to bed.

Selur
23rd February 2012, 10:05
just wondering is libmpegts still alive? Is it in any shape to replace tsmuxer in a not too far future?

filler56789
23rd July 2014, 04:24
just wondering is libmpegts still alive? Is it in any shape to replace tsmuxer in a not too far future?

According to the latest README: nope -_-

libmpegts README

Single Program Transport stream muxer

Things which work:

CBR and VBR TS muxing of AVC, AC-3, MP2 and AAC/HE-AAC.
DVB AU_Information
(Very likely MPEG-2 as well but not tested)

Things which don't work:

Blu-Ray and associated formats
DTS

libmpegts TODO list

Most important TODO is to get streams verified with a good analyzer
Is there a need to implement full T-STD modelling or use the simpler version currently implemented?
Do we need to control EB buffer fullness more?
Find out why some streams where muxrate is larger than TB leak rate fail to mux.
A true VBR mode? How to implement? Within Spec?
Write ATSC PSIP
Write DVB Tables (SIT, NIT, EIT) etc
Sort out T-STD on Data streams
Add more formats
Add Blu-ray formats - dealing with vbr audio?

joolzg
11th March 2016, 15:25
Im looking at building this into ffmpeg as the tsmuxer is causing me lots of problems when muxing dvbsubs into the streams

Any one interested in helping