From LinuxTVWiki
Jump to navigation Jump to search

ProjectX is a Java based application that can demux Transport Streams used in digital television transmissions. Additionally, ProjectX tries its best to handle and repair faulty streams, and also attempts to show what went wrong during their reception.

Main features:

  • TS demuxer
  • can remux in TS, VDR, M2P, PVA
  • handles DVB subtitles
  • handles teletext subtitles
  • Simple cut editor à la vdr




Being written in Java, ProjectX requires that a JRE (Java Runtime Environment) be installed on your system before it can be run. It is known to run fine with both Sun or Blackdown Java (however, no such luck with Kaffe).

Command line options

$ java -jar /usr/bin/px/ProjectX.jar -?
quick CL usage:
Note: CL doesn't load the GUI components, except with switch [-gui]
<without options>  ...starts the GUI
switches and inputfiles can be in any order 

[-ini <path + inifile>] ..use that specified iniFile instead of the standard
[-dvx1] ..create a .d2v ProjectFile on demux
[-dvx2] ..create a .d2v ProjectFile + .ac3.wav (RIFF WAVE Header)
[-dvx3] ..create a .d2v ProjectFile + .mpa.wav (RIFF WAVE Header)
[-dvx4] ..create a .d2v ProjectFile + .ac3.wav + mpa.wav (RIFF WAVE Header)
[-out <path>] ..use that specified directory for output
[-name <filename>] ..use that specified filename for output
[-cut <file>] ..use that text based file as cutpoint list
[-chp <file>] ..use that text based file as chapterpoint list
[-id <tokens>] ..use only these (P)IDs, separated by comma ","
[-gui] ..display the GUI using all given CLI options
[-log] ..write the normal logfile
[-saveini] changes made bei CLI in active .ini
[-split <xxx>] ..split output at xxx MB
[-demux, -tom2p, -topva, -tovdr, -tots, -filter] ..action types

Cleaning (Error Correction) with ProjectX

ProjectX does its full power error-correction only if you choose demux. (You could also chose "to TS" but ProjectX's error correction is weaker and de-synchronisation occcurs - a different for each film...) The good thing about the audio and the video files that are created by ProjectX is: they really are synchronised.

One could do all these things also in the GUI, but the CLI has got all one needs to demux (and therefore error-correct):

me@comp:/videos/vdr/The_Long_Good_Friday/2006-09-$ java -jar /usr/bin/px/ProjectX.jar -demux 001.vdr 002.vdr -out /home/me/videos2convert/ -name longgoodfriday

Now one can recombine them (producing an error-free MPEG2 of pretty much same length) e.g. by

mplex -f 8 -o longgoodfriday_muxed.mpeg2 longgoodfriday.m2v longgoodfriday.mp2

Or one can re-code either or both of them and then recombine them.

External Links