RTTTL Obfuscation


15

RTTTL , hoặc Ngôn ngữ chuyển văn bản nhạc chuông là định dạng âm nhạc được Nokia phát minh vào thời điểm bình minh khi khủng long lang thang trên vùng đất . Nó cho phép tạo ra những bản nhạc khá thô (không có hợp âm hay bất cứ thứ gì), và định dạng khá đơn giản, đó là lý do tại sao tôi nghĩ nó khá tuyệt. Hãy nhìn vào cái này:

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

Hãy mổ xẻ định dạng. Phần "DejaVu" ở đầu là tiêu đề - phần này không thể dài hơn mười ký tự. D và o là các giá trị mặc định cho thời lượng và quãng tám - nếu một ghi chú không chỉ định thời lượng hoặc quãng tám, nó sẽ sử dụng các giá trị này. Cuối cùng, b là nhịp mỗi phút.

Sau đó, các ghi chú thực tế của bài hát được liệt kê. Định dạng của ghi chú là DPO, trong đó D là thời lượng của ghi chú (1, 2, 4, 8, 16), P là cao độ (A, B, C, D, E, F, G, A #, B # , C #, D #, E #, F #, G #) và O là quãng tám (4-8 trong triển khai Nokia, tuy nhiên, nó khác với các triển khai khác. Đối với mục đích của thử thách, chúng tôi sẽ nói đó là 1-8) . Nếu thời lượng hoặc quãng tám không được chỉ định, mặc định được sử dụng. Ngoài ra, một ghi chú có thể có một dấu chấm sau nó - điều này về cơ bản nhân thời lượng lên 1,5.

Trong ví dụ của chúng tôi ở đây, chúng tôi có hai ghi chú E không có thời lượng và quãng tám, có nghĩa là chúng có thời lượng và quãng tám mặc định (8, hoặc ghi chú thứ tám và quãng tám 5), một chữ C không có thời lượng và quãng tám, E và a G. Ghi chú cuối cùng là một ghi chú G có thời lượng 2 (nửa nốt) và quãng tám là 4.

Bây giờ chúng ta đã đi qua định dạng, thách thức là gì? Thử thách thực sự không có quá nhiều liên quan đến RTTTL. Nhiệm vụ của bạn là tạo ra một chương trình bị xáo trộn tạo ra "Xin chào, Thế giới!" (chính xác) đó cũng là một bài hát RTTTL hợp lệ dài ít nhất năm giây .

Để kiểm tra bài hát RTTTL của bạn, bạn có thể sử dụng trang web này để chuyển đổi bài hát của mình thành tệp MIDI, sau đó nghe nó trong trình phát MIDI. Đây là . Chúc may mắn!

EDIT: Đây là một trang web để chuyển đổi MIDI sang RTTTL nếu bạn mong muốn. Liên kết

EDIT2: Tiền thưởng sáng bóng này sẽ được trao cho người chiến thắng (bài được đánh giá cao nhất) trong 7 ngày.


Nhịp đập mỗi giây có thể là một số thập phân?
Hạ cấp

Không. Ngoài ra, nó được cho là nhịp đập mỗi phút, tôi đã sửa nó.
một spaghetto

1
Có cách nào để chuyển đổi tập tin midi thành bài hát RTTTL không?
The_Basset_Hound

Tôi chắc chắn là có. Có thể thử googling nó? (Bạn phải đảm bảo tệp MIDI không chứa hợp âm, mà RTTTL không hỗ trợ.)
một spaghetto

1
Tìm thấy một hoạt động: midi.mathewvp.com/midi2RTTL.php
The_Basset_Hound

Câu trả lời:


13

Khoảng trắng, 2748 byte

(thay thế \tbằng các tab thực tế)

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,

Đây là một phiên bản nhạc chuông khủng khiếp của The Doors with Hello, tôi yêu bạn .

Tải xuống MIDI đã chuyển đổi


Người chơi của tôi không thích nó octave: 2, Cannot index into a null array.. Câu hỏi cho biết chỉ quãng tám 4-8 là hợp lệ, vì vậy đó là tất cả những gì tôi đã mã hóa nó. Âm thanh tốt trên các trang web liên kết, mặc dù.
TessellatingHeckler

À vâng tôi quên mất điều này. Một số người chơi sẽ hỗ trợ thêm quãng tám và một số thì không. Nokia tiêu chuẩn chỉ hỗ trợ 4-8, đó là lý do tại sao tôi đề cập đến điều đó.
một spaghetto

8

H9 +, 157.007 byte

MIDI !!!!

Là quá dài cho bài viết. Vì vậy, ở đây, có một pastebin . (Pastebin không có viết hoa đúng, FYI.) Tôi đã sử dụng các phần mềm sau:

Bài hát là "Quốc ca của ngày chết của chúng ta", theo Câu chuyện của năm. Đây là bài hát đầy đủ, 3,5 phút. ^-^.

Nó bắt đầu với:

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

H, tất nhiên, in Hello, World!. Và không có 9s cũng không có +trong mã, tôi chắc chắn. Điều tốt là đây không phải là một .


Magnifique. +1 cho bạn
một spaghetto

@quartata Merci!
Conor O'Brien

1
Hmm, có vẻ như một đàn llamas đang chạy xung quanh trên 10 cây đàn piano, đó có phải là dự định, hoặc một số vấn đề phát lại về phía tôi?
aditsu

@aditsu Nó là loại; nó chỉ là một bài hát rock khá mãnh liệt.
Conor O'Brien

4
-1 không triển khai thông số kỹ thuật (" xuất ra" Xin chào, Thế giới! "(Chính xác) ") và không được viết bằng ngôn ngữ lập trình .
Peter Taylor

7

123 , 816 byte

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

Tải giai điệu

Đây chỉ là tiếng bíp nhịp nhàng, nhưng ngôn ngữ chắc chắn có nhiều tiềm năng hơn cho thử thách này, vì trong 123, tất cả các ký tự ngoại trừ 1, 2 và 3 đều bị bỏ qua. Tín dụng cho mã 123 gốc đi đến Martin Büttner .


Wow, chưa bao giờ thấy ngôn ngữ này trước đây. Đẹp quá
một spaghetto

2

Python 2.7, 1606 byte

Được rồi, vì vậy nó không bị xáo trộn đáng kinh ngạc, nhưng nó hoạt động. Tôi đã chuyển đổi nó thành một tập tin midi và nó chơi.

Giai điệu là Still Alive từ Portal . Tôi đã nhận được giai điệu như một tập tin midi từ đây , sau đó tôi đã chuyển đổi thành RTTL. Một vài ghi chú cuối cùng đã tắt, nhưng tôi nghĩ điều đó không sao cả.

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]

Có vẻ như nó đã chuyển xung quanh các phần giai điệu và sao lưu / phản giai điệu ở nhiều nơi khác nhau. Có thể có một phiên bản chỉ có giai điệu ở đâu đó.
cole

Ừm .. chương trình của bạn dường như không phải là một bài hát RTTTL hợp lệ
aditsu

@aditsu Cách duy nhất tôi có thể kiểm tra xem nó có hợp lệ hay không bằng cách chuyển đổi nó thành tập tin midi, vì vậy ... bạn sẽ phải cho tôi biết nó không hợp lệ như thế nào.
Trạng thái

3
Chà, 2f#'dường như không phải là một ghi chú hợp lệ, và cũng không ''.join(map(chr, v.v.
aditsu

1
Nó ở ngay trong văn bản thách thức: "Định dạng của ghi chú là DPO, trong đó D là thời lượng của ghi chú [Cách]" - đọc toàn bộ đoạn văn.
aditsu

1

Chiều dài

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

Tiếp theo là nhiều ánh mắt của không gian sao cho tổng chiều dài là 150306725405247424813082671095009555930972306375297366901721134222563463360025683946401363734706798738542991492

Chuyển đổi và tải xuống (lưu ý: mã được cắt bớt để tiết kiệm băng thông, nhưng midi kết quả phải giống nhau)


2
Lionel Richie - "Xin chào"?
LukStorms

@LukStorms có! :)
aditsu
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.