MKVEXTRACT(1)

NAZWA
mkvextract - wyodrębnia ścieżki z plików Matroska(TM) do innych plików

SZABLON LINII KOMEND

mkvextract {source-filename} {mode1} [options] [extraction-spec1] [mode2] [options] [extraction-spec2] [...]

OPIS

Ten program wyodrębnia określone fragmenty z pliku Matroska(TM) do innych użytecznych formatów. Pierwszy argument to nazwa pliku źródłowego, który musi być plikiem Matroska(TM).

Wszystkie pozostałe argumenty albo przełączają na określony tryb ekstrakcji, zmieniają opcje dla aktualnie aktywnego trybu, albo określają, co ma zostać wyodrębnione do którego pliku. W jednym wywołaniu programu mkvextract można użyć wielu trybów, co pozwala na wyodrębnienie wielu elementów w jednym przebiegu. Większość opcji można użyć tylko w określonych trybach, a kilka opcji ma zastosowanie do wszystkich trybów.

Obecnie obsługiwane jest wyodrębnianie ścieżek, tagów, załączników, rozdziałów, arkuszy CUE, znaczników czasu i podpowiedzi.

  Opcje podstawowe

Następujące opcje są dostępne we wszystkich trybach i zostały opisane tylko raz w tej sekcji.

-f, --parse-fully
    Ustawia tryb analizy na „pełny”. Domyślny tryb nie analizuje całego pliku, ale wykorzystuje elementy meta-seek do lokalizowania wymaganych elementów pliku źródłowego. W 99% przypadków to wystarcza. Jednak w przypadku plików, które nie zawierają elementów meta-seek lub są uszkodzone, użytkownik może być zmuszony do użycia tego trybu. Pełne skanowanie pliku może zająć kilka minut, podczas gdy szybkie skanowanie zajmuje tylko kilka sekund.

--command-line-charset zestaw-znaków
    Ustawia zestaw znaków, z którego konwertowane są ciągi znaków podane w wierszu poleceń. Domyślnie jest to zestaw znaków określony przez bieżącą lokalizację systemu.

--output-charset zestaw-znaków
    Ustawia zestaw znaków, do którego konwertowane są ciągi znaków przeznaczone do wyprowadzenia. Domyślnie jest to zestaw znaków określony przez bieżącą lokalizację systemu.

-r, --redirect-output nazwa-pliku
    Zapisuje wszystkie powiadomienia do pliku nazwa-pliku zamiast do konsoli. Podczas gdy może być to robione łatwo z przekierowaniem wyjścia, są przypadki, gdy ta opcja właśnie jest potrzebna: gdy terminal ponownie interpretuje plik wyjściowy przed zapisaniem do pliku. Uznawany będzie zestaw znaków ustawiony z opcją --output-charset.

--no-bom
    Zazwyczaj pliki tekstowe utworzone i zakodowane w jednym z wariantów UTF rozpoczynają się od znacznika kolejności bajtów (BOM). Użycie tej opcji wyłącza zapisywanie tego znacznika kolejności bajtów.

--flush-on-close
    Nakazuje programowi przelanie wszystkich danych z pamięci podręcznej do pamięci masowej podczas zamykania plików otwartych do zapisu. Można tego użyć, aby zapobiec utracie danych podczas przerw w dostawie prądu lub obejść pewne problemy z systemem operacyjnym lub sterownikami. Wadą jest to, że multipleksowanie będzie trwało dłużej, ponieważ program mkvmerge będzie czekał, aż wszystkie dane zostaną zapisane w pamięci masowej, zanim zakończy działanie. Szczegółowe omówienie zalet i wad można znaleźć w zgłoszeniach nr 2469 i 2480 w systemie śledzenia błędów MKVToolNix.

--ui-language kod
    Wymusza użycie tłumaczeń dla kodu parameter języka (np. "de_DE” dla tłumaczeń na język niemiecki). Wprowadzenie "list” jako kodu parameter spowoduje, że program wyświetli listę dostępnych tłumaczeń.

--abort-on-warnings
    Nakazuje programowi przerwanie po wyemitowaniu pierwszego ostrzeżenia. Kodem wyjścia programu będzie 1.

--debug temat
    Włącz debugowanie dla konkretnej funkcji. Ta opcja jest użyteczna tylko dla deweloperów.

--engage funkcja
    Włącz funkcje eksperymentalne. Listę dostępnych funkcji można uzyskać za pomocą komendy mkvextract --engage list. Te funkcje nie są przeznaczone do użytku w normalnych sytuacjach.

--gui-mode
    Włącza tryb GUI. W tym trybie mogą być generowane specjalnie sformatowane linie, które informują interfejs GUI o aktualnym stanie rzeczy. Komunikaty te mają formatt '#GUI#message'. Po komunikacie mogą następować pary klucz/wartość, np '#GUI#message#key1=value1#key2=value2...'. Ani komunikaty, ani klucze nie są tłumaczone i zawsze są wyświetlane w języku angielskim.

-v, --verbose
    Bądź szczegółowy i pokazuj wszystkie ważne elementy Matroska(TM) w miarę ich czytania.

-h, --pomoc
    Pokaż informację o sposobie użycia opcji i wyjdź.

-V, --wersja
    Pokaż informację o wersji i wyjdź.

@options-file.json
    Odczytuje dodatkowe argumenty wiersza poleceń z pliku options-file. Pełny opis obsługiwanych formatów takich plików znajduje się w sekcji „Pliki opcji” na stronie man programu &mkvmerge;.

  Tryb wyodrębniania ścieżek

Składnia: mkvextract nazwa_pliku_źródłowego utwory [opcje] TID1:nazwa_pliku_docelowego1 [TID2:nazwa_pliku_docelowego2...]

W trybie wyodrębniania„tracks” dla każdego utworu dostępne są następujące opcje wiersza poleceń. Muszą one znajdować się przed specyfikacją utworu (patrz poniżej), do którego mają zostać zastosowane.

-c zestaw-znaków
    Ustawia zestaw znaków, na który ma zostać przekonwertowana następna ścieżka napisów tekstowych. Opcja ta ma znaczenie tylko wtedy, gdy identyfikator następnej ścieżki odnosi się do ścieżki napisów tekstowych. Domyślnym ustawieniem jest UTF-8.

--blockadd poziom
    Zachowaj tylko dodatki blokowe do tego poziomu. Domyślnie zachowywane są wszystkie poziomy. Ta opcja ma wpływ tylko na niektóre rodzaje kodeków, takie jak WAVPACK4.

--cuesheet
    Powoduje, że funkcja `mkvextract` wyodrębnia arkusz CUE na podstawie informacji o rozdziale oraz danych tagów dla danego utworu do pliku, którego nazwa składa się z nazwy wyjściowej utworu z dodanym rozszerzeniem „.cue”.

--raw
    Wyodrębnia surowe dane do pliku bez żadnych danych otaczających. W przeciwieństwie do flag --fullraw, ta flaga nie powoduje zapisania zawartości elementu CodecPrivate do pliku. Tryb ten działa ze wszystkimi identyfikatorami CodecID, nawet tymi, których &mkvextract; w innym przypadku nie obsługuje, ale powstałe pliki mogą okazać się bezużyteczne.

--fullraw
    Wyodrębnia surowe dane do pliku bez żadnych danych kontenerowych. Jeśli ścieżka zawiera element nagłówkowy CodecPrivate, jego zawartość zostanie zapisana w pliku jako pierwsza. Tryb ten działa ze wszystkimi identyfikatorami CodecID, nawet tymi, których funkcja &mkvextract; w innym przypadku nie obsługuje, jednak powstałe pliki mogą okazać się bezużyteczne.

TID:nazwa
    Powoduje wyodrębnienie ścieżki o identyfikatorze TID do pliku o nazwie outname, jeśli taka ścieżka występuje w pliku źródłowym. Opcję tę można podać wielokrotnie. Identyfikatory ścieżek są takie same jak te wyświetlane przez opcję --identify programu &mkvmerge;.

    Każda nazwa pliku wyjściowego powinna być użyta tylko raz. Wyjątkiem są ścieżki RealAudio i RealVideo. Jeśli użyjesz tej samej nazwy dla różnych ścieżek, zostaną one zapisane w tym samym pliku. Przykład:

        $ mkvextract input.mkv tracks 0:video.h264 2:output-two-vobsub-tracks.idx 3:output-two-vobsub-tracks.idx

  Tryb wyodrębniania załączników

Składnia: mkvextract nazwa_pliku_źródłowego attachments [opcje] AID1:nazwa_pliku_wynikowego1 [AID2:nazwa_pliku_wynikowego2...]

AID:nazwa
    Powoduje wyodrębnienie załącznika o identyfikatorze AID do pliku o nazwie outname, o ile taki załącznik występuje w pliku źródłowym. Jeśli nazwa outname zostanie pominięta, używana jest zamiast tego nazwa załącznika zawarta w źródłowym pliku Matroska. Opcję tę można podać wielokrotnie. Identyfikatory załączników są takie same jak te wyświetlane przez opcję --identify programu &mkvmerge;.

  Tryb wyodrębniania rozdziałów

Składnia: <polecenie>mkvextract <parametr>nazwa_pliku_źródłowego</parametr> rozdziały <opcjonalnie><parametr>opcje</parametr></opcjonalnie> <parametr>nazwa_pliku_wynikowego.xml</parametr></polecenie>

-s, --simple
    Eksportuje informacje o rozdziałach w prostym formacie używanym w narzędziach OGM (CHAPTER01=..., CHAPTER01NAME=...). W tym trybie niektóre informacje muszą zostać pominięte. Domyślnie rozdziały są wyświetlane w formacie &xml;.

--simple-language język
    Jeśli włączono tryb uproszczony, polecenie mkvextract(1) wyświetli tylko jeden wpis dla każdego napotkanego atomu rozdziału, nawet jeśli atom ten zawiera więcej niż jedną nazwę rozdziału. Domyślnie polecenie mkvextract(1) wykorzystuje pierwszą znalezioną nazwę rozdziału dla każdego atomu, niezależnie od języka.

    Użycie tej opcji pozwala użytkownikowi określić, które nazwy rozdziałów mają zostać wyświetlone, jeśli elementy zawierają więcej niż jedną nazwę rozdziału. Parametr języka musi być kodem zgodnym z normą ISO 639-1 lub ISO 639-2.

Rozdziały są zapisywane do wskazanego pliku wyjściowego. Domyślnie stosowany jest format XML, rozpoznawany przez program mkvmerge(1). Jeśli w pliku nie znaleziono żadnych rozdziałów, plik wyjściowy nie zostanie utworzony.

  Tryb wyodrębniania tagów

Składnia: mkvextract nazwa_pliku_źródłowego tags [opcje] nazwa_pliku_wynikowego.xml

-T, --no-track-tags
    Eksportuje tylko tagi, które nie są powiązane z konkretnym utworem.

Tagi są zapisywane w określonym pliku wyjściowym w formacie XML, rozpoznawanym przez program mkvmerge(1). Jeśli w pliku nie znaleziono żadnych tagów, plik wyjściowy nie zostanie utworzony.

  Tryb wyodrębniania arkuszy cue

Składnia: mkvextract nazwa_pliku_źródłowego [opcje_arkusza_cue] nazwa_pliku_wyjściowego.cue

Lista utworów zostanie zapisana w określonym pliku wyjściowym. Jeśli w pliku nie znaleziono żadnych rozdziałów ani tagów, plik wyjściowy nie zostanie utworzony.

  Tryb wyodrębniania kodów czasowych

Składnia: mkvextract nazwa_pliku_źródłowego timestamps_v2 [opcje] TID1:nazwa_pliku_docelowego1 [TID2:nazwa_pliku_docelowego2...]

TID:nazwa
    Powoduje wyodrębnienie znaczników czasu dla ścieżki o identyfikatorze TID do pliku o nazwie outname, o ile taka ścieżka występuje w pliku źródłowym. Opcję tę można podać wielokrotnie. Identyfikatory ścieżek są takie same jak te wyświetlane przez opcję --identify programu &mkvmerge;.

    Przykład:

        $ mkvextract timestamps_v2 wejściowy.mkv 1:kczas-ścieżki1.txt 2:kczas-ścieżki2.txt

  Tryb wyodrębniania indeksów cue

Składnia: mkvextract nazwa_pliku_źródłowego cues [opcje] TID1:nazwa_pliku_docelowego1 [TID2:nazwa_pliku_docelowego2...]

TID:docelowa-nazwapliku
    Powoduje wyodrębnienie metadanych utworu o identyfikatorze TID do pliku o nazwie outname, o ile taki utwór występuje w pliku źródłowym. Opcję tę można podać wielokrotnie. Identyfikatory utworów są takie same jak te wyświetlane przez opcję --identify programu &mkvmerge;, a nie numery zawarte w elemencie CueTrack.

Wynik ma postać prostego pliku tekstowego: jeden wiersz na każdy element CuePoint, zawierający pary klucz=wartość. Jeśli w elemencie CuePoint brakuje opcjonalnego elementu (np. CueDuration), jako wartość zostanie wyświetlony myślnik.

Przykład:

    timestamp=00:00:13.305000000 duration=- cluster_position=757741 relative_position=11

Możliwe klucze to:

timestamp
    Sygnatura czasowa punktu kontrolnego z dokładnością do nanosekund. Format to HH:MM:SS.nnnnnnnnn. Ten element jest zawsze ustawiony.

duration
    Czas trwania punktu kontrolnego z dokładnością do nanosekund. Format to HH:MM:SS.nnnnnnnnn.

pozycja_klastra
    The absolute position in bytes inside the Matroska(TM) file where the cluster containing the referenced element starts.

        Uwaga
        Inside the Matroska(TM) file the CueClusterPosition is relative to the segment's data start offset. The value output by mkvextract(1)'s cue extraction mode, however, contains that offset already and is an absolute offset from the beginning of the file.

pozycja_względna
    The relative position in bytes inside the cluster where the BlockGroup or SimpleBlock element the cue point refers to starts.

        Uwaga
        Inside the Matroska(TM) file the CueRelativePosition is relative to the cluster's data start offset. The value output by mkvextract(1)'s cue extraction mode, however, is relative to the cluster's ID. The absolute position inside the file can be calculated by adding cluster_position and relative_position.

Przykład:

    $ mkvextract cues wejściowy.mkv 1:cues-track1.txt 2:cues-track2.txt

PRZYKŁADY

Jednoczesne wyodrębnianie rozdziałów i tagów w odpowiednich formatach XML

    $ mkvextract movie.mkv rozdziały movie-chapters.xml tagi movie-tags.xml

Jednoczesne wyodrębnianie kilku utworów i ich znaczników czasu:

    $ mkvextract "Another Movie.mkv" tracks 0:video.h265 "1:main audio.aac" "2:director's comments.aac" timestamps_v2 "0:timestamps video.txt" "1:timestamps main audio.txt" "2:timestamps director's comments.txt"

Extracting chapters in the Ogg/OGM format and re-encoding a text subtitle track to another character set:

    $ mkvextract "My Movie.mkv" chapters --simple "My Chapters.txt" tracks -c MS-ANSI "2:My Subtitles.srt"

PLIKI TEKSTOWE I KONWERSJE ZESTAWÓW ZNAKÓW

Szczegółowe omówienie sposobu, w jaki wszystkie narzędzia w pakiecie MKVToolNix obsługują konwersję zestawu znaków, kodowanie wejściowe/wyjściowe, kodowanie linii komend i kodowanie konsoli, można znaleźć w sekcji o identycznej nazwie na mkvmerge(1) stronie podręcznika.

WYJŚCIOWE FORMATY PLIKÓW

The decision about the output format is based on the track type, not on the extension used for the output file name. The following track types are supported at the moment:

A_AAC/MPEG2/*, A_AAC/MPEG4/*, A_AAC
    Wszystkie pliki AAC będą zapisywane do plików AAC z nagłówkami ADTS przed każdym pakietem. Nagłówki ADTS nie będą zawierać niewspieranego pola emfazy.

A_AC3, A_EAC3
    Zostaną one wyodrębnione do plików w formacie surowym AC-3.

A_ALAC
    Ścieżki ALAC są zapisywane do plików CAF.

A_DTS
    Zostaną one wyodrębnione do plików w formacie surowym DTS.

A_FLAC
    Ścieżki FLAC są zapisywane do surowych plików FLAC.

A_MPEG/L2
    Ścieżki MPEG-1 Audio Layer II będą wyodrębniane do surowych plików MP2.

A_MPEG/L3
    Zostaną one wyodrębnione do plików MP3 w formacie surowym.

A_OPUS
    Ścieżki Opus(TM) są zapisywane do plików OggOpus(TM).

A_PCM/INT/LIT, A_PCM/INT/BIG
    Surowe dane PCM zostaną zapisane w pliku WAV. Dane liczbowe w formacie big-endian zostaną w trakcie tego procesu przekonwertowane na format little-endian.

A_REAL/*
    Ścieżki RealAudio(TM) są zapisywane do plików RealMedia(TM).

A_TRUEHD, A_MLP
    Zostaną one wyodrębnione do plików w formacie surowym TrueHD/MLP.

A_TTA1
    Ścieżki TrueAudio(TM) są zapisywane do plików TTA. Zauważ, że w wyniku ograniczonej precyzji formatu Matroska(TM), wyodrębniane nagłówki plików będą mieć inne dwa pola: data_length (łączna liczba sampli w pliku) i CRC.

A_VORBIS
    Dźwięk Vorbis będzie zapisywany do pliku OggVorbis(TM).

A_WAVPACK4
    Ścieżki WavPack(TM) są zapisywane do plików WV.

S_HDMV/PGS
    Napisy PGS będą zapisywane do plików SUP.

S_HDMV/TEXTST
    TextST subtitles will be written as a special file format invented for mkvmerge(1) and mkvextract(1).

S_KATE
    Ścieżki Kate(TM) będą zapisywane do kontenera Ogg(TM).

S_TEXT/SSA, S_TEXT/ASS, S_SSA, S_ASS
    Napisy tekstowe SSA i ASS będą zapisywane do plików odpowiednio SSA/ASS.

S_TEXT/UTF8, S_TEXT/ASCII
    Proste napisy tekstowe będą zapisywane do plików SRT.

S_VOBSUB
    Napisy VobSub(TM) będą zapisywane do plików SUB razem z odpowiednimi plikami indeksu IDX.

S_TEXT/USF
    Napisy tekstowe USF będą zapisywane do plików USF.

S_TEXT/WEBVTT
    Napisy tekstowe w formacie WebVTT zostaną zapisane w plikach WebVTT.

V_MPEG1, V_MPEG2
    Ścieżki wideo w formatach MPEG-1 i MPEG-2 zostaną zapisane jako strumienie elementarne MPEG.

V_MPEG4/ISO/AVC
    Ścieżki obrazu H.264 / AVC są zapisywane do ścieżek surowych (dane podstawowe) H.264, które mogą być później przetwarzane np. przez MP4Box(TM) z pakietu GPAC(TM).

V_MPEG4/ISO/HEVC
    Ścieżki obrazu H.265 / HEVC są zapisywane do ścieżek surowych (dane podstawowe) H.265, które mogą być później przetwarzane np. przez MP4Box(TM) z pakietu GPAC(TM).

V_MS/VFW/FOURCC
    Ścieżki obrazu ze stałym FPS mające taki CodecID są zapisywane do plików AVI.

V_REAL/*
    Ścieżki RealVideo(TM) są zapisywane do plików RealMedia(TM).

V_THEORA
    Ścieżki Theora(TM) będą zapisywane do kontenera Ogg(TM)

V_VP8, V_VP9
    Ścieżki VP8 / VP9 są zapisywane do plików IVF.

Tagi
    Tagi są konwertowane do formatu XML. Jest to taki sam format, jaki mkvmerge(1) obsługuje w plikach wejściowych.

Załączniki
    Załączniki są zapisywane do pliku wyjściowego takie jakie są. Żadna konwersja nie jest wykonywana.

Rozdziały
    Chapters are converted to a XML format. This format is the same that mkvmerge(1) supports for reading chapters. Alternatively a stripped-down version can be output in the simple OGM style format.

Kody czasowe
    Timestamps are first sorted and then output as a timestamp v2 format compliant file ready to be fed to mkvmerge(1). The extraction to other formats (v1, v3 and v4) is not supported.

KODY ZAKOŃCZENIA

mkvextract(1) kończy działanie z jednym z trzech kodów wyjścia:

    • 0 -- Ten kod zakończenia oznacza, że wyodrębnianie zostało zakończone powodzeniem.

    • 1 -- In this case mkvextract(1) has output at least one warning, but extraction did continue. A warning is prefixed with the text 'Warning:'. Depending on the issues involved the resulting files might be ok or not. The user is urged to check both the warning and the resulting files.

    • 2 -- This exit code is used after an error occurred. mkvextract(1) aborts right after outputting the error message. Error messages range from wrong command line arguments over read/write errors to broken files.

ZMIENNE ŚRODOWISKOWE

mkvextract(1) uses the default variables that determine the system's locale (e.g. LANG and the LC_* family). Additional variables:

MKVEXTRACT_DEBUG, MKVTOOLNIX_DEBUG i jego skrócona forma MTX_DEBUG
    The content is treated as if it had been passed via the --debug option.

MKVEXTRACT_ENGAGE, MKVTOOLNIX_ENGAGE i jego skrócona forma MTX_ENGAGE
    The content is treated as if it had been passed via the --engage option.

ZOBACZ TAKŻE

mkvmerge(1), mkvinfo(1), mkvpropedit(1), mkvtoolnix-gui(1)

STRONA WWW

Najnowsza wersja jest zawsze dostępna pod adresem domowym MKVToolNix[1].

AUTOR

Moritz Bunkus <moritz@bunkus.org>
    Autor

PRZYPISY

1.  adresem domowym MKVToolNix
    https://mkvtoolnix.download/