Zaciemnianie RTTTL


15

RTTTL lub Ring Tone Text Transfer Language to format muzyczny, który został wymyślony przez Nokię w czasach, gdy dinozaury wędrowały po ziemi . Pozwala na dość prymitywne utwory muzyczne (bez akordów itp.), A format jest dość prosty, dlatego uważam, że jest całkiem fajny. Spójrz na to:

DejaVu: d=8,o=5,b=200: e, e, c, e, g, 2g4

Przeanalizujmy format. Część „DejaVu” na początku jest tytułem - nie może być dłuższa niż dziesięć znaków. D i o są domyślnymi wartościami czasu trwania i oktawy - jeśli nuta nie określa czasu trwania ani oktawy, użyje ich. Wreszcie, b to liczba uderzeń na minutę.

Następnie wyświetlane są faktyczne nuty utworu. Format nuty to DPO, gdzie D to czas trwania nuty (1, 2, 4, 8, 16), P to wysokość (A, B, C, D, E, F, G, A #, B # , C #, D #, E #, F #, G #), a O jest oktawą (4-8 w implementacji Nokia, jednak różni się w przypadku innych implementacji. Na potrzeby wyzwania powiemy, że to 1-8) . Jeśli czas trwania lub oktawa nie jest określony, używane są wartości domyślne. Dodatkowo, nuta może mieć kropkę za sobą - to zasadniczo zwiększa czas trwania o 1,5.

W naszym przykładzie mamy dwie nuty E bez czasu trwania i oktawy, co oznacza, że ​​mają domyślny czas trwania i oktawę (8 lub ósmą nutę i oktawę 5), C bez czasu trwania i oktawy, E i a G. Końcowa nuta jest nutą G o czasie trwania 2 (półnuta) i oktawie 4.

Teraz, kiedy przekroczyliśmy format, jakie jest wyzwanie? Wyzwanie nie ma zbyt wiele wspólnego z RTTTL. Twoim zadaniem jest stworzenie zaciemnionego programu, który wyświetli „Hello, World!” (dokładnie) jest to również prawidłowy utwór RTTTL o długości co najmniej pięciu sekund .

Aby przetestować utwór RTTTL, możesz użyć tej witryny do konwersji utworu na plik MIDI, a następnie odsłuchania go w odtwarzaczu MIDI. To jest . Powodzenia!

EDYCJA: Oto strona internetowa do konwersji MIDI na RTTTL, jeśli chcesz. Połączyć

EDYCJA 2: Ta błyszcząca nagroda zostanie przyznana zwycięzcy (najbardziej ceniony post) za 7 dni.


Czy liczba uderzeń na sekundę może być dziesiętna?
Downgoat,

Nie. Również to miało być uderzeń na minutę, naprawiłem to.
spaghetto

1
Czy jest jakiś sposób na konwersję pliku midi na piosenkę RTTTL?
The_Basset_Hound

Jestem pewien, że jest. Może spróbujesz googlować? (Musisz upewnić się, że plik MIDI nie zawiera akordów, których RTTTL nie obsługuje.)
spaghetto

1
Znaleziono taki, który działa: midi.mathewvp.com/midi2RTTL.php
The_Basset_Hound

Odpowiedzi:


13

Biała spacja, 2748 bajtów

(zastąp \trzeczywistymi kartami)

Hello:d=4, o=5, b=120:2p, 16a2,
16p, 16a2, 16p, 16a3,\t16p, 16a3, 16p,\t16g2, 16p, 16g2, 16p,
16g3,\t16p,\t16g3, 16p, 16a2, 16p, e3,\td3,
16b2, 16c3, 16b2, 16a2,\t8g2,\t16a2, 16p, 16a2,\t16p, 16a3,\t16p,
16a3,\t16p,\t16g2, 16p, 16g2, 16p, 16g3,\t16p, 16g3,
16p, 16a2, 16p, e3,\td3,\t16b2, 16c3,\t16b2,\t16a2, 8g2, 16a2,
16p,\t16a2,\t16p, 16a3, 16p, 16a3, 16p,\t16g2,\t16p,
16g2, 16p, 16g3, 16p,\t16g3,\t16p, 16a2,\t16p,\te3, d3, 16b2,
16c3,\t16b2,\t16a2, 8g2, 16a2, 16p, 16a2,\t16p, 16a3, 16p,
16a3, 16p, 16g2, 16p,\t16g2,\t16p, 16g3,\t16p,\t16g3,\t16p,\t16a2,
16p,\te3,\td3, 16b2, 16c3, 16b2, 16a2,\t8g2, 16a2,\t16p,
16a2, 16p, 16a3, 16p,\t16a3, 16p,\t16g2,\t16p, 16g2, 16p,
16g3,\t16p,\t16g3, 16p, 16a2, 16p, e3,\td3,\t16b2, 16c3,
16b2, 16a2, 8g2, 16a2,\t16p, 16a2, 16p, 16a3, 16p, 16a3,
16p,\t16g2,\t16p, 16g2, 16p, 16g3, 16p,\t16g3,\t16p,\t16a2,
16p, e3, d3, 16b2,\t16c3,\t16b2,\t16a2, 8g2,\ta2,\t8c#3,\t8e3,
g2,\t8b2,\t8d3, a2, 8c#3, 8e3, g2,\t8b2, 8d3, a2, 8c#3,
8e3, g2, 8b2, 8d3,\ta2,\t8c#3, 8e3,\tg2,\t8b2,\t8d3,\ta2,
8c#3,\t8e3,\tg2, 8b2, 8d3, a2, 8c#3,\t8e3, g2, 8b2,\t8d3,
a2, 8c#3, 8e3, g2,\t8b2,\t8d3,\ta2, 8c#3, 8e3,\tg2, 8b2,
8d3,\t16a2,\t16p, 16a2, 16p, 16a3, 16p,\t16a3, 16p,\t16g2, 16p,
16g2, 16p, 16g3, 16p,\t16g3,\t16p, 16a2,\t16p,\te3, d3, 16b2,
16c3,\t16b2,\t16a2, 8g2, 16a2, 16p, 16a2,\t16p, 16a3,\t16p,\t16a3,
16p, 16g2, 16p, 16g2,\t16p,\t16g3, 16p, 16g3,\t16p, 16a2, 16p,
e3,\td3,\t16b2, 16c3, 16b2, 16a2, 8g2,\t16a2,\t16p, 16a2, 16p,
16a3, 16p, 16a3, 16p,\t16g2, 16p, 16g2, 16p, 16g3,\t16p,
16g3,\t16p,\t16a2, 16p, e3, d3, 16b2,\t16c3,\t16b2, 16a2,\t8g2,
16a2, 16p, 16a2, 16p,\t16a3,\t16p, 16a3,\t16p,
16g2,\t16p,\t16g2, 16p, 16g3, 16p, 16g3,\t16p,\t16a2,\t16p, e3,
d3, 16b2, 16c3, 16b2,\t16a2, 8g2,\ta2, 8c#3,
8e3,\tg2,\t8b2, 8d3, a2, 8c#3, 8e3,\tg2,\t8b2,\t8d3,\ta2,
8c#3, 8e3, g2, 8b2, 8d3,
a2,\t8c#3,\t8e3, g2, 8b2, 8d3, a2, 8c#3,
8e3,
g2, 8b2, 8d3, a2, 8c#3,\t8e3,
g2, 8b2,
8d3, a2,\t8c#3,\t8e3,\tg2, 8b2,
8d3, a2,
8c#3,\t8e3, g2, 8b2,\t8d3, 1a3,
1a2,\td3,
8f#3, 8a3, c3, 8e3, 8g3, d3,\t8f#3,
8a3,\tc3, 8e3, 8g3, d3,
8f#3, 8a3,
c3, 8e3, 8g3,\td3,
8f#3,
8a3, c3, 8e3, 8g3,\td3, 8f#3,
8a3,
c3,
8e3,
8g3,d3,8f#3,8a3,c3,8e3,8g3,d3,8f#3,8a3,c3,8e3,8g3,d3,8f#3,8a3,c3,8e3,8g3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,8c3,274p,8b2,274c3,8p,8c#3,8d3,274p,8f3,274p,8d3,8c#3,

To okropna wersja dzwonka The Doors with Hello, I love you .

Pobierz przekonwertowany MIDI


Mój odtwarzacz tego nie lubi octave: 2, Cannot index into a null array.. Pytanie mówi, że tylko oktawy 4-8 są poprawne, więc to wszystko, dla czego je kodowałem. Brzmi dobrze na połączonej stronie.
TessellatingHeckler

Ach tak, zapomniałem o tym. Niektórzy gracze będą obsługiwać więcej oktaw, a inni nie. Standardowa Nokia One obsługuje tylko 4-8 i dlatego o tym wspomniałem.
spaghetto

8

H9 +, 157 007 bajtów

MIDI !!!!

Jest za długi na post. Więc tutaj masz pastę . (Pastebin nie ma odpowiedniej wielkiej litery, FYI.) Użyłem następującego oprogramowania:

Piosenka to „Anthem of Dying Day” autorstwa Story of the Year. To pełna, 3,5-minutowa piosenka. ^-^.

Zaczyna się od:

ANTHEM:d=4,o=5,b=120:172c#,86f#,86a4,172p,16p,43a4,86p,43f#4,172a4,10p,57a4,...

H, oczywiście odbitki Hello, World!. I upewniłem się, że nie ma 9ani +kodu ani kodu. Dobrze, że to nie jest .


Magnifique. +1 dla ciebie
spaghetto

@quartata Merci!
Conor O'Brien

1
Hmm, wygląda na to, że stado lam biega po 10 fortepianach, czy to jest zamierzone, czy jakiś problem z odtwarzaniem po mojej stronie?
aditsu zakończyło się, ponieważ SE to EVIL

@aditsu To tak jakby; to po prostu dość intensywna rockowa piosenka.
Conor O'Brien

4
-1 nie implementuje specyfikacji („ która wypisuje„ Hello, World! ”(Dokładnie) ”) i nie jest napisana w języku programowania .
Peter Taylor

7

123 , 816 bajtów

H:d=4,o=4,b=400:2a,2b,2a,2b,1a,1b,2a,1b,1a,2b,1a,1b,1a,2b,1a,1b,2a,2b,2a,2b,2a,2b,2a,2b,1a,1b,2a,1b,1a,1b,1a,2b,1a,1b,1a,2b,1a,1b,2a,1b,1a,2b,2a,2b,2a,2b,2a,2b,2a,1b,1a,2b,1a,1b,2a,1b,1a,3b,3a,1b,2a,1b,1a,2b,1a,3b,1a,2b,1a,2b,1a,1b,2a,2b,2a,2b,2a,2b,2a,2b,1a,1b,1a,2b,1a,1b,2a,1b,3a,3b,1a,2b,1a,1b,2a,1b,3a,1b,2a,2b,2a,2b,2a,2b,2a,2b,1a,1b,1a,2b,1a,1b,3a,3b,2a,1b,1a,3b,3a,1b,2a,1b,1a,2b,2a,2b,2a,2b,2a,1b,1a,1b,2a,1b,1a,2b,3a,3b,1a,1b,2a,3b,3a,2b,2a,2b,2a,2b,2a,2b,1a,1b,1a,1b,2a,1b,1a,1b,1a,1b,2a,1b,1a,2b,2a,2b,2a,2b,1a,1b,1a,1b,2a,1b,1a,2b,1a,1b,2a,2b,2a,2b,2a,2b,2a,2b,1a,1b,2a,1b,1a,1b,1a,1b,2a,1b,1a,2b,1a,1b,2a,1b,1a,2b,2a,2b,2a,2b,2a,2b,1a,1b,1a,1b,1a,2b,1a,1b,2a,1b,1a,2b,1a,1b,2a,2b,2a,2b,2a,1b,3a,3b,1a,2b,1a,1b,2a,1b,3a,1b,2a,2b,2a,2b,2a,2b,2a,2b,1a,1b,2a,1b,1a,1b,3a,3b,2a,1b,1a,3b,3a,1b,2a,1b,1a,2b,1a

Pobierz melodię

Ten jest po prostu rytmicznym dźwiękiem, ale język z pewnością ma większy potencjał do tego wyzwania, ponieważ w 123 wszystkie znaki z wyjątkiem 1, 2 i 3 są ignorowane. Kredyty za oryginalny kod 123 trafiają do Martina Büttnera .


Wow, nigdy wcześniej nie widziałem tego języka. Niezłe!
spaghetto

2

Python 2.7, 1606 bajtów

Okej, więc nie jest niesamowicie zaciemniony, ale działa. Mam przeliczone go do pliku midi i czyni grę.

Melodia jest wciąż żywa z portalu . Dostałem melodię jako plik midi stąd , który następnie przekonwertowałem na RTTL. Ostatnie kilka nut jest wyłączonych, ale myślę, że to w porządku.

print[':d=4,o=5,b=120:2p,8g,8f#,8e,8e,2f#,1p,8a4,8g,8f#,8e,e,f#.,d,8e,1a4,8p,8a4,e,8f#,g.,8e,c#,d.,e,8a4,a4,1f#,2p,8g,8f#,8e,8e,2f#,1p,8a4,8g,8f#,8e,e.,8f#,d.,8e,2a4,2p,e,8f#,g.,8e,c#.,8d,e,8a4,8d,8e,8f,8e,8d,8c,p,8a4,8a#4,c,f,8e,8d,8d,8c,8d,8c,c,c,8a4,8a#4,c,f,8g,8f,8e,8d,8d,8e,f,f,8g,8a,8a#,8a#,a,g,8f,8g,8a,8a,g,f,8d,8c,8d,8f,8f,e,8e,8f#,8f#,8a,8d6,8f#6,8d6,8b,8d6,8f#6,8d6,8a,8d6,8f#6,8d6,8b,8d6,8f#6,8d6,8a,8d6,8f#6,8d6,8b,8d6,8f#6,8d6,p.,8a4,8g,8f#,8e,8e.,2f#,1p,8a4,8g,8f#,8e,e.,8f#,d,e,2a4,2p,e,8f#,g.,e,c#,8d,e.,8a4,a4,2f#,2p,8a4,8p,8b,8p,8a,8p,8g,8p,8g,8p,a,1p,8a4,8p,8b,8p,8a,8p,8g,8p,g.,p.,8a,8p,f#.,p.,8g,8p,2d,2p,e,8f#,g.,e,c#,8d,e,8a4,8d,8e,8f,8e,8d,c.,8a4,8a#4,c,f,8e,8d,8d,8c,8d,8c,c,c,8a4,8a#4,c,f,8g,8f,8e,8d,8d,8e,f,f,8g,8a,8a#,8a#,8a,8a,g,8f,8g,8a,8a,8g,8f,f,8d,8c,8d,8f,8f,e,8e,8f#,2f#,1p,8a4,8g,8f#,8e,8e.,2f#,1p,8a4,8g,8f#,8e,e.,8f#,d,e,2a4,2p,e,8f#,g.,e,c#,8d,e.,8a4,a4,2f#,2p,8a4,8p,8b,8p,8a,8p,8g,8p,8g,8p,a,1p,8a4,8p,8b,8p,8a,8p,8g,8p,g.,p.,8a,8p,f#.,p.,8g,8p,2d,2p,e,8f#,g.,e,c#,8d,e,8a4,8d,8e,8f,8e,8d,c.,8a4,8a#4,c,f,8e,8d,8d,8c,8d,8c,c,c,8a4,8a#4,c,f,8g,8f,8e,8d,8d,8e,f,f,8g,8a,8a#,8a#,8a,8a,g,8f,8g,8a,8a,8g,8f,f,8d,8c,8d,8f,8f,e,8e,8f#,8f#,2a,8p,8a,8a,512p,8a,512p,8b,512p,8a,512p,8f#,512p,d,p,8g,8p,8a,8p,2a,8p,8a,8a,512p,8a,512p,8b,512p,8a,512p,8f#,512p,d,p,8g,8p,8a,8p,2a,8p,8a,8a,512p,8a,512p,8b,512p,8a,512p,8f#,512p,d,p,8g,8p,8a,8p,2a,8p,8a,8a,512p,8a,512p,8b,512p,8a,512p,8f#,512p,d,p,8g,8p,8a,8p,2a,8p,8a,8a,512p,8a,512p,8b,512p,8a,512p,8f#,512p,d,p,8g,8p,8a,8p,a.,p.,8g,8a,a.,p.,8g,8f#,2f#',''.join(map(chr,[72,101,108,108,111,44,32,87,111,114,108,100,33]))][1]

Wygląda na to, że zmieniał się w różnych miejscach melodii i podkładu / kontr-melodii. Może być gdzieś wersja z melodią.
cole

Um ... twój program nie wydaje się być prawidłową piosenką RTTTL
aditsu zostało zakończone, ponieważ SE to EVIL

@aditsu Jedynym sposobem, w jaki mogę sprawdzić, czy jest poprawny, jest konwersja go do pliku midi, więc ... musisz mi powiedzieć, jak jest nieważny.
Status

3
Cóż, 2f#'wydaje się , że nie jest to poprawna nuta, ani też nie jest ''.join(map(chritp.
aditsu zrezygnowało, ponieważ SE to EVIL

1
Jest to tutaj, w tekście wyzwania: „Format notatki to DPO, gdzie D jest czasem trwania notatki […]” - przeczytaj cały akapit.
Aditsu zrezygnowało, ponieważ SE jest EVIL

1

Lenguage

Hello: d=8,o=4,b=130: a, b, 4e5, a, b, 4e5, g, b, 4e5, g, b, 4e5, f, a, 4e5, f, a, 4e5, g, b, 4e5, f, a, 4e5, a, b, 4e5, a, b, 4e5, g, b, 4e5, g, b, 4e5, f, a, 4e5, f, a, 4e5, g, b, 4e5, f, a, e5, e, 4e, a, 4a., b, 4b., c5, 4c.5, 4d.5, 4c5, 2d5, p, g, b, 4e5, f, a, e5, e, e, 4a, 4a, 4b, 4b, 4c5, 2c5, b, c5, 4b, 2a, p, g, b, 4e5, f, a, e5, e, 4e, a, 4a., b, 4b., c5, 4c.5, 4d.5, 4c5, 2d5, p, g, b, 4e5, f, a, e5, d5, 2e5, a, b, 4e5, g, b, 4e5, g, b, d5, c5, e5, 4d.5, d5, c5, 4e5, a, c#5, 4e5, a, c#5, d5, e5, f5, e5, e5, d5, 2d5, g, b, 4d5, g, b, c5, d5, e5, d5, d5, c5, c5, g, 4a, f, a, 4c5, f, a, a#, c5, 4d.5, 4c.5, c5, a#, 4a, 2g#, f#, g#, 4a, a, 4b, a, 4c5, a, c5, 4e5, a, c5, d5, e5, 4f5, f5, 4f5, e5, 4d5, g, b, 4d5, g, b, c5, d5, 4e5, f5, 4e5, d5, c5, g, 2a, f, a, a#, c5, 4d5, c5, 4c5, 4a#, 4a, 2g#., 2p., p, f#, g#, 2a, a, b, 4e5, g, b, 4e5, g, b, 4e5, f, a, 4e5, f, a, 4e5, g, b, 4e5, f, a, 4e5, 4a, 4c#5, 1e5

Następuje wiele gazillionów przestrzeni, więc całkowita długość wynosi 150306725405247424813082671095009555930972306375297366901721134222563463360025683976401363734706798738542991492

Konwertuj i pobieraj (uwaga: kod jest obcinany, aby zaoszczędzić przepustowość, ale wynikowy midi powinien być taki sam)


2
Lionel Richie - „Hello”?
LukStorms,

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.