Dostałem fajny dźwięk z Linuksa Defendera lub knoppiksa (lub czegoś innego, nie pamiętam który), który mówi „inicjowanie sekwencji startowej” I chcę go użyć tak wcześnie, jak to możliwe w procesie rozruchu. Powiedzenie, że kiedy się zaloguję, nie miałoby większego sensu, więc najlepiej byłoby grać w momencie, gdy zaczyna się GRUB. Czy da się to zrobić?
14
Odpowiedzi:
Zgodnie z instrukcją GRUB, pierwsza nuta to „tempo”, a każda następna para liczb to czas trwania i wysokość.
Wysokość jest wyrażona w Hz, więc aby grać ładnie brzmiące nuty (które są dostrojone), będziesz potrzebować częstotliwości nut w zachodniej skali równego temperamentu:
http://pastebin.com/rJY30FmM
Nawiasem mówiąc, oto co wymyśliłem po napisaniu i użyciu wklejonego kodu Java:
Odtwarza 4-nutowe arpeggio A, F # m, D, E.
źródło
W jaki sposób
W pliku
/etc/default/grub
ustaw zmiennąGRUB_INIT_TUNE
na żądaną melodię.Na przykład:
GRUB_INIT_TUNE="2000 400 4 0 1 500 4 0 1 600 4 0 1 800 6"
Po zakończeniu zastosuj zmiany za pomocą
sudo update-grub2
.Istniejące melodie
(Te, które mogłem znaleźć)
1750 523 1 392 1 523 1 659 1 784 1 1047 1 784 1 415 1 523 1 622 1 831 1 622 1 831 1 1046 1 1244 1 1661 1 1244 1 466 1 587 1 698 1 932 1 1195 1 1397 1 1865 1 1397 1
480 440 4 440 4 440 4 349 3 523 1 440 4 349 3 523 1 440 8 659 4 659 4 659 4 698 3 523 1 415 4 349 3 523 1 440 8
2000 400 4 0 1 500 4 0 1 600 4 0 1 800 6
480 220 1 277 1 330 1 440 1 185 1 220 1 277 1 370 1 294 1 370 1 440 1 587 1 330 1 415 1 494 1 659 1
Więcej ich tutaj .
Zrozum melodię
Składnia jest następująca:
GRUB_INIT_TUNE="
tempo [pitch1 duration1] [pitch2 duration2] ...
"
Źródło: dokumentacja grub, dokumentacja polecenia grub play (ta sama strona).
Wyświetl podgląd / przetestuj melodię
Jeśli chcesz przetestować melodię: zainstaluj
sox
i użyj skryptu z tego wątku ubuntuforum.org (nieco zmodyfikowanego przeze mnie, aby usunąć ostrzeżenia):grub-playtune
Aby był wykonywalny
chmod +x grub-playtune
Użyj przykładu:
Częstotliwość notatki
Skrypt oparty na python3 do obliczania częstotliwości notatki:
smoła
Użyj przykładów:
Tabela częstotliwości
Jeden jest dostępny tutaj . Można go również wygenerować za pomocą powyższego skryptu:
źródło
Pytasz, czy da się to zrobić? Prosta odpowiedź? Tak, najwyraźniej. Jak można to zrobić? Na tę odpowiedź musisz włożyć więcej pieniędzy. Tylko mój mały żart. Najlepsze, co mogę zrobić, to:
Podręcznik GRUB
Przejdź do sekcji 5.1 Prosta obsługa konfiguracji i poszukaj linii GRUB_INIT_TUNE. Będziesz musiał postępować zgodnie z linkami do Play i składni nazw plików. Będziesz musiał ręcznie edytować plik Grub.
źródło
Edytuj plik,
/etc/default/grub
aby zawierał następujący wiersz (oto moja melodia inicjująca):GRUB_INIT_TUNE = "2000 400 4 0 1 500 4 0 1 600 4 0 1 800 6"
Uruchom,
sudo update-grub2
aby zastosować zmianę.źródło
Stworzyłem skrypt Pythona, który konwertuje pliki midi na te melodie inicjujące:
https://gitlab.com/lukasfink1/midi2grub
Do uruchomienia potrzebna jest biblioteka mido. Zauważ też, że polecenie grub grub może odtwarzać tylko melodie monofoniczne, więc twoje midi mogą brzmieć dziwnie, jeśli nie są.
źródło