2013-06-03 14 views
5

Poszukuję sposobu na zmianę poszczególnych nut w istniejącym pliku MIDI w Pythonie. Znalazłem wiele pakietów, które pozwalają na pisanie plików MIDI, ale nie zmieniając istniejących. Czy istnieje pakiet, który mógłby pomóc w tym lub sposób analizowania hex pliku MIDI, aby to osiągnąć?Manipulowanie plikami MIDI w Pythonie

+0

Większość pakietów, które mogą pisać pliki MIDI, może je również odczytać. Jeśli nie, szybkie wyszukiwanie [PyPI] (https://pypi.python.org/pypi?%3Aaction=search&term=midi&submit=search) powoduje pojawienie się wielu opcji, takich jak 'midiparser'. – abarnert

Odpowiedz

3

Prawdopodobnie nie można "zmienić istniejących plików", jeśli chodzi o modyfikowanie ich na miejscu.

Ale możesz po prostu przeanalizować plik MIDI, zmienić go (w pamięci lub iteracyjnie) i napisać nowy.

Nie wspomniałeś, które pakiety oglądałeś, aby pisać pliki MIDI, ale każdy, z którym kiedykolwiek miałem do czynienia, może również czytać pliki MIDI, więc prawdopodobnie masz już wszystko, czego potrzebujesz.

I nie ma nic, co wymagałoby użycia tego samego pakietu do czytania i pisania. Na przykład możesz użyć midiparser do czytania i python-midi do pisania; kod do mapowania wiadomości MIDI z jednego pakietu na drugi jest banalny.

4

Program open source przekształca MIDI na tekst CSV i na odwrót. Możesz otworzyć plik CSV jako tekst i łatwo go edytować za pomocą Pythona, bez konieczności polegania na specjalnych modułach.

Aby uzyskać informacje na temat protokołu MIDI, patrz:

W recent project Znalazłem to praca bardzo łatwe do zrobienia.