Title: Sounds of Gox
Post by: bb113 on July 09, 2012, 07:16:14 AM
Interesting idea.. found this vid while searching on youtube
"The "White Noise" in this track is an aural exploration of the first 2% of the BitCoin BlockChain."
http://www.youtube.com/watch?v=8WivyA3-aww
doesn't say exactly how it was generated from the blockchain (or if directly at all!).
https://bitcointalk.org/index.php?topic=91908.0 This was inspired by the above post. It turned out pretty well. http://i45.tinypic.com/2dk0epx.pnghttp://www.youtube.com/watch?v=46TMVKEuYIc&list=HL1341816261&feature=mh_lolz I couldn't figure out the right way to do this, so ended up just using a work around to write some of this half-manually in excel. If anyone knows the better way (allow someone to just make sine waves from each entry in the matrix, then concatenate them all, advice would be appreciated). Data used: 0.04951 0.08584 0.0808 0.07474 0.07921 0.0505 0.06262 0.05454 0.0505 0.056 0.06 0.0589 0.0699 0.0627 0.06785 0.0611 0.06 0.06 0.057 0.061 0.0623 0.059 0.0609 0.071 0.07 0.067 0.07 0.0645 0.067 0.06529 0.0655 0.07 0.068 0.0667 0.0655 0.0664 0.066 0.06491 0.065 0.0648 0.064 0.065 0.0641 0.064 0.06497 0.06 0.0629 0.0634 0.06085 0.06238 0.0616 0.0616 0.061 0.062 0.06111 0.0618 0.06366 0.0615 0.06219 0.06199 0.0604 0.0619 0.059 0.061 0.0627 0.0621 0.06265 0.0622 0.06231 0.0622 0.06202 0.062 0.0622 0.0619 0.06191 0.0619 0.06197 0.0614 0.06111 0.0613 0.0614 0.06281 0.067 0.08685 0.0938 0.0965 0.095 0.0949 0.105 0.102 0.105 0.101 0.102 0.1024 0.097 0.099 0.107 0.1025 0.1055 0.11501 0.132 0.1503 0.1877 0.1731 0.19 0.1989 0.1925 0.1955 0.1938 0.1931 0.23 0.26 0.39 0.34 0.243 0.21 0.24 0.2231 0.2682 0.276 0.27904 0.2682 0.223 0.2299 0.2678 0.28 0.28301 0.27675 0.2879 0.28295 0.28299 0.28 0.2844 0.283 0.27 0.2299 0.2082 0.2275 0.255 0.25105 0.205 0.19 0.204 0.233 0.2388 0.2 0.204 0.228 0.22 0.2299 0.24669 0.23801 0.24996 0.24 0.241 0.2401 0.267 0.24 0.25 0.25 0.248 0.2499 0.265 0.265 0.281 0.3 0.3 0.3 0.3 0.29997 0.295 0.29895 0.299 0.298 0.32 0.3229 0.323 0.32659 0.32659 0.3188 0.3176 0.4 0.386 0.38679 0.3495 0.31299 0.31299 0.39 0.41991 0.4443 0.4424 0.4199 0.41 0.417 0.4212 0.446 0.439 0.4799 0.52001 0.7 0.716 0.69 0.811 0.92 0.89968 0.89 0.918 1.09 0.98031 1.07001 1.0799 1.05 1.07 1.05 1.045 1.04 0.8989 0.94898 0.85 0.8345 0.87023 0.9 0.99743 0.9111 0.958 0.89 0.86 0.92021 0.9399 0.93909 0.901 0.9103 0.8999 0.88502 0.86999 0.86449 0.9329 0.88 0.918 0.89249 0.8949 0.87 0.86 0.82542 0.81648 0.765 0.74108 0.75897 0.80901 0.84971 0.86688 0.88377 0.8552 0.82 0.79898 0.7925 0.7897 0.78461 0.77411 0.78199 0.779 0.68 0.71 0.74 0.7538 0.74999 0.73 0.7369 0.77 0.86 0.9225 1 0.98991 1.0499 1.1123 1.16199 1.1979 1.1421 1.21 1.40901 1.7001 1.63011 1.559 1.7949 1.9 2.21059 2.88 3.5 3.03311 3.2 3.41 3.40609 3.333 3.45 3.641 3.8659 3.8 5.81 5.5 6.30019 8.198 7.19769 6.98701 8.03388 7.19 6.88 6.805 5.59039 6.11971 6.6901 7.14991 7.42 8.3997 8.798 8.5002 8.3001 8.4299 8.8 8.741 9.57 10.6 14.29 18.89 16.7 18.5499 23.9234 29.6 28.919 23.9497 14.6511 18.5464 19.84 19.28 19.49 17 15.681 16.89 17.51 0.00 0.00 0.00 0.00 0.00 0.00 16.45001 16.75004 16.9498 16.845 16.10098 15.397 15.4 15.44049 13.86 12.90691 14.78347 14.77609 14.31399 14.38 14.9 14.20912 14.00943 13.95099 13.99 13.81 13.7191 13.16 13.48 13.85024 13.68943 13.61 13.69542 13.68 13.98001 14.0478 13.88214 13.9394 13.49011 13.49832 13.53034 13.35 13.0946 12.05 9.26 10.75 9.7999 6.55 7.9 7.79991 9.99 9.98 9.46248 9.46051 10.131 10.7957 11.14979 10.96409 10.94555 10.83001 11.65 11.453 11.31125 10.895 10.94001 10.8506 9.65702 8.17939 8.5902 9.07011 8.969 8.79134 8.19951 8.21 8.64 8.48 8.17798 7.61101 6.8628 7.1864 6.53 5.03 4.7739 5.86435 6.078 5.8 5.61932 4.84 4.82 4.77 5.2 5.46001 6.11191 5.6114 5.42781 5.54514 5.46829 5.33 4.86969 4.9156 4.77247 4.77935 5.14009 5.03241 5.02701 5.02401 4.96 4.87 4.73443 4.2728 4.00753 4.10288 4.1 3.9308 4.15 4.04615 3.98791 3.84214 3.55701 2.55998 2.41901 2.27 2.34801 2.57 3.1588 3.17 2.545 2.77 2.77302 3.04001 3.18999 3.58113 3.27 3.24801 3.15 3.25429 3.152 3.109 2.97002 2.95959 3.00677 3.03501 2.95001 2.83993 3.08001 3.03099 2.99686 2.22 2.32896 2.56035 2.25 2.04999 2.19585 2.2 2.294 2.3289 2.33209 2.4321 2.50612 2.47003 2.47991 2.55 2.75019 2.9701 3.06 3.1151 2.794 2.82809 2.8798 3.03 2.99001 2.98 2.96999 3.05 3.2511 3.135 3.2499 3.15 3.2 3.2 3.2001 3.193 3.5202 3.95 3.89 3.8901 3.94678 3.94 4.225 4.018 4.06997 4.18552 4.166 4.248 4.72202 5.26766 5.21678 4.8808 5.57383 6.9476 6.69693 6.81 7.11358 6.3257 6.36 6.9 6.79999 6.41 6.75001 7.00177 6.68254 5.59998 5.92 6.35979 6.48979 6.18 6.3097 6.356 6.28978 5.75 5.34 5.29199 5.62667 5.3809 5.49048 5.48379 6.07561 6.1 5.9593 5.87343 5.68881 5.45345 5.69 5.59998 5.83 5.9126 5.6005 5.51468 5.26 4.46292 4.3251 4.2739 4.41 4.22201 4.38669 4.36146 4.272 4.42474 5.015 5.0288 4.77302 4.922 4.95598 4.86798 4.86001 4.9213 4.70499 4.61436 4.82001 4.98427 4.9901 4.93752 4.93016 4.86112 4.83315 4.91 4.89005 5.27 5.38 5.32656 5.34388 5.2159 5.27943 4.6939 4.8379 4.81488 4.7043 4.68596 4.676 4.55001 4.61911 4.81125 4.788 4.80838 4.86 4.90873 4.827 4.974 4.952 4.91008 4.919 4.94991 4.68715 4.79252 4.87191 4.83668 4.9279 4.91968 4.93999 4.9597 4.96892 4.93201 4.97587 5.1178 5.13766 5.35 5.26008 5.20352 4.95999 5.09822 5.13182 5.09762 5.10947 4.9794 4.90441 4.9491 5 5.07367 5.13438 5.067 5.077 5.04991 5.07001 5.04997 5.0437 4.85 4.96 4.94619 4.92996 5.00594 5.035 5.0887 5.0998 5.11801 5.0995 5.09002 5.09977 5.09877 5.1397 5.11904 5.14546 5.10324 5.13896 5.1358 5.14997 5.135 5.18011 5.27481 5.24898 5.2051 5.26599 5.44001 5.46001 5.591 5.633 5.55997 5.46829 5.57471 5.70003 5.929 5.9541 6.5 6.4 6.16382 6.30998 6.49876 6.67 6.68008 6.54781 6.4285 6.35002 6.30482 6.4195 6.647 6.60588 6.65 6.68999 6.62898 6.75999 6.44993 6.5101 6.67 6.64811 6.76207
R script: require(tuneR) data<-read.csv("mtgox.csv", header = F) data<-data/max(data) data<-data*1000 data<-data + 80 data<-as.matrix(data) data<-round(data)
w1<-sine(data[1], bit =16, duration = 1, xunit = "time") w2<-sine(data[2], bit =16, duration = 1, xunit = "time") w3<-sine(data[3], bit =16, duration = 1, xunit = "time") w4<-sine(data[4], bit =16, duration = 1, xunit = "time") w5<-sine(data[5], bit =16, duration = 1, xunit = "time") w6<-sine(data[6], bit =16, duration = 1, xunit = "time") w7<-sine(data[7], bit =16, duration = 1, xunit = "time") w8<-sine(data[8], bit =16, duration = 1, xunit = "time") w9<-sine(data[9], bit =16, duration = 1, xunit = "time") w10<-sine(data[10], bit =16, duration = 1, xunit = "time") w11<-sine(data[11], bit =16, duration = 1, xunit = "time") w12<-sine(data[12], bit =16, duration = 1, xunit = "time") w13<-sine(data[13], bit =16, duration = 1, xunit = "time") w14<-sine(data[14], bit =16, duration = 1, xunit = "time") w15<-sine(data[15], bit =16, duration = 1, xunit = "time") w16<-sine(data[16], bit =16, duration = 1, xunit = "time") w17<-sine(data[17], bit =16, duration = 1, xunit = "time") w18<-sine(data[18], bit =16, duration = 1, xunit = "time") w19<-sine(data[19], bit =16, duration = 1, xunit = "time") w20<-sine(data[20], bit =16, duration = 1, xunit = "time") w21<-sine(data[21], bit =16, duration = 1, xunit = "time") w22<-sine(data[22], bit =16, duration = 1, xunit = "time") w23<-sine(data[23], bit =16, duration = 1, xunit = "time") w24<-sine(data[24], bit =16, duration = 1, xunit = "time") w25<-sine(data[25], bit =16, duration = 1, xunit = "time") w26<-sine(data[26], bit =16, duration = 1, xunit = "time") w27<-sine(data[27], bit =16, duration = 1, xunit = "time") w28<-sine(data[28], bit =16, duration = 1, xunit = "time") w29<-sine(data[29], bit =16, duration = 1, xunit = "time") w30<-sine(data[30], bit =16, duration = 1, xunit = "time") w31<-sine(data[31], bit =16, duration = 1, xunit = "time") w32<-sine(data[32], bit =16, duration = 1, xunit = "time") w33<-sine(data[33], bit =16, duration = 1, xunit = "time") w34<-sine(data[34], bit =16, duration = 1, xunit = "time") w35<-sine(data[35], bit =16, duration = 1, xunit = "time") w36<-sine(data[36], bit =16, duration = 1, xunit = "time") w37<-sine(data[37], bit =16, duration = 1, xunit = "time") w38<-sine(data[38], bit =16, duration = 1, xunit = "time") w39<-sine(data[39], bit =16, duration = 1, xunit = "time") w40<-sine(data[40], bit =16, duration = 1, xunit = "time") w41<-sine(data[41], bit =16, duration = 1, xunit = "time") w42<-sine(data[42], bit =16, duration = 1, xunit = "time") w43<-sine(data[43], bit =16, duration = 1, xunit = "time") w44<-sine(data[44], bit =16, duration = 1, xunit = "time") w45<-sine(data[45], bit =16, duration = 1, xunit = "time") w46<-sine(data[46], bit =16, duration = 1, xunit = "time") w47<-sine(data[47], bit =16, duration = 1, xunit = "time") w48<-sine(data[48], bit =16, duration = 1, xunit = "time") w49<-sine(data[49], bit =16, duration = 1, xunit = "time") w50<-sine(data[50], bit =16, duration = 1, xunit = "time") w51<-sine(data[51], bit =16, duration = 1, xunit = "time")
# ...etc to w722
Gox<-bind(w1,w2,w3,w4,w5,w6,w7,w8,w9,w10,w11,w12,w13,w14,w15,w16,w17,w18,w19,w20,w21,w22,w23,w24,w25,w26,w27,w28,w29,w30,w31,w32,w33,w34,w35,w36,w37,w38,w39,w40,w41,w42,w43,w44,w45,w46,w47,w48,w49,w50,w51,w52,w53,w54,w55,w56,w57,w58,w59,w60,w61,w62,w63,w64,w65,w66,w67,w68,w69,w70,w71,w72,w73,w74,w75,w76,w77,w78,w79,w80,w81,w82,w83,w84,w85,w86,w87,w88,w89,w90,w91,w92,w93,w94,w95,w96,w97,w98,w99,w100,w101,w102,w103,w104,w105,w106,w107,w108,w109,w110,w111,w112,w113,w114,w115,w116,w117,w118,w119,w120,w121,w122,w123,w124,w125,w126,w127,w128,w129,w130,w131,w132,w133,w134,w135,w136,w137,w138,w139,w140,w141,w142,w143,w144,w145,w146,w147,w148,w149,w150,w151,w152,w153,w154,w155,w156,w157,w158,w159,w160,w161,w162,w163,w164,w165,w166,w167,w168,w169,w170,w171,w172,w173,w174,w175,w176,w177,w178,w179,w180,w181,w182,w183,w184,w185,w186,w187,w188,w189,w190,w191,w192,w193,w194,w195,w196,w197,w198,w199,w200,w201,w202,w203,w204,w205,w206,w207,w208,w209,w210,w211,w212,w213,w214,w215,w216,w217,w218,w219,w220,w221,w222,w223,w224,w225,w226,w227,w228,w229,w230,w231,w232,w233,w234,w235,w236,w237,w238,w239,w240,w241,w242,w243,w244,w245,w246,w247,w248,w249,w250,w251,w252,w253,w254,w255,w256,w257,w258,w259,w260,w261,w262,w263,w264,w265,w266,w267,w268,w269,w270,w271,w272,w273,w274,w275,w276,w277,w278,w279,w280,w281,w282,w283,w284,w285,w286,w287,w288,w289,w290,w291,w292,w293,w294,w295,w296,w297,w298,w299,w300,w301,w302,w303,w304,w305,w306,w307,w308,w309,w310,w311,w312,w313,w314,w315,w316,w317,w318,w319,w320,w321,w322,w323,w324,w325,w326,w327,w328,w329,w330,w331,w332,w333,w334,w335,w336,w337,w338,w339,w340,w341,w342,w343,w344,w345,w346,w347,w348,w349,w350,w351,w352,w353,w354,w355,w356,w357,w358,w359,w360,w361,w362,w363,w364,w365,w366,w367,w368,w369,w370,w371,w372,w373,w374,w375,w376,w377,w378,w379,w380,w381,w382,w383,w384,w385,w386,w387,w388,w389,w390,w391,w392,w393,w394,w395,w396,w397,w398,w399,w400,w401,w402,w403,w404,w405,w406,w407,w408,w409,w410,w411,w412,w413,w414,w415,w416,w417,w418,w419,w420,w421,w422,w423,w424,w425,w426,w427,w428,w429,w430,w431,w432,w433,w434,w435,w436,w437,w438,w439,w440,w441,w442,w443,w444,w445,w446,w447,w448,w449,w450,w451,w452,w453,w454,w455,w456,w457,w458,w459,w460,w461,w462,w463,w464,w465,w466,w467,w468,w469,w470,w471,w472,w473,w474,w475,w476,w477,w478,w479,w480,w481,w482,w483,w484,w485,w486,w487,w488,w489,w490,w491,w492,w493,w494,w495,w496,w497,w498,w499,w500,w501,w502,w503,w504,w505,w506,w507,w508,w509,w510,w511,w512,w513,w514,w515,w516,w517,w518,w519,w520,w521,w522,w523,w524,w525,w526,w527,w528,w529,w530,w531,w532,w533,w534,w535,w536,w537,w538,w539,w540,w541,w542,w543,w544,w545,w546,w547,w548,w549,w550,w551,w552,w553,w554,w555,w556,w557,w558,w559,w560,w561,w562,w563,w564,w565,w566,w567,w568,w569,w570,w571,w572,w573,w574,w575,w576,w577,w578,w579,w580,w581,w582,w583,w584,w585,w586,w587,w588,w589,w590,w591,w592,w593,w594,w595,w596,w597,w598,w599,w600,w601,w602,w603,w604,w605,w606,w607,w608,w609,w610,w611,w612,w613,w614,w615,w616,w617,w618,w619,w620,w621,w622,w623,w624,w625,w626,w627,w628,w629,w630,w631,w632,w633,w634,w635,w636,w637,w638,w639,w640,w641,w642,w643,w644,w645,w646,w647,w648,w649,w650,w651,w652,w653,w654,w655,w656,w657,w658,w659,w660,w661,w662,w663,w664,w665,w666,w667,w668,w669,w670,w671,w672,w673,w674,w675,w676,w677,w678,w679,w680,w681,w682,w683,w684,w685,w686,w687,w688,w689,w690,w691,w692,w693,w694,w695,w696,w697,w698,w699,w700,w701,w702,w703,w704,w705,w706,w707,w708,w709,w710,w711,w712,w713,w714,w715,w716,w717,w718,w719,w720,w721,w722)
plot(data) data #play(Gox)
Title: Re: Sounds of Gox
Post by: fatigue on July 09, 2012, 07:32:10 AM
lol i like it! the bubble reminded me of galaga
Title: Re: Sounds of Gox
Post by: bb113 on July 10, 2012, 05:58:30 AM
For anyone interested, this will create a 1 min wave file from the first column of a csv you import into R. If you modify it to be longer, keep in mind it requires about 100 mb of RAM per each minute of output: require(tuneR)
#Import headerless data from csv in working directory and convert to matrix data<-read.csv("datafile.csv", header = FALSE) data<-as.matrix(data)
#Selects column of matrix to transform into Hz columnName <- 1 MaxHz = 1000 MinHz = 80 Freqs<-data[,columnName]/max(data[,columnName]) Freqs<-Freqs*MaxHz Freqs<-Freqs + MinHz
#Function to create waveforms with frequencies of input data MakeWave <-function (x) {
Waveform <- sine #Desired waveform: can be sine, sawtooth, square TotalDuration = 60 #Desired duration of output file (in seconds) SampleRate = 44100 #Desired Sample Rate Bitdepth = 16 #Desired Bit Depth d=TotalDuration/length(Freqs) #Sets the duration of note derived from each data point Waveform(x, bit = Bitdepth, duration = d, samp.rate = SampleRate, xunit = "time") }
#Generate output wave object waves<-lapply(Freqs, MakeWave) #Generate Waves from each datapoint waves<-lapply(waves, prepComb) #Smooth Transitions output<-do.call(bind,waves) #Concatenate Waves rm(waves) #Clear individual waves from memory output
### Uncomment to play/save ###
#play(output) #writeWave(output, "output.wav")
|