PDA

View Full Version : A better muxer for svcd


DrKnowLittle
15th April 2002, 11:59
Hi ,

I know there must be some real good programers here that is looking for a new challange!

A tool that I think is missing is a good svcd muxer that can do as follows:

1. Mux video + 1(or 2) audio tracks + (1-4) svcd/cvd subs .
2. and at the same time cut into several cds based on frame no, time or even size (maybe the easiest ?).
3. the outputed mpegs should also be albe to overlap each other with 2-3 sec .


A tool like the abowe woulds surely speed up the time it takes to produce good 100% compliant svcds.


Sources to start with would be mplex ,submux (found on dvd2svcds homepage) and maybe bbmpeg source ?

To keep it simple it should only do 100% compilant svcd streams , not xsvcd , vcd and so on...


DrKnowLittle

DrKnowLittle
18th April 2002, 11:52
40+ reads but no takers ? I tought this was where the elite programmers hang out , but I guess Im wrong :P

avih
20th April 2002, 02:33
didn't u know that elite programmers don't take orders from strangers??

dvd2svcd
20th April 2002, 06:42
new_age has made a new svcd/cvd submux'er. Maybe he can implement it into bbMPEG. That would be nice. And your other suggestions is nice too, and would fit right into dvd2svcd ;) But alas I am no c++ programmer, if I were I would have made those changes long ago.

new_age
20th April 2002, 10:51
Hello!

Your idea is good but to write this program is a big job and a lot of time.

There are a lot of tools that can do these things. Not in one program sadly.

The only thing that can't find is a program to cut SVCDs based on size with an easy GUI. (bbmpeg can do it but I think there should be a lot more userfriendly gui for it)

Currently I'm working on WinSubMux. It still has some bugs as you can read from the readme:
"
Known bugs
~~~~~~~~~~

* under Win9xMe some kind of memory problems (can't load subtitles)
-> it will be solved with an Win9x compatible mode
-> you should try a memory optimalizer software first, maybe
it can help
* when playing subbed files with a DVD player and the subtitles are
turned off there are a few corrupted video/audio frames
-> it needs a lot of debugging because software players
show these frames correct
>>> for any kind of help I will be happy
"

The second part is the hardest to find. So I'm currently reading a lot of mpeg2 encode/decode/(de)multiplex source codes to fully understand the mpeg2 file structure and all of the bits in it. Sadly I still can't find any correct mpeg2 file format documentation.

----
And I'm also working on a very small utility (SVCDTimeFilePos) to help cutting SVCD mpeg2 files at exact file position. It is analizing the SVCD file and then you specify a file position (eg. 799MB) and it gives you the last frame number or the last time code for this size.

Currently I'm having trouble with this because the time code that I decode from 'MPEG2 PES packet' is not matching the time code that several programs detect (vcdxinfo, tmpgenc, etc).
The only program that decode the same timecode is FlaskMPEG. (So it is also a bug in Flask).
[It is about a 1 sec difference and it means about +0.23MB]

So I will check VCDxInfo source code for how to detect time code exactly. If it works fine this little prg will be also available.

I know everbody want to do these kind of things in batch mode so if these programs (WinSubMux & SVCDTimeFilePos) will be bugfree I'll work on a program that can do all these things you've described but till that time it is useful to have SVCDTimeFilePos.

best regards

New Age

DrKnowLittle
20th April 2002, 13:02
Hi

new_age sounds like you are working to my favor :D
For me a good muxer is prio one , the cutting part can ,if wanted be done before the enocoding (spilt vobs by chapters).

Another thing that I miss is a cmd tool to rip thoose subs out from the vobs , subip is good but a cmd tool especally for svcd/vcd subs would be even nicer :eek:

dvd2svcd who said it had do be c++ I don't care if it's done in vb or anyting else as long as it is fast :)

avih I think you should take a long nap and come back when you feel better , I was meraly giving a suggestion on a tool that would be helpfull for the whole svcd comunity not giving anyone order...

/DrknowLittle

new_age please keep me posted on your progress.

new_age
20th April 2002, 14:44
Hello!

There is a command line tool for extracting subtitles (DVD, SVCD, CVD): VOB2SUB. However it creates BMP files with bad header and my program wont show/multiplex them well. First you have to correct wrong bmp headers (only just open with a picture viewer/editor and save)

About speed: my opinion and experience is that C/C++ compilers generate faster executables than delphi compiler however I think delphi(pascal) is more userfirendly language but there are more possibilities in C. I use them both.

regards,

New Age

DrKnowLittle
22nd April 2002, 10:54
Nice work new_age !

I haven't got aroud to actully test it but the interface looks nice and clean.

Would it be much harder to be able to mux several subs in one go ?

new_age
22nd April 2002, 11:26
Hello!

Where did you the interface?

It is easy to multiplex all the substreams in one step but currently I'm working on elimintanig the "currupted video/audio frames" after it I'will implement the one step multiplexing.

The SVCD Time -> SVCD FileSize is finished it will be a new tab in WinSubMux.

regards,

New Age

DrKnowLittle
22nd April 2002, 11:37
I just started the applicaion on my W2k box here at work , as I said I haven't had the chance to test it yet.

DCK21
16th October 2003, 11:00
This provides basis for properly incorporating subtitles in the
general muxing process

http://sourceforge.net/projects/subhandler/