Starting with version 0.51, CCExtractor has a mode
that allows frontends and other programs know what
the current progress is as well as get information
on interesting events, such as a file being open 
or video information (resolution, frame rate and
so on) being found.

The Windows GUI source code is good reference
implementation.

Usage:

Add --gui_mode_reports 

to the command line as the first parameter (this
is not essential but because the mode is enabled
after this option is parsed, if there is any
event regarding the previous parameters you
would miss them).

When this option is used, ccextractor reports
progress and other information to stderr. 

This does not disable stdout (the regular stuff)
reporting. 

Information it sent to stderr, one line at a time.
Information lines that are supposed to be parsed
by programs starts with ###. All other lines, if
any, must be discarded. stderr is not guaranteed
to have only information lines - so do check.

After ### the data starts. Tokens are also
separated by #. The first token specified the 
data type, and the rest, if any, are parameters.

The following data types are currently defined:

VERSION - Get CCExtractor version
       Program
       Version

	Example: ###VERSION#CCExtractor#0.51

PROGRESS - Get processed percentage and current
           timing
       Percentage (or -1 for streaming mode)
       Minutes
       Seconds

        Example: ###PROGRESS#45#12#34
                 (for 45%, 12:34)

INPUTFILECLOSED - CCExtractor closed whatever
           input file it had open (which had
           been reported before). 
       No parameters.

INPUTFILEOPEN - A new file was successfully 
           open for reading.
       Filename

       Note that the filename CAN contain
       #, so don't split the line after the
       first token and treat the remainder
       as the filename.

        Example: ###INPUTFILEOPEN#/tmp/This is # a file.mpg

MESSAGE - Something interesting happened. 
       Message text.

       This can be anything from a fatal
       error message to something merely
       informative. 
      
        Example: ###MESSAGE#Timing broken in this file

VIDEOINFO - New video information found
	Horizontal resolution
        Vertical resolution
        Aspect ratio
        Frame rate

        Example: ###VIDEOINFO#1980#1080#16:9#29.97

SUBTITLE - New subtitle screen
        Start time
        End time
        Line

        Time is empty if it's the same of the previous 
        line (i.e. they're supposed to appear together).

        Example: ###SUBTITLE#10:23#10:25#This is 1
                 ###SUBTITLE###This is 2

        Note that time is in MM:SS format. No milliseconds
        since this is for a preview window. 
        Text is trimmed and there is no color or font
        information, to save space.

TSPROGRAMNUMBER - A multiprogram TS was detected, but 
        no program was manually selected. CCExtractor will
        send a list of programs so the GUI can show it to
        the user for selection.


	Example: ###TSPROGRAMNUMBER#3

XDSPROGRAMNAME - Program Name as received from XDS is 
        available. 

        Example:

	###XDSPROGRAMNAME#Star Trek

        You may receive this more than once per stream.

*** TODO : Add the rest of XDS stuff ****
