MKVEXTRACT(1) Comandi utente MKVEXTRACT(1) NOME mkvextract - estrai le tracce da Matroska(TM) negli altri file SINOSSI mkvextract {nome-file sorgente} {modalita1} [opzioni] [extraction-spec1] [modalita2] [opzioni] [extraction-spec2] [...] DESCRIZIONE Questo programma estrae parti specifiche da un file Matroska(TM) in altri formati utilizzabili. Il primo argomento e il nome del file sorgente che deve essere un file Matroska(TM). Tutti gli altri argomenti abilitano una certa modalita di estrazione, cambiano le opzioni per la modalita corrente attiva o specificano cosa estrarre in che file. Modalita multiple possono essere richiamate abilitando la possibilita di estrarre cose diverse in un solo comando. La maggior parte delle opzioni possono essere usate solo in certe modalita con poche opzioni applicabili a tutte le modalita. Supportata l'estrazione di tracce, tag, allegati, capitoli, CUE sheets, marcature orarie e cues. Opzioni comuni Le opzioni seguenti sono disponibili in tutte le modalita e sono descritte in questa sezione. -f, --parse-fully Imposta la modalita di analisi in 'totale'. La modalita di base non analizza l'intero file ma usa gli elementi di meta-ricerca per localizzare gli elementi richiesti del file sorgente. Nel 99% dei casi questo basta. Ma per file che non contengono elementi di meta-ricerca o che sono danneggiati e possibile utilizzare questa modalita. Una scansione totale puo impiegare una manciata di minuti mentre una scansione rapida ci mette qualche secondo. --command-line-charset character-set Imposta il set caratteri per convertire le stringhe date dalla riga di comando. Di base e impostato dalla lingua di sistema. --output-charset character-set Imposta il set caratteri per le stringhe convertite date in output. Di base e impostato dalla lingua di sistema. -r, --redirect-output file-name Scrive tutti i messaggi nel file file-name invece che sul terminale. Mentre questo puo essere fatto con la redirezione dell'output ci sono casi che questa opzione puo essere necessaria: quando il terminale reinterpreta l'output prima di scriverlo in un file. Il set caratteri impostato con--output-charset e onorato. --flush-on-close Indica al programma di scaricare tutti i dati memorizzati nella memoria nello storage quando si chiudono i file aperti in scrittura. Questo puo essere usato per prevenire la perdita di dati in caso di interruzioni di corrente o per eludere determinati problemi nel sistema operativo o nei driver. Il rovescio della medaglia e che il multiplexing richiedera piu tempo poiche mkvmerge attendera fino a quando tutti i dati non saranno stati scritti nella memoria prima di uscire. Vedi riferimenti #2469 e #2480 nel tracker bug MKVToolNix per discussioni approfondite su pro e contro. --ui-language code Forza le traduzioni per la lingua code da usare (per esempio: 'it_IT' per le traduzioni in Italiano). Immettendo 'list' come code mostrera la lista delle traduzioni disponibili. --abort-on-warnings Indica al programma di interrompere dopo il primo avviso. Il codice di uscita del programma sara 1. --debug argomento Abilita il debug per una funzionalita. Questa opzione e utile per gli sviluppatori. --engage funzionalita Abilita le funzionalita sperimentali. La lista delle funzionalita disponibili puo essere mostrata col comando mkvextract --engage list. Queste funzionalita non sono previste per l'utilizzo normale del programma. --gui-mode Mostra la GUI (interfaccia grafica). In questa modalita a terminale ci saranno delle righe specifiche su cosa sta succedendo. Questi messaggi seguiranno il formato '#GUI#messaggio'. Il messaggio puo essere seguito da delle coppie chiave/valore come '#GUI#messaggio#chiave1=valore1#chiave2=valore2...'. Ne i messaggi e ne le chiavi saranno mai tradotte e l'output sara sempre in Inglese. -v, --verbose Sii prolisso e mostra tutti gli elementi Matroska(TM) importanti quando vengono letti. -h, --help Mostra l'aiuto ed esci. -V, --version Mostra la versione ed esci. @options-file.json Legge gli argomenti a riga di comando dal file options-file. Per una spiegazione completa sul formato supportato vedere la sezione "File di Opzioni" nel manuale di mkvmerge(1). Modalita di estrazione traccia Sintassi: mkvextract nomefile-sorgente tracce [opzioni] TID1:nomefile-destinazione1 [TID2:nomefile-destinazione2 ...] Le seguenti opzioni sono disponibili per ogni traccia nella modalita di estrazione 'tracks. Devono apparire davanti alla traccia specifica (vedi giu) a cui deve essere applicata. -c character-set Imposta il set di caratteri da convertire nella traccia dei sottotitoli. E valido se l'ID della traccia successiva e un sottotitolo. Di base e UTF-8. --blockadd livello Tieni solo il i BlockAdditions su questo livello. Di base e su tutti i livelli. Questa opzione riguarda solo certi tipi di codec tipo il WAVPACK4. --cuesheet Causa mkvextract(1) di estrarre un CUE sheet dalle informazioni del capitolo e dai dati tag per la seguente traccia in un file il cui nome e il nome della traccia con l'estensione '.cue'. --raw Estrae i dati raw in un file senza dati contenitore. Differentemente dall'opzione --fullraw, questa opzione non causa che i contenuti dell'elementoCodecPrivate vengano scritti nel file. Questa modalita funziona con tutti i CodecID, pure quelli che mkvextract(1) non supporta, ma il risultato potrebbe non essere utilizzabile. --fullraw Estrae i dati raw in un file senza dati contenitore. I contenuti dell'elemento CodecPrivate saranno scritti nel file per primi se la traccia contiene quell'elemento header. Questa modalita funziona con tutti i CodecID, pure quelli che mkvextract(1) non supporta, ma il risultato potrebbe non essere utilizzabile. TID:outname Causa l'estrazione della traccia con ID TID nel file outname se quella traccia esiste file file sorgente. Questa opzione puo essere usata piu volte. Gli ID della traccia sono gli stessi dell'output dato dal risultato mkvmerge(1) --identify. Ogni nome in output deve essere univoco. Le eccezioni sono le tracce RealAudio e RealVideo. Se viene utilizzato lo stesso nome per tracce differenti, quelle tracce verranno salvate nello stesso file. Per esempio: $ mkvextract input.mkv tracks 0:video.h264 2:output-two-vobsub-tracks.idx 3:output-two-vobsub-tracks.idx Modalita di estrazione allegati Sintassi: mkvextract file-sorgente allegati [opzioni] AID1:filediuscita1 [AID2:filediuscita2 ...] AID:filediuscita Provoca l'estrazione dell'allegato con l'ID AID nel file nomefiledestinazione se tale allegato esiste nel file sorgente. Se nomedestinazione viene lasciato vuoto, allora il nome dell'allegato all'interno della sorgente Matroska(TM) al suo posto verra usato il file. Questa opzione puo essere data piu volte. Gli ID degli allegati sono gli stessi di quelli generati dall'opzione --identify di mkvmerge(1). Modalita di estrazione capitoli Sintassi: mkvextract file-sorgente capitoli [opzioni] file-di-uscita.xml -s, --simple Esporta le informazioni del capitolo nel formato semplificato dagli strumenti OGM (CAPITOLO01=..., NOMECAPITOLO01=...). In questa modalita alcune informazioni devono venire scartate. L'output predefinito dei capitoli e in formato XML. --simple-language lingua Se il formato semplificato e abilitato allora mkvextract(1) creera una voce singola per ogni capitolo trovato, anche se un capitolo atom contiene piu di un nome per capitolo. Di base mkvextract(1) usera il primo capitolo trovato per ogni atom a prescindere dalla lingua. Usando questa opzione si da la possibilita all'utente di determinare quali nomi dei capitoli vengono usati se l'atom contiene piu di un nome per capitolo. Il parametro lingua deve essere ISO 639-1 oppure ISO 639-2. I capitoli vengono salvati in un file specifico. Il formato predefinito e XML formato usato da mkvmerge(1). Se nessun capitolo viene trovato, questo file non verra creato. Modalita di estrazione tag Sintassi: mkvextract nomefile-sorgente tags [opzioni] filename-di-output.xml I tag vengono salvati in un file specifico. Il formato predefinito e XML formato usato da mkvmerge(1). Se nessun tag viene trovato, questo file non verra creato. Modalita di estrazione cue sheet Sintassi: mkvextract file-sorgente file-cue[opzioni] file-di-uscita.cue Il file cue verra salvato in un file specifico. Se nessun capitolo o tag vengono trovati nel file, questo file non verra creato. Modalita di estrazione marche temporali Sintassi: mkvextract file-sorgente marcatemporale_v2 [opzioni] TID1:file-destinazione1 [TID2:file-destinazione2 ...] TID:outname Causa l'estrazione delle marche temporali per la traccia con ID TID nel file outname se la traccia esiste nel file sorgente. Questa opzione puo essere impostata piu volte. Gli ID delle tracce sono gli stessi di quelli forniti dal risultato dell'opzione --identify di mkvmerge(1). Esempio: $ mkvextract input.mkv timestamps_v2 1:ts-track1.txt 2:ts-track2.txt Modalita di estrazione cue Sintassi: mkvextract nomefile-sorgente cue [opzioni] TID1:file-destinazione1 [TID2:file-destinazione2 ...] TID:nome-file-destinazione Causa l'estrazione dei metadati cue per la traccia con ID TID nel file outname se la traccia esiste nel file sorgente. Questa opzione puo essere impostata piu volte. Gli ID delle tracce sono gli stessi di quelli forniti dal risultato dell'opzione --identify di mkvmerge(1) e non i numeri contenuti nell'elemento CueTrack. Il formato di output e in formato testo semplice: una linea per elemento CuePoint con coppie chiave=valore. Se un elemento non e presente in un CuePoint (per esempio CueDuration) allora un trattino sara il valore di output. Esempio: timestamp=00:00:13.305000000 duration=- cluster_position=757741 relative_position=11 Le chiavi possibili sono: data/ora Punto cue della marca temporale con precisione al nanosecondo. Il formato e HH:MM:SS.nnnnnnnnn. Questo elemento e sempre impostato. durata Durata del punto cue con precisione al nanosecondo. Il formato e HH:MM:SS.nnnnnnnnn. cluster_position Posizione assoluta in byte all'interno del file Matroska(TM) dove il cluster contenente l'elemento di riferimento inizia. Nota All'interno del file Matroska(TM) il CueClusterPosition e relativo all'offset di inizio del segmento dati. Il valore di output della modalita di estrazione di mkvextract(1), in ogni caso, contiene gia quell'offset ed e un offset assoluto dall'inizio del file. relative_position La posizione relativa in byte all'interno del cluster in cui inizia l'elemento BlockGroup o SimpleBlock. Nota All'interno del file Matroska(TM) il CueRelativePosition e relativo all'offset d'inizio dei dati del cluster. Il valore di output della modalita di estrazione di mkvextract(1), in ogni caso, e relativo all'ID del cluster. La posizione assoluta all'interno del file puo essere calcolata aggiungendo cluster_position e relative_position. Esempio: $ mkvextract input.mkv cues 1:cues-track1.txt 2:cues-track2.txt ESEMPI Estrarre allo stesso tempo entrambi i capitoli e tag nei loro rispettivi formati XML: $ mkvextract film.mkv chapters capitoli-film.xml tags tag-film.xml Estrarre allo stesso tempo un po' di tracce e le loro rispettive marcature temporali: $ mkvextract "Altro film.mkv" tracks 0:video.h265 "1:audio principale.aac" "2:commento del regista.aac" timestamps_v2 "0:marcature temporali video.txt" "1:marcature temporali audio principale.txt" "2:marcature temporali commenti del regista.txt" Estrarre i capitoli nel formato Ogg/OGM e ricodificare una traccia sottotitoli in un'altra codifica caratteri: $ mkvextract "Mio Film.mkv" chapters --simple "Miei Capitoli.txt" tracks -c MS-ANSI "2:Miei Sottotitoli.srt" FILE DI TESTO E CONVERSIONI DELLA CODIFICA CARATTERI Per una comprensione a fondo di come tutti gli strumenti presenti nella suite di MKVToolNix gestiscono la conversione della codifica caratteri, codifica input/output, codifica a riga di comando e console, vedere la sezione con lo stesso nome nel manuale di mkvmerge(1). FORMATI DI USCITA DEI FILE La decisione a proposito del formato di output e basata sul tipo di traccia, non nell'estensione usata dal nome del file. Attualmente le seguenti tracce sono supportate: A_AAC/MPEG2/*, A_AAC/MPEG4/*, A_AAC Tutti i fileAAC saranno scritti in un file AAC con intestazioni ADTS prima di ogni pacchetto. L'intestazione ADTS non conterra il deprecato campo di enfasi. A_AC3, A_EAC3 Questi verranno estratti in file AC-3 grezzi. A_ALAC Le tracce ALAC sono scritte su file CAF. A_DTS Questi verrrano estratti su file grezzi DTS. A_FLAC Le tracce FLAC verranno scritte su file grezzi FLAC. A_MPEG/L2 I flussi MPEG-1 Audio Layer II verranno estratti su file grezzi MP2. A_MPEG/L3 Questi verrrano estratti su file grezzi MP3. A_OPUS Le tracce Opus(TM) verranno scritte su file OggOpus(TM). A_PCM/INT/LIT, A_PCM/INT/BIG I dati grezzi PCM verranno scritti su file WAV. I dati Big-endian verranno convertiti in dati little-endian. A_REAL/* Le tracce RealAudio(TM) sono scritte su file RealMedia(TM). A_TRUEHD, A_MLP Questi saranno estratti su file grezzi TrueHD/MLP. A_TTA1 Le tracce TrueAudio(TM)sono scritte su file TTA. Notare che a causa della limitata precisione della marca temporale del formato Matroska(TM), l'intestazione del file estratto sara differente in due campi: data_lenght (numero totale dei sample nel file) e il CRC. A_VORBIS L'audio Vorbis verra scritto in un file OggVorbis(TM). A_WAVPACK4 Le tracce WavPack(TM) saranno scritte in file WV. S_HDMV/PGS I sottotitoli PGS saranno scritti come file SUP. S_HDMV/TEXTST I sottotitoli TextST saranno scritti in uno speciale formato concepito per mkvmerge(1) e mkvextract(1). S_KATE I flussi Kate(TM) saranno scritti in un contenitore Ogg(TM). S_TEXT/SSA, S_TEXT/ASS, S_SSA, S_ASS I sottotitoli SSA e ASS saranno scritti rispettivamente come file SSA/ASS. S_TEXT/UTF8, S_TEXT/ASCII I sottotitoli in formato test saranno scritti come file SRT. S_VOBSUB I sottotitoli VobSub(TM) saranno scritti come file SUB insieme ai rispettivi file di indice come file IDX. S_TEXT/USF I sottotitoli USF saranno scritti come file USF. S_TEXT/WEBVTT I sottotitoli WebVTT saranno scritti su file WebVTT. V_MPEG1, V_MPEG2 Le tracce video MPEG-1 e MPEG-2 saranno scritti come flussi elementari MPEG. V_MPEG4/ISO/AVC Le tracce video H.264/AVC saranno scritte su flussi elementari H.264 che potranno poi essere processati con, per esempio, MP4Box(TM) dal pacchetto GPAC(TM). V_MPEG4/ISO/HEVC Le tracce video H.265/HEVC saranno scritte su flussi elementari H.265 che potranno poi essere processati con, per esempio, MP4Box(TM) dal pacchetto GPAC(TM). V_MS/VFW/FOURCC Le tracce video con FPS fissi con questo CodecID saranno scritte su file AVI. V_REAL/* Le tracce RealVideo(TM) sono scritte su file RealMedia(TM). V_THEORA I flussi Theora(TM) sono scritti in un contenitore Ogg(TM) V_VP8, V_VP9 Le tracce VP8/VP9 saranno scritte su file IVF. Tag I tag saranno convertiti in formato XML. Questo formato e lo stesso che supporta mkvmerge(1) per la lettura dei tag. Allegati Gli allegati saranno scritti nel formato di output in cui sono. Nessuna conversione verra fatta. Capitoli I capitoli sono convertiti in formato XML. Questo formato e lo stesso che supporta mkvmerge(1) per la lettura dei capitoli. Alternativamente una versione semplificata puo essere in formato OGM. Marche temporali Le marche temporali sono prima ordinate e poi convertite in formato conforme alla marca temporale v2, pronte per essere processate con mkvmerge(1). L'estrazione in altri formati (v1, v3 e v4) non e supportata. CODICI DUSCITA mkvextract(1) esce con uno di tre codici di uscita: o 0 -- Questo valore di uscita riporta che l'estrazione e stata completata correttamente. o 1 -- In questo caso mkvextract(1) ha almeno un avviso, ma l'estrazione e continuata. L'avviso e prefissato con la dicitura 'Avviso:'. A seconda del problema il risultato potrebbe essere ok oppure no. L'utente e incoraggiato a controllare sia gli avvisi che i file. o 2 -- Questo valore di uscita e utilizzato dopo che si e verificato un errore. mkvextract(1) si interrompe dopo aver segnalato il messaggio di errore. I messaggi d'errore spaziano da un argomento della riga di comando errato a errori di lettura/scrittura a file corrotti. VARIABILI DAMBIENTE mkvextract(1) usa delle variabili predefinite che determinano la lingua di sistema (per esempio: LANG e la famiglia LC_*). Variabili addizionali sono: MKVEXTRACT_DEBUG, MKVTOOLNIX_DEBUG e la sua forma contratta MTX_DEBUG Il contenuto e elaborato come se fosse stata utilizzata l'opzione --debug. MKVEXTRACT_ENGAGE, MKVTOOLNIX_ENGAGE e la sua forma contratta MTX_ENGAGE Il contenuto e elaborato come se fosse stata utilizzata l'opzione --engage. VEDI ANCHE mkvmerge(1), mkvinfo(1), mkvpropedit(1), mkvtoolnix-gui(1) WWW La versioen aggironata e sempre disponibile nel sito web MKVToolNix[1]. AUTORE Moritz Bunkus Sviluppatore NOTE 1. sito web MKVToolNix https://mkvtoolnix.download/ MKVToolNix 83.0 2024-03-10 MKVEXTRACT(1)