Konwertuj midi do txt

Konwertuj MIDI na TXT

Konwertuj zdarzenia MIDI do przeszukiwalnego tekstu zwykłego za pomocą MIDIcsv lub niestandardowego skryptu Python.

Konwertuj pliki MIDI online

Nie mamy jeszcze dedykowanego konwertera online dla MIDI na TXT, ale pliki MIDI możesz przekonwertować online na te i inne formaty:

Jak konwertować midi do txt

Program DAW, skrypt lub system archiwizacji może wymagać czytelnej listy zdarzeń zamiast binarnego Standard MIDI File. Konwersja pliku do TXT sprawia, że nuty, informacje o czasie, kanały, teksty piosenek i zdarzenia kontrolerów można przeszukiwać i edytować jako tekst.

Czym jest format MIDI

Plik MIDI to binarny Standard MIDI File (SMF) zawierający instrukcje wykonania, a nie nagrany dźwięk. Zdarzenia mogą obejmować komunikaty note-on i note-off, zmiany tempa, zmiany instrumentów, wartości kontrolerów, pitch bend, nazwy ścieżek, teksty piosenek oraz dane dotyczące czasu.

Sekwencery, programy do zapisu nutowego, kompozytorzy, producenci i sprzętowe systemy muzyczne używają MIDI. Typowe rozszerzenia to .mid i .midi. Plik może zawierać wiele ścieżek, kanałów, jednoczesne nuty, zmiany tempa oraz taktowanie oparte na uderzeniach lub SMPTE. Syntezator, sampler, instrument wirtualny lub urządzenie sprzętowe generuje później słyszalny dźwięk; plik MIDI zwykle nie zawiera audio.

Czym jest format TXT

.txt to nieustrukturyzowany kontener zwykłego tekstu. Eksport MIDI może używać go do przechowywania rozdzielanych przecinkami wierszy zdarzeń, jednego zdarzenia w każdym wierszu, nazw nut, tekstów piosenek, metadanych lub formatu zdefiniowanego przez aplikację odbierającą.

Zwykły tekst można przeszukiwać, łatwo przenosić i przeglądać w edytorach oraz narzędziach wiersza poleceń, a także wykorzystywać w systemach kontroli wersji. TXT sam w sobie nie zachowuje sposobu odtwarzania. Ponowna konwersja do MIDI wymaga parsera rozumiejącego dokładny układ tekstu; eksport zawierający wyłącznie nazwy nut lub teksty piosenek traci informacje o czasie, velocity, instrumentach i danych kontrolerów.

Jak przekonwertować MIDI do TXT

Użyj MIDIcsv, aby uzyskać kompletną listę zdarzeń

MIDIcsv to odpowiednie lokalne narzędzie, gdy TXT oznacza techniczny zrzut strumienia zdarzeń MIDI. Konwertuje ono plik MIDI do tekstu rozdzielanego przecinkami, zawierającego numery ścieżek, czasy zdarzeń w tickach MIDI, typy zdarzeń, kanały i dane zdarzeń. Pobierz odpowiednią wersję z dystrybucji projektu MIDIcsv, a następnie otwórz terminal w folderze zawierającym plik wykonywalny.

  1. Umieść plik źródłowy w dostępnym folderze, na przykład jako song.mid.
  2. Uruchom polecenie midicsv song.mid song.csv.
  3. Otwórz wynikowy plik w Notepad++, Visual Studio Code lub innym edytorze tekstu.
  4. Jeśli program odbierający wymaga rozszerzenia TXT, zmień nazwę wyjściowego pliku na song.txt dopiero po konwersji. Zmiana nazwy modyfikuje nazwę pliku, a nie znajdujący się w nim format rozdzielany przecinkami.

Typowe wiersze zawierają zdarzenia takie jak Note_on_c, Note_off_c, Tempo, Program_c i Control_c. Pole czasu jest wyrażone w tickach MIDI względem poprzedniego zdarzenia, więc nie jest automatycznie znacznikiem czasu w sekundach.

Wygeneruj niestandardowy układ tekstu za pomocą Python

Użyj utrzymywanego pakietu mido, gdy miejsce docelowe wymaga wybranych ścieżek, nazw nut, tekstów piosenek lub określonego układu z jednym zdarzeniem w każdym wierszu.

python -m pip install mido
python midi_dump.py song.mid song.txt

Zapisz poniższy kod jako midi_dump.py:

import sys
import mido

source, destination = sys.argv[1], sys.argv[2]
mid = mido.MidiFile(source)
with open(destination, "w", encoding="utf-8") as out:
    out.write(f"type={mid.type} ticks_per_beat={mid.ticks_per_beat}\n")
    for track_number, track in enumerate(mid.tracks):
        absolute_tick = 0
        out.write(f"track={track_number}\n")
        for message in track:
            absolute_tick += message.time
            out.write(f"{absolute_tick}\t{message}\n")

Ten skrypt zapisuje każdą ścieżkę, skumulowaną pozycję w tickach oraz zdekodowany komunikat w tekście UTF-8. Nie oblicza upływających sekund; wymaga to przetworzenia zdarzeń tempa oraz podziału czasowego pliku.

Użyj programu do zapisu nutowego, aby uzyskać czytelne dane muzyczne

Gdy miejsce docelowe wymaga czytelnych nut, tekstów piosenek lub zapisu nutowego zamiast surowych zdarzeń, zaimportuj plik do MuseScore lub innego edytora zapisu nutowego za pomocą File → Open, a następnie skopiuj wymagane informacje do edytora tekstu. Nie jest to dokładny zrzut zdarzeń: ustawienia importu mogą kwantyzować rytmy, scalać głosy, pomijać nieobsługiwane dane kontrolerów lub interpretować wykonanie na nowo jako zapis nutowy.

Ograniczenia zgodności i jakości

Nie istnieje oficjalna, uniwersalna definicja „MIDI w formacie TXT”. Sprawdź, czy system odbierający oczekuje wierszy w stylu MIDIcsv, CSV z określonym schematem, nazw nut, tekstów piosenek czy własnej składni. Prawidłowo przekonwertowany plik tekstowy nadal może zostać odrzucony, jeśli jego układ jest nieprawidłowy.

Eksport tekstowy nie może zachować brzmienia konkretnego syntezatora, samplera, plug-inu, łańcucha efektów ani urządzenia sprzętowego. Nawet szczegółowy zrzut zdarzeń nie odtworzy audio, jeśli nie są dostępne te same instrumenty i ustawienia odtwarzania. Użyj UTF-8, gdy teksty piosenek, nazwy ścieżek lub metadane zawierają znaki inne niż ASCII.

Ogólne konwertery online często obsługują konwersję MIDI do audio lub zapisu nutowego, ale nie dokumentują ustrukturyzowanego wyjścia TXT zawierającego zdarzenia MIDI. W przypadku poufnych plików i przewidywalnych rezultatów użyj MIDIcsv lub lokalnego skryptu Python. Jeśli renomowana usługa online wyraźnie wymienia obsługę MIDI-do-TXT lub MIDI-do-CSV, najpierw przetestuj jej schemat na kopii; nie zakładaj, że plik noszący jedynie nazwę .txt zawiera użyteczne dane zdarzeń MIDI.

Porównanie formatu MIDI z TXT

Jak formaty MIDI i TXT wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.

Porównanie formatów plików MIDI i TXT
Cecha .MIDI MIDI Standard File .TXT Plain Text File
Otwarty standard Tak Tak
Kompresja Bez kompresji Bez kompresji
Typowy rozmiar pliku Bardzo mały Bardzo mały
Otwiera się w przeglądarce internetowej Nie Tak, natywnie
Dalsza edycja Łatwy Łatwy
Obsługa metadanych Podstawowy Brak
Czytelny tekstowo Nie Tak
Najlepszy do Muzyka Wymiana danych
Wprowadzono 1983 —
Twórca MIDI Manufacturers Association / MIDI Association —
Typ MIME audio/midi text/plain

Najczęściej zadawane pytania

Czy konwersja MIDI do TXT zamienia muzykę na czytelny tekst?

Tak, zamienia ścieżki i zdarzenia MIDI na wiersze czytelnego tekstu, takie jak nuty, czasy, kanały, instrumenty i zmiany kontrolerów. Nie zamienia muzyki w tekst piosenki ani odtwarzalny plik audio.

Czy wszystkie informacje MIDI zostaną zachowane w pliku TXT?

Niekoniecznie; zachowanie informacji zależy od formatu eksportu tekstowego lub skryptu. Podstawowy eksport może pomijać dane system-exclusive, szczegółowe metadane lub część informacji o czasie, a tekst nie może zachować sposobu odtwarzania MIDI tak bezpośrednio jak oryginalny plik.

Czy po konwersji MIDI do TXT mogę odtworzyć plik TXT?

Nie, zwykłego pliku tekstowego nie można bezpośrednio odtworzyć jako MIDI. Można go przekonwertować z powrotem tylko wtedy, gdy tekst korzysta z kompletnej, ustrukturyzowanej reprezentacji, którą może zinterpretować inny skrypt tworzący MIDI.

Dlaczego po otwarciu pliku MIDI jako TXT wyświetlają się dziwne znaki lub nieczytelny tekst?

Plik MIDI zawiera dane binarne, więc otwarcie go jako zwykłego tekstu wyświetla wartości bajtów jako niezrozumiałe znaki zamiast znaczących zdarzeń. Musi on zostać przeanalizowany przez konwerter lub skrypt obsługujący MIDI, aby utworzyć tekst możliwy do wyszukiwania.

Dodatkowe formaty dla konwersji pliku
midi

Konwersja odwrotna

Konwersja do .txt
z innych formatów

Udostępnij w mediach społecznościowych: