HOWTO 7.16 KB
#---------------#
# OTMEDIA LIA   #
# HOWTO         #
# version 1.0   #
#---------------#

1\ Main scripts options
2\ Main scripts
    2.1\ FirstPass.sh
    2.2\ SecondPass.sh
    2.3\ ConfPass.sh
    2.4\ ExploitConfidencePass.sh
    2.5\ ThirdPass.sh
    2.6\ RecomposePass.sh
    2.7\ ScoringRes.sh
    2.8\ CheckResults.sh
3\ OneScriptToRuleThemAll.sh
4\ Modify configuration
    4.1\ Scripts configurations
    4.2\ Speeral configurations
5\ Modify binaries
6\ Exemples


1\ Main scripts options
-----------------------

There are five main options for otmedia scripts.
-h : for help
-D : Debug mode
-v n : Verbose mode 1 low to 3 high
-c : Check results
-r : force to rerun a script, without deleting work already done

2\ Main scripts
---------------

    Each script got a configuration file in OTMEDIA_HOME/cfg/<scriptname>.cfg .
    The main options can be modify individually through the arguments or in the configuration file.

    2.1\ FirstPass.sh
    -----------------

    FirstPass.sh do speaker diarization and transcription of an audio file. Convert it into wav format if not already done (16000Hz, 16 bits, mono).
    If a .SRT file is present in the same directory of the audio file it will copy it.

    $> FisrtPass.sh [options] 110624FR2_20002100.wav result_directory

    Options:
    -f n : number of forks for speeral

    Output : result_directory/110624FR2_20002100/res_p1/
            and .ctm, .trs and .txt files.

    2.2\ SecondPass.sh
    ------------------

    SecondPass.sh do speaker adaptation and transcriptions base on the first pass.

    $> SecondPass.sh [options] result_directory/110624FR2_20002100/

    Options:
    -f n : number of forks for speeral

    Output : result_directory/110624FR2_20002100/res_p2/
            and .ctm, .trs and .txt files.

    2.3\ ConfPass.sh
    ----------------

    ConfPass.sh do confidence measure using the second or third pass.

    $> Confpass.sh [options] result_directory/110624FR2_20002100/ <res_p2|res_p3>

    Output : result_directory/110624FR2_20002100/conf/res_p2/scored_ctm/
            and result_directory/110624FR2_20002100.usf file

    2.4\ ExploitConfidencePass.sh
    -----------------------------

    It exploits confidence pass measure to :
    - boost confidente zone
    - find alternative in non confidente zone (using SOLR DB)
    - extend the lexicon

    $> ExploitConfidencePass.sh [options] result_directory/110624FR2_20002100

    Output :   result_directory/110624FR2_20002100/trigg/speeral
               result_directory/110624FR2_20002100/LEX/speeral/_ext
                
    2.5\ ThirdPass.sh
    ------------------

    ThirdPass.sh do transcriptions using SecondPass speaker adaptation and ExploitConfidencePass trigg files and new lexicon.
    
    $> ThirdPass.sh [options] result_directory/110624FR2_20002100/

    Options :
    -f n : number of forks for speeral

    Output : result_directory/110624FR2_20002100/conf/res_p3
            and .ctm, .trs and .txt files.
    
    2.6\ RecomposePass.sh
    --------------------

    RecomposePass.sh copy results that missing in ThirsPass from the Second and First Pass.

    $> RecomposePass.sh [options] result_directory/110624FR2_20002100/

    Output : result_directory/110624FR2_20002100/res_all
            and .ctm, .trs and .txt files.
    
    2.7\ ScoringRes.sh
    ------------------

    ScoringRes.sh run differents scoring tools to score the results using SRT file if exists.

    $> ScoringRes.sh [options] result_directory/110624FR2_20002100/

    Output : result_directory/110624FR2_20002100/scoring
     
    2.8\ CheckResults.sh
    --------------------

    CheckResults.sh parse results directories to synthesize works already done.

    $> CheckResults.sh [options] result_directory

    Output : "Directory name      #plp    #res_p1 #treil_p2   #treil_p3   usf_p2  usf_p3"
            #plp number of plp files
            #res_p1 number of .res files at first pass
            #treil_p2 number of .treil files at second pass
            #treil_p3 number of .treil files at third pass
            usf_p2 usf file from confidence pass result on second pass (OK|ERR|NAN)
            usf_p3 usf file from confidence pass result on third pass (OK|ERR|NAN)

3\ OneScriptToRuleThemAll.sh
----------------------------

    The script to do all OTMEDIA LIA pass in one call.

    $> OneScriptToRuleThemAll.sh [options] 110624FR2_20002100.wav result_directory 

    Options : (default options are availables)
    -a Do every pass
    -1 Do First pass
    -2 Do Second pass
    -3 Do Third pass
    -C Do Confidence pass
    -e Do Exploit Confidence pass
    -R Do Recompose pass
    -s Do Scoring pass

4\ Modify configuration
-----------------------

    Most of the main scripts got a configuration file (cfg/ directory).
    You can change script behaviour and data used.
    Speeral configuration file can be also change (tools/Speeral/CFG/ directory)

    4.1\ Scripts configurations
    ---------------------------

        In scripts configuration files (OTMEDIA_HOME/cfg/) you can change default options as architecture, verbose ...
        Scripts using Speeral got information on binaries, models path and name, and the configuration file for speeral.

    4.2\ Speeral configurations
    ---------------------------

        Speeral configuration files are in OTMEDIA_HOME/tools/Speeral/CFG directory.
        The .tmp files are use to generate .xml file from install.sh.
        You can modify .xml files for your needs, but most of data informations are pass through arguments at speeral call in scripts.

5\ Modify binaries
------------------

    Binaries can be find in bin and tools directory.
    Some binaries are compiled in 32 and 64 bits. By default all binaries are compiled in 32 bits.
    You can update binaries as you need.

    To modify tools binaries, you need to download a compatible version.
        lia_ltbox can be found in /labo/Tools/
        Speeral (binaries) can be compiled from the git remote git@gitlia.univ-avignon.fr:vaudriguard/libspeeral.git . Do not modify Speeral data from OTMEDIA (unless you know what you do).
        In PACKAGES_MESURES_V1.0 you can update icsiboost binary (in bin) from the projet page : https://code.google.com/p/icsiboost/
        For QUOTE_FINDER and SIGMUND please contact support.

6\ Exemples
-----------

    Conventional use :
    $> FirstPass.sh 110624FR2_20002100.wav /my/output/directory/ && SecondPass.sh /my/output/directory/110624FR2_20002100 && ConfPass.sh /my/output/directory/110624FR2_20002100 res_p2 && ExploitConfPass.sh /my/output/directory/110624FR2_20002100 && ConfPass.sh /my/output/directory/110624FR2_20002100 res_p3 && ThirdPass.sh /my/output/directory/110624FR2_20002100 && RecomposePass.sh /my/output/directory/110624FR2_20002100 && ScoringRes.sh /my/output/directory/110624FR2_20002100
    or
    $> OneScriptToRuleThemAll.sh -a 110624FR2_20002100.wav /my/output/directory/

    Rerun SecondPass and ConfPass with verbose and speeral fork to 4 :
    $> SecondPass.sh -r -f 4 -v 3 /my/output/directory/110624FR2_20002100 && ConfPass.sh -r -v 3 /my/output/directory/110624FR2_20002100 res_p2
    or
    $> OneScriptToRuleThemAll.sh -r -2 -C 2 -v 3 -f 4 110624FR2_20002100.wav /my/output/directory/



Good Luck ! Luke !
And the force be with you !