Konwertuj midi do ascii

Konwertuj MIDI na ASCII

Konwertuj zdarzenia MIDI do formatu MIDI CSV lub czytelnej notacji za pomocą desktopowych narzędzi tekstowych.

Konwertuj pliki MIDI online

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

Chcesz przekonwertować MIDI na ASCII?

Daj nam znać. Kolejne konwersje do dodania wybieramy według zainteresowania.

Jak konwertować midi do ascii

Skrypt, system kontroli wersji, narzędzie terminalowe lub archiwum może wymagać danych muzycznych w postaci czytelnego tekstu zamiast binarnego Standard MIDI File. Prawidłowy format wyjściowy zależy od oprogramowania odbierającego: MIDI CSV zachowuje zdarzenia, natomiast ABC notation reprezentuje czytelny zapis muzyczny.

Czym jest format MIDI

Pliki MIDI przechowują instrukcje wykonawcze, a nie nagrany dźwięk. Standard MIDI File może zawierać ścieżki, zdarzenia note-on i note-off, wysokości dźwięków, velocity, kanały, zmiany kontrolerów, zmiany programów, tempo, metrum, tekst oraz dane system-exclusive. Pliki zwykle używają rozszerzenia .mid lub .midi i są wymieniane między sekwencerami, cyfrowymi stacjami roboczymi audio, programami do zapisu nutowego, instrumentami elektronicznymi i sprzętem.

Programy takie jak Logic Pro, Cubase, Ableton Live, REAPER, GarageBand, MuseScore i Sibelius mogą tworzyć lub importować MIDI. Plik zawiera dane dotyczące synchronizacji i zdarzeń, ale nie zawiera próbek instrumentów ani nagranego audio potrzebnego do samodzielnego odtworzenia dźwięku.

Co ASCII oznacza w przypadku plików muzycznych

ASCII to 7-bitowe kodowanie znaków, a nie uniwersalny format plików muzycznych. Reprezentacja tekstowa musi określać sposób zapisu nagłówków MIDI, ścieżek, synchronizacji, typów zdarzeń i bajtów danych. Typowe formaty docelowe obejmują:

  • MIDI CSV: rekordy tekstowe rozdzielane przecinkami, które opisują zdarzenia MIDI i nadają się do inspekcji, skryptów oraz konwersji w obie strony za pomocą kompatybilnych narzędzi.
  • ABC notation: zwykły tekst opisujący nuty, rytm, tonację, metrum, głosy i tekst muzyczny; jest przeznaczony dla narzędzi do zapisu nutowego, a nie do dokładnego zachowania wykonania.
  • Custom event logs: zależne od aplikacji pliki tekstowe zawierające tylko pola wymagane do analizy lub przetwarzania.

Tekst ASCII można łatwo przeglądać, porównywać, generować i przetwarzać za pomocą narzędzi powłoki lub programistycznych. Nie zachowuje on oryginalnego binarnego kodowania pliku MIDI, takiego jak układ fragmentów, wybór trybu running status ani dokładne rozmieszczenie bajtów. Zdefiniowany format tekstowy może zachować równoważne zdarzenia muzyczne, ale na podstawie ogólnego zrzutu tekstowego nie można niezawodnie odtworzyć pliku.

Jak konwertować MIDI do ASCII

Użyj MIDI CSV do konwersji na poziomie zdarzeń

Fourmilab MIDI Utilities udostępnia sprawdzone programy wiersza poleceń midicsv i csvmidi. Pakiet jest dystrybuowany dla popularnych platform desktopowych oraz w postaci kodu źródłowego, dlatego szczegóły instalacji zależą od wydania i systemu operacyjnego.

  1. Zainstaluj pakiet zawierający midicsv. Zainstaluj również csvmidi, jeśli tekst ma być później konwertowany z powrotem.
  2. Otwórz terminal w katalogu zawierającym plik MIDI.
  3. Uruchom midicsv composition.mid composition.csv.
  4. Przekaż plik composition.csv skryptowi lub aplikacji, która oczekuje MIDI CSV. Zmień jego nazwę na composition.txt tylko wtedy, gdy jest to konieczne ze względu na wymagania dotyczące rozszerzenia; zmiana nazwy nie zmienia jego struktury rozdzielanej przecinkami.

Aby odtworzyć plik MIDI po edycji obsługiwanych rekordów, uruchom csvmidi composition.csv restored.mid. Zachowaj oryginał i sprawdź odtworzony plik, ponieważ nieprawidłowe rekordy lub nieobsługiwane edycje mogą zmienić synchronizację, odtwarzanie, metadane lub możliwość pomyślnego odtworzenia. MIDI CSV zachowuje informacje o zdarzeniach znacznie lepiej niż formaty zapisu nutowego, ale nie jest kopią źródłowego pliku MIDI bajt po bajcie.

Użyj ABC do czytelnego zapisu nutowego

Pakiet open-source abcMIDI zawiera mid2abc. Uruchom mid2abc composition.mid > composition.abc, a następnie otwórz wynik w edytorze kompatybilnym z ABC lub w środowisku pracy z zapisem nutowym. Rozszerzenie .abc oznacza ABC notation, a nie ogólny ASCII ani MIDI CSV.

Sprawdź wygenerowaną tonację, metrum, tempo, głosy, tuplet, długości nut i pauzy. MIDI często zawiera ekspresyjną synchronizację, nakładające się nuty, dane kontrolerów, kanały perkusyjne lub gęstą polifonię, których nie można dokładnie przedstawić w konwencjonalnym ABC notation. Często konieczna jest ręczna korekta.

Napisz niestandardowy zrzut tekstowy dla konkretnego projektu

Pakiet mido dla Python może odczytywać ścieżki MIDI i zapisywać wybrane pola do pliku tekstowego. Na przykład to polecenie wyświetla każdy komunikat wraz z jego czasem delta:

python -c "import mido,sys; m=mido.MidiFile(sys.argv[1]); [print(track_no, msg) for track_no,track in enumerate(m.tracks) for msg in track]" composition.mid

Ten wynik jest dziennikiem inspekcji, a nie standardową ani odwracalną konwersją. Odwracalny niestandardowy format musi rejestrować nagłówek MIDI, granice ścieżek, czasy delta, typy zdarzeń, kanały, bajty danych oraz wymagane zdarzenia system-exclusive lub metadane. Zapisuj dane z użyciem jawnie określonego kodowania ASCII i zdefiniowanej reguły zabezpieczania znaków, jeśli wymagany jest ścisły 7-bitowy wynik; tekst UTF-8 nie jest automatycznie ASCII.

Kompatybilność z oprogramowaniem i usługami online

Guitar Pro może importować MIDI i eksportować tabulaturę gitarową jako tekst w stylu ASCII w środowiskach, w których celem jest czytelna tabulatura gitarowa. Taki eksport nie jest ogólną konwersją zdarzeń MIDI do ASCII i może pomijać szczegóły synchronizacji, ścieżki niezwiązane z gitarą, kontrolery oraz inne dane MIDI. MuseScore i większość aplikacji do zapisu nutowego lepiej nadaje się do uzyskania formatu score, MusicXML lub PDF niż ogólnego ASCII.

Nie istnieje uniwersalny internetowy standard MIDI-to-ASCII, dlatego konwerter w przeglądarce nadaje się do użycia tylko wtedy, gdy wyraźnie wskazuje wymagany format docelowy, taki jak MIDI CSV lub ABC. Zweryfikuj pobrane rekordy za pomocą aplikacji odbierającej; usługi reklamowane jako „MIDI to text” mogą generować podsumowanie, lyrics, MusicXML lub zapis nutowy zamiast wymiennej reprezentacji tekstowej. Nie przesyłaj nieopublikowanych kompozycji ani plików zawierających wrażliwe metadane, chyba że zasady obsługi usługi są akceptowalne.

Ograniczenia jakości i kompatybilności

Przed konwersją potwierdź oczekiwany format i dialekt po stronie docelowej. Plik o nazwie .txt może być czytelnym dla człowieka zrzutem, MIDI CSV, ABC notation lub własną reprezentacją, a formaty te nie są wzajemnie wymienne. Zachowaj oryginalny plik MIDI, ponieważ konwersja nie może odzyskać informacji pominiętych podczas eksportu tekstowego.

Po konwersji przetestuj mapy tempa, oznaczenia metrum, nazwy ścieżek, zmiany programów, kanały perkusyjne, zdarzenia kontrolerów, nakładające się nuty oraz dane system-exclusive. Format tekstowy zachowujący zdarzenia nutowe może nadal pomijać definicje instrumentów, własnościowe komunikaty urządzeń lub dokładne zachowanie wykonania wymagane przez oryginalny sprzęt albo sekwencer.