################################################################################################################
#                                                                                                              #
#                                       Analyza zvukovych dat z inteligentniho vceliho ulu                     #
#                                                            Petr Hala                                         #
#                                                          Popis skriptu				       #
#                                                                                                              #
################################################################################################################
     
     fft_spectogram.py: Program vykresli pomoci matplotlib FFT jednoho zaznamu nebo spectogram jedno dennich dat
                        Vykresluje pouze zaznamy se vzorkovaci frekvenci 8000 vzorku za vterinu
                        
          optional arguments:
               -h, --help            
                        Zobrazi napovedu a ukonci program
               --execute {fft,spectogram}
                        Spustit program, pro upreseni funkce je potreba zadat
                        volbu, FFT pro zobrazeni FFT jednoho zaznamu,
                        spectogram pro zobrazeni Pandas spektogramu jednoho dne
               --source_directory PATH, -s_dir PATH
                        Nastaveni cesty zdrojovych zvukovych souboru, pro volbu
                        FFT(soubor) a spectogram(slozka)
               --date DATE, -d DATE  
                        Datum pro volbu spectogram rrrr-mm-dd
                        
################################################################################################################                        
     
     filter.py: Navrhuje a aplikuje filtry na zvukova data, moznost zobrazeni navrhu filtru pomoci matplotlib
     
          optional arguments:
               -h, --help            
                        Zobrazi napovedu a ukonci program
               --execute {show_filters}
                        Zobrazeni navrhu frekvencni charakterstiky, nutno zadat volbu show_filtres
               --sample_rate [SAMPLE], -sr [SAMPLE]
                        Nastaveni vzorkovaci frekvence pro show_filters(default:8000)
                        
################################################################################################################      
    
     wav_converter.py: Aplikuje filtry (filter.py) na zvukova a vytvari PDF nebo JSON vystupy
          
          optional arguments:
               -h, --help            
                        Zobrazi napovedu a ukonci program
               --execute {full,interval}
                        Volba full pro konvertovani vsech zvukovych zaznamu
                        zvolene slozky, interval pro konvertovani od
                        pocatecniho data do konecneho data
               --make_file {json,pdf}
                        Volba konvertovani, z WAV do JSON nebo PDF
               --source_directory S_DIR, -s_dir S_DIR
                        Nastaveni cesty zdrojovych zvukovych zaznamu pro volbu
                        full a interval (default: /mnt/storage/vcely/data)
               --output_directory O_DIR, -o_dir O_DIR
                        Nastaveni cesty pro vystup (default: slozka, kde je
                        umisten script)
               --hive {ul1,ul2,ul3}  
                        Volba ulu, pro tento argument se nezadava --source_directory
               --start_date SDATE, -sd SDATE
                        Pocatecni datum pro volbu interval(vcetne) rrrr-mm-dd
               --final_date FDATE, -fd FDATE
                        Konecne datum pro volbu interval(vcetne) rrrr-mm-dd
               --cron CRON           
                        Automaticke zpracovani pro cron, zpracuje dnesni a
                        vcerejsi data
                        
################################################################################################################  
     
     json_to_influx.py: Konvertuje data z JSON do INFLUX
     
          optional arguments:
               -h, --help            
                        Zobrazi napovedu a ukonci program
               --execute {full,interval}
                        Spustit program, pro upreseni funkce je potreba zadat
                        volbu, full pro vlozeni vsech JSON dat slozky do influxDB,
                        interval pro specificky, casove omezeny vyber vlozeni JSON 
                        dat do influxDB
               --hive {ul1,ul2,ul3}  
                        Jaky ul se bude ukladat do influxDB
               --start_date SDATE, -sd SDATE
                        Pocatecni datum pro volbu interval(vcetne) rrrr-mm-dd
               --final_date FDATE, -fd FDATE
                        Konecne datum pro volbu interval(vcetne) rrrr-mm-dd
               --cron CRON           
                        Automaticke zpracovani pro cron, zpracuje dnesni a
                        vcerejsi data
                        
################################################################################################################                          
     
     test.py: Vytvari testovaci zaznamy pro test filtru nebo trenovaci data pro RapidMiner
          
          optional arguments:
               -h, --help            
                        Zobrazi napovedu a ukonci program
               --execute {test_rec,test_data}
                        Vygenerovani testovaci zaznamu
                        [50Hz,150Hz,275Hz,425Hz,1250Hz,3000Hz] pro volbu
                        test_rec, vygenerovani trenovacich dat v csv pro
                        rapidminer pro volbu test_data
               --start_date SDATE, -sd SDATE
                        Pocatecni datum pro volbu test_data(vcetne) rrrr-mm-dd
               --final_date FDATE, -fd FDATE
                        Konecne datum pro volbu test_data(vcetne) rrrr-mm-dd
               --source_dir S_DIR, -s_dir S_DIR
                        Definice cesty zdrojove slozky k JSON souborum pro volbu
                        test_rec 
                        
################################################################################################################                         
     
     wav_converter_library.py: Modul pro wav_converter.py (nemoznost uzivatelskeho spousteni)
     
################################################################################################################       
                                                                               
                                                                                        

