**Manuale Utente (Italiano)** **Titolo:** Manuale Utente - g\_reconvert.exe GUI Wrapper **Versione:** 1.0 **Data:** 27 Luglio 2024 **1. Introduzione** Benvenuto nel manuale utente per il g\_reconvert.exe GUI Wrapper. Questo strumento è stato progettato per fornire un'interfaccia utente grafica (GUI) semplice e intuitiva per il potente eseguibile a riga di comando `g_reconvert.exe`. Il wrapper semplifica il processo di configurazione e lancio delle conversioni, eliminando la necessità di memorizzare e digitare manualmente complessi parametri da riga di comando. Questo manuale ti guiderà attraverso l'installazione (se necessaria), l'interfaccia utente, la configurazione dei parametri, l'esecuzione delle conversioni, la gestione dei profili e fornirà una panoramica del funzionamento dell'eseguibile `g_reconvert.exe` e del wrapper stesso. **2. Prerequisiti** Per utilizzare questo tool, devi avere i seguenti prerequisiti installati sul tuo sistema: * **Python:** Una versione compatibile di Python (tipicamente Python 3.x). * **Librerie Python:** Le librerie `tkinter`, `subprocess`, `threading`, `queue`, `json`, `os`, `datetime`, `sys`, e `ttk`. Queste sono generalmente incluse nell'installazione standard di Python o possono essere installate tramite pip (`pip install tkinter`). Le librerie standard come `subprocess`, `threading`, `queue`, `json`, `os`, `datetime`, `sys` sono integrate. La libreria `ttk` è parte di `tkinter`. * **Eseguibile `g_reconvert.exe`:** Il file eseguibile `g_reconvert.exe` per il tuo sistema operativo. Il tool GUI richiede che tu specifichi il percorso di questo eseguibile. * **File di Input:** I file `.rec` che desideri convertire. **3. Installazione (Se Applicabile)** Se il tool ti è stato fornito come script Python (`.py`), non è richiesta un'installazione formale. Assicurati semplicemente di avere Python e le librerie necessarie installate. Puoi avviare l'applicazione eseguendo lo script Python. Se il tool ti è stato fornito come eseguibile (ad esempio, tramite PyInstaller), non sono necessari passaggi aggiuntivi oltre all'ottenimento del file eseguibile. **4. Interfaccia Utente** La finestra principale del g\_reconvert.exe GUI Wrapper è organizzata come segue: * **Barra del Titolo:** Mostra il titolo dell'applicazione ("g\_reconvert.exe Interface"). * **Menu Bar:** Contiene le opzioni per gestire file e impostazioni (spiegate nella Sezione 5). * **Percorso g\_reconvert.exe:** Un'etichetta in alto mostra il percorso attualmente configurato per l'eseguibile `g_reconvert.exe`. Questo valore viene salvato e caricato automaticamente. * **Schede (Notebook):** L'area centrale è organizzata in schede per raggruppare logicamente i vari parametri di `g_reconvert.exe`: * **Input/Output Files:** Configurazione del file di input e della cartella di destinazione. * **Main Processing Options:** Opzioni principali per il processo di conversione. * **Advanced Config & Numerics:** Opzioni avanzate e parametri numerici. * **Video Options:** Parametri relativi all'elaborazione video. * **Execution Control (// flags):** Flag per controllare il comportamento di esecuzione e il livello di verbosità. * **Pulsante "Run g\_reconvert.exe":** Un ampio pulsante al centro sotto le schede per avviare il processo di conversione. Diventa grigio e disabilitato mentre il processo è in esecuzione. * **Console Output:** Un'area di testo scorrevole nella parte inferiore della finestra che visualizza l'output in tempo reale (stdout e stderr) dell'eseguibile `g_reconvert.exe` durante l'esecuzione. Messaggi di diversi tipi (INFO, WARNING, ERROR, CMD, SUCCESS) sono codificati a colori per una migliore leggibilità. * **Status Bar:** Una barra nella parte inferiore della finestra che mostra lo stato corrente dell'applicazione e messaggi informativi. **5. Utilizzo del Menu Bar** Il menu bar fornisce le seguenti opzioni: * **File:** * **Set g\_reconvert.exe Path:** Apre un dialogo per selezionare il file eseguibile `g_reconvert.exe`. Questa è l'unica modalità per modificare il percorso dell'eseguibile dopo il caricamento iniziale. Il percorso impostato viene salvato automaticamente nel profilo default. * **Load Profile:** Apre un dialogo per selezionare e caricare una configurazione di parametri salvata da un file JSON. * **Save Profile:** Apre un dialogo per salvare la configurazione corrente dei parametri in un file JSON. * **Save as Default Profile:** Salva la configurazione corrente dei parametri nel file di profilo predefinito (`default_launch_profile.json`), che verrà caricato automaticamente al prossimo avvio dell'applicazione. * **Open GUI Log File:** Apre il file di log interno della GUI (`gui_execution_log.txt`) con l'applicazione predefinita del sistema. Questo log registra gli eventi e i messaggi della GUI stessa. * **Exit:** Chiude l'applicazione. Se un processo di `g_reconvert.exe` è in esecuzione, chiederà conferma prima di terminare. **6. Configurazione dei Parametri** Le schede organizzano i parametri di `g_reconvert.exe`. Di seguito sono descritti i widget principali: * **Input/Output Files:** * **Source Binary File (.rec):\*** Campo di testo e pulsante "Browse..." per selezionare il file di input `.rec`. Questo campo è obbligatorio. * **Output Directory:** Campo di testo e pulsante "Browse..." per selezionare la cartella dove verranno salvati i file di output. Questo campo è obbligatorio a meno che non sia selezionata l'opzione "Analyze Only". * Nota informativa sui requisiti dei file di input e output. * **Main Processing Options:** Contiene vari checkbox e campi per controllare il processo di conversione principale. I widget sono distribuiti su più colonne per compattare l'interfaccia. * **Analyze Only (/a):** Selezionare per eseguire solo l'analisi del file senza generare output. * **Don't Save Signal (/nosign):** Selezionare per non salvare i dati di segnale. * **Use FW Header (/hfw):** Utilizza l'header del firmware per la sincronizzazione. * **Fix DSP Geopos Bug (/$pbug):** Applica una correzione per un potenziale bug di geoposizionamento DSP. * **Sync Signal Flows w/ Header (/h):** Sincronizza i flussi di segnale con l'header. * **Extract Only SW Data (/sw):** Estrae solo i dati software. * **Extract Only DSP Data (/dsp):** Estrae solo i dati DSP. * **Stop on Discontinuity (/ss):** Ferma l'elaborazione in caso di discontinuità nei dati. * **Dry Run (/dryrun):** Esegue una "simulazione" senza effettuare la conversione effettiva. * **Start Save from STBY (/z):** Inizia il salvataggio dei dati dallo stato di standby. * **Fix SATA File Date (/d):** Applica una correzione alla data del file SATA. * **Examine Some Data (/x):** Esegue un esame preliminare di alcuni dati. * **Post Process History (/p) / Level:** Checkbox per abilitare il post-processing. Se selezionato, il campo "Level:" diventa attivo per specificare il livello di post-processing (generalmente 1). * **Concatenate REC files (/n):** Campo di testo per specificare il numero di file `.rec` da concatenare durante la conversione. Il valore di default è 3. * **Output Format (/f):** Campo di testo per specificare il formato di output desiderato. * **Advanced Config & Numerics:** Contiene opzioni avanzate e parametri numerici. * **JSON Config File (/j):** Campo di testo e pulsante "..." per selezionare un file di configurazione JSON esterno. * **g\_reconvert Log File (/l):** Etichetta che mostra il percorso del file di log che verrà generato da `g_reconvert.exe`. Questo percorso viene determinato automaticamente in base al file di input e alla cartella di output selezionata. * **Max Batches (/m):** Campo di testo per specificare il numero massimo di batch da elaborare. * **PRI Number (/r):** Campo di testo per specificare un numero PRI. * **RBIN Number (/c):** Campo di testo per specificare un numero RBIN. * **Video Options:** Contiene parametri relativi all'elaborazione video. * **Output to Rec Results (/vout):** Invia l'output video ai risultati di registrazione. * **Show Video (/vshow):** Visualizza il video durante l'elaborazione (default: Selezionato). * **Save Video (/vsave):** Salva il video elaborato (default: Selezionato). * **Fix Frame Rate (/vframe):** Applica una correzione al frame rate del video. * **Add AVI Subtitles (/vst):** Aggiunge sottotitoli ai file AVI. * **GPS: Save Track (/gps):** Salva la traccia GPS (default: Selezionato). * **HR: Fix Debug Data (/fixhr):** Applica una correzione ai dati di debug della frequenza cardiaca. * **SAR: Save Only SAR (/sar):** Salva solo i dati SAR. * **Execution Control (// flags):** Contiene flag che influenzano il comportamento di esecuzione e la verbosità. * **Verbose Output (//v):** Aumenta il livello di dettaglio dell'output. * **Quiet Mode (//q):** Riduce l'output al minimo. Nota: "Verbose Output" e "Quiet Mode" sono mutuamente esclusivi. * **Debug Messages (//d):** Abilita i messaggi di debug nell'output. * **Silently Overwrite Output (//o):** Sovrascrive i file di output esistenti senza chiedere conferma (default: Selezionato). * **Mask Warnings (//w):** Nasconde i messaggi di avviso nell'output. * **Mask Errors (//e):** Nasconde i messaggi di errore nell'output. **7. Esecuzione della Conversione** Una volta configurati i parametri desiderati: 1. Assicurati che il percorso di `g_reconvert.exe` sia impostato correttamente (mostrato in alto). Se non lo è, utilizza "File -> Set g\_reconvert.exe Path". 2. Seleziona il **Source Binary File (.rec)** e l'**Output Directory**. 3. Fai clic sul pulsante **"Run g\_reconvert.exe"**. L'area di **Console Output** mostrerà la riga di comando che viene eseguita e l'output in tempo reale del processo `g_reconvert.exe`. La **Status Bar** indicherà che il processo è in esecuzione. Al termine, la Status Bar si aggiornerà e il pulsante "Run" verrà riabilitato. **8. Gestione Profili** La gestione dei profili ti permette di salvare e riutilizzare rapidamente le configurazioni dei parametri: * **Salvare un Profilo:** Configura i parametri come desiderato e seleziona "File -> Save Profile". Scegli un nome e un percorso per il tuo file di profilo JSON. * **Caricare un Profilo:** Seleziona "File -> Load Profile" e scegli un file di profilo JSON salvato in precedenza. Le impostazioni salvate in quel profilo verranno applicate all'interfaccia. * **Salvare come Profilo Default:** Dopo aver impostato le opzioni che usi più frequentemente (incluso il percorso di `g_reconvert.exe`), seleziona "File -> Save as Default Profile". Queste impostazioni verranno caricate automaticamente ogni volta che avvierai l'applicazione. **9. Funzionamento Interno del Tool** Il tool GUI wrapper funziona in questo modo: * **Thread Principale (GUI):** Gestisce l'interfaccia utente, i widget e la reattività. È responsabile dell'elaborazione degli eventi (clic sui pulsanti, selezione file, ecc.). * **Thread di Lavoro (Esecuzione Processo):** Quando fai clic su "Run", viene creato un thread separato. Questo thread è responsabile della costruzione della riga di comando per `g_reconvert.exe` basata sullo stato della GUI e dell'avvio del subprocess tramite `subprocess.Popen`. * **Coda (Queue):** Un oggetto `queue.Queue` funge da canale di comunicazione sicuro tra il thread di lavoro e il thread principale. Il thread di lavoro legge l'output dallo stdout del subprocess (linea per linea) e mette ogni linea (insieme a un'indicazione del tipo di messaggio, se determinabile) nella coda. Quando il subprocess termina, il thread di lavoro mette un segnale speciale (`None`) nella coda. * **Polling (Thread Principale):** Il thread principale utilizza il metodo `after` di Tkinter per controllare periodicamente (ogni 100 millisecondi nell'implementazione corrente) se ci sono nuovi messaggi nella coda. Se trova messaggi, li estrae dalla coda e aggiorna l'area di **Console Output** nella GUI. Quando trova il segnale di fine processo (`None`), smette di fare il polling e riabilita il pulsante "Run". Questo approccio multi-threading impedisce che il thread principale si blocchi mentre `g_reconvert.exe` è in esecuzione, mantenendo la GUI reattiva. **10. Informazioni sull'Eseguibile `g_reconvert.exe`** Questo tool è un wrapper per l'eseguibile a riga di comando `g_reconvert.exe`. Il comportamento esatto di `g_reconvert.exe` e il significato preciso di ciascun flag dipendono dalla sua implementazione. Il tool GUI si basa sulla riga di comando mostrata nel file batch fornito come esempio. In generale, `g_reconvert.exe` sembra essere progettato per: * Convertire file binari (con estensione `.rec` in questo caso) in un formato di output (`.out`). * Supportare la concatenazione di più file di input consecutivi (tramite `/n`). * Offrire varie opzioni di elaborazione, estrazione dati (SW, DSP), gestione errori (`/ss`), controllo esecuzione (`/dryrun`, `/z`), correzione dati (`/$pbug`, `/d`, `/x`), e configurazioni avanzate (`/j`, `/m`, `/r`, `/c`). * Include funzionalità specifiche per l'elaborazione di dati video e GPS (`/vshow`, `/vsave`, `/gps`, `/vframe`, `/vst`, `/fixhr`, `/sar`). * Fornire opzioni per controllare la verbosità dell'output (`//v`, `//q`, `//d`) e la gestione dei file di output (`//o`). * Scrivere un file di log dettagliato (`/l`). * Potrebbe generare file aggiuntivi o di supporto in una directory base specificata (`//b`). Per i dettagli esatti sul comportamento di `g_reconvert.exe` e sui suoi flag, si consiglia di consultare la documentazione ufficiale o l'help dell'eseguibile stesso (se disponibile eseguendo `g_reconvert.exe /?` o simili). Il tool GUI fornisce un'interfaccia per *impostare* questi flag in modo più user-friendly. **11. Casi d'Uso Appronfonditi** Ecco alcuni esempi di come puoi utilizzare il tool per scenari di conversione comuni: * **Caso d'Uso 1: Conversione Base con Concatenazione** * **Obiettivo:** Convertire un file `.rec` e i 2 successivi, salvando l'output e il log in una cartella specifica. * **Passi:** 1. Assicurati che il percorso di `g_reconvert.exe` sia impostato. 2. Nella scheda "Input/Output Files", seleziona il primo file `.rec` nel campo "Source Binary File". 3. Seleziona una cartella di destinazione per l'output nel campo "Output Directory". 4. Nella scheda "Main Processing Options", assicurati che "Concatenate REC files (/n):" sia impostato su `3` (valore di default). 5. Mantieni selezionati "Post Process History (/p)" (se necessario) e imposta il livello (default 1). 6. Nella scheda "Video Options", mantieni selezionati "Show Video (/vshow)", "Save Video (/vsave)" e "GPS: Save Track (/gps)" come nel batch. 7. Nella scheda "Execution Control", mantieni selezionato "Silently Overwrite Output (//o)". 8. Fai clic su "Run g\_reconvert.exe". * **Risultato:** Il tool costruirà una riga di comando simile a quella del tuo file batch, creerà la cartella di output (se non esiste) ed eseguirà `g_reconvert.exe`. Vedrai l'output in tempo reale e al termine troverai il file `.out`, il file `.log` e altri file generati nella cartella di output selezionata. * **Caso d'Uso 2: Analisi Senza Output** * **Obiettivo:** Eseguire un'analisi rapida di un file `.rec` per verificare la sua struttura o identificare problemi, senza generare file di output. * **Passi:** 1. Assicurati che il percorso di `g_reconvert.exe` sia impostato. 2. Nella scheda "Input/Output Files", seleziona il file `.rec` nel campo "Source Binary File". 3. Lascia vuoto il campo "Output Directory". 4. Nella scheda "Main Processing Options", **seleziona** "Analyze Only (/a)". Questo indicherà al tool e a `g_reconvert.exe` di non richiedere una cartella di output. 5. Fai clic su "Run g\_reconvert.exe". * **Risultato:** `g_reconvert.exe` verrà eseguito con il flag `/a`. L'output nella console mostrerà i risultati dell'analisi. Non verranno generati file di output. * **Caso d'Uso 3: Salvataggio e Caricamento di una Configurazione Specifica** * **Obiettivo:** Salvare una configurazione di parametri non standard per riutilizzarla in futuro. * **Passi:** 1. Imposta tutti i parametri desiderati nelle varie schede (ad esempio, un formato di output specifico, un numero di batch massimo, disabilita il salvataggio video, abilita messaggi di debug). 2. Seleziona "File -> Save Profile". Scegli un nome descrittivo (ad esempio, "Configurazion **Manuale Utente (Italiano - Ripresa)** ...continua dalla sezione 11. * **Caso d'Uso 3: Salvataggio e Caricamento di una Configurazione Specifica** * **Obiettivo:** Salvare una configurazione di parametri non standard per riutilizzarla in futuro. * **Passi:** 1. Imposta tutti i parametri desiderati nelle varie schede (ad esempio, un formato di output specifico, un numero di batch massimo, disabilita il salvataggio video, abilita messaggi di debug). 2. Seleziona "File -> Save Profile". Scegli un nome descrittivo (ad esempio, "Configurazione Debug Video.json") e un percorso dove salvare il file di profilo. 3. Per riutilizzare questa configurazione, avvia il tool e seleziona "File -> Load Profile", quindi scegli il file di profilo salvato. * **Risultato:** La GUI caricherà tutte le impostazioni precedentemente salvate, inclusi il percorso dell'eseguibile, i file e le directory selezionate, e tutti i flag e valori. * **Caso d'Uso 4: Impostare una Configurazione Default per Avvii Futuri** * **Obiettivo:** Fare in modo che il tool si avvii sempre con le tue impostazioni preferite (incluso il percorso di `g_reconvert.exe`). * **Passi:** 1. Imposta il percorso di `g_reconvert.exe` tramite "File -> Set g\_reconvert.exe Path". 2. Configura tutti gli altri parametri desiderati (ad esempio, la tua cartella di output più frequente, i flag di elaborazione standard, il numero di concatenazione tipico). 3. Seleziona "File -> Save as Default Profile". * **Risultato:** Le impostazioni correnti verranno salvate nel file `default_launch_profile.json` (nella stessa directory dello script/eseguibile del tool). Ogni volta che avvierai l'applicazione, queste impostazioni verranno caricate automaticamente. **12. Troubleshooting** * **GUI Bloccata:** Se la GUI si blocca e smette di rispondere, è probabile che `g_reconvert.exe` non sia stato avviato correttamente in un thread separato o che ci sia un problema nella comunicazione tra i thread. Controlla l'area di **Console Output** per eventuali messaggi di errore all'avvio. Riavviare l'applicazione potrebbe risolvere problemi temporanei. * **Errori nell'Output della Console:** L'area di **Console Output** mostrerà eventuali errori o avvisi generati da `g_reconvert.exe`. Presta attenzione ai messaggi in rosso (ERROR) e arancione (WARNING). Controlla anche il file di log generato da `g_reconvert.exe` (il cui percorso è mostrato nella scheda "Advanced Config & Numerics") per informazioni più dettagliate. * **File non Trovati:** Assicurati che i percorsi del file di input (`.rec`) e dell'eseguibile `g_reconvert.exe` siano corretti. Il tool GUI verifica l'esistenza del file di input e dell'eseguibile prima di avviare il processo. * **Problemi con la Cartella di Output:** Se la conversione fallisce a causa di problemi di scrittura, verifica che la cartella di destinazione selezionata esista e che l'utente che esegue l'applicazione abbia i permessi di scrittura in quella cartella. Il tool tenta di creare la cartella se non esiste, ma potrebbero esserci problemi di permessi. * **Problemi con i Profili:** I file di profilo sono in formato JSON. Se un file di profilo è corrotto o modificato manualmente in modo errato, potrebbe non essere caricato correttamente. Se riscontri problemi con un profilo specifico, prova a caricarne uno diverso o a salvare un nuovo profilo. **13. Note Finali** Questo tool è un wrapper e dipende dal corretto funzionamento dell'eseguibile `g_reconvert.exe`. Se riscontri problemi di conversione specifici dei dati o dei flag, è probabile che il problema risieda in `g_reconvert.exe` stesso e potrebbe essere necessario consultare la sua documentazione o il suo sviluppatore. Questo manuale copre le funzionalità del GUI wrapper basato sulla versione attuale del codice e sui flag conosciuti. Aggiornamenti futuri di `g_reconvert.exe` o del wrapper potrebbero introdurre nuove funzionalità o modifiche.