{"id":1138,"date":"2018-02-27T15:02:27","date_gmt":"2018-02-27T23:02:27","guid":{"rendered":"http:\/\/tre.ucsd.edu\/wordpress\/?p=1138"},"modified":"2018-02-28T10:31:42","modified_gmt":"2018-02-28T18:31:42","slug":"granular-patches","status":"publish","type":"post","link":"https:\/\/tre.ucsd.edu\/wordpress\/?p=1138","title":{"rendered":"MUS271A (Max w8) &#8211; granular patches"},"content":{"rendered":"<p>Here are all the patches for this topic:\u00a0<a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/06-granular.zip\">06-granular<\/a><\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.14.40-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1139 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.14.40-PM-300x263.png\" alt=\"Screen Shot 2018-02-27 at 2.14.40 PM\" width=\"300\" height=\"263\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.14.40-PM-300x263.png 300w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.14.40-PM-342x300.png 342w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.14.40-PM.png 607w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>1) this first patch demonstrates basic granular synthesis using the poly~ object and metro. &#8220;note&#8221; is prepended to the message sent to poly~ as it is typically used for polyphony.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.19.10-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1140 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.19.10-PM-216x300.png\" alt=\"Screen Shot 2018-02-27 at 2.19.10 PM\" width=\"216\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.19.10-PM-216x300.png 216w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.19.10-PM.png 397w\" sizes=\"(max-width: 216px) 100vw, 216px\" \/><\/a>the sine grain abstraction is a random pitch sine wave generation with a raised cosine envelope. to turn a cosine into an envelope\/window, one must invert it, cut the amplitude by 1\/2 and shift it up by 1\/2 so that it starts at 0, goes up to 1, and ends at zero. this inverted and shifted cosine is known as a raised cosine window.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.55.37-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1141 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.55.37-PM-209x300.png\" alt=\"Screen Shot 2018-02-27 at 2.55.37 PM\" width=\"209\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.55.37-PM-209x300.png 209w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.55.37-PM.png 353w\" sizes=\"(max-width: 209px) 100vw, 209px\" \/><\/a>2) this example adds 2 operator FM synthesis to a granular framework. the external patch is almost identical to the previous example except that more parameters are packed together and sent to the poly~ object.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.59.44-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1142 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.59.44-PM-280x300.png\" alt=\"Screen Shot 2018-02-27 at 2.59.44 PM\" width=\"280\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.59.44-PM-280x300.png 280w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-2.59.44-PM.png 530w\" sizes=\"(max-width: 280px) 100vw, 280px\" \/><\/a>the &#8220;grain&#8221; abstraction is similar to the previous example except that for each grain a random ratio and index is generated and given to a small fm2op abstraction (below).<\/p>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.01.59-PM.png\"><img loading=\"lazy\" class=\"alignleft size-medium wp-image-1143\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.01.59-PM-210x300.png\" alt=\"Screen Shot 2018-02-27 at 3.01.59 PM\" width=\"210\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.01.59-PM-210x300.png 210w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.01.59-PM.png 332w\" sizes=\"(max-width: 210px) 100vw, 210px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.44.30-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1146 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.44.30-PM-300x257.png\" alt=\"Screen Shot 2018-02-27 at 3.44.30 PM\" width=\"300\" height=\"257\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.44.30-PM-300x257.png 300w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.44.30-PM-350x300.png 350w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.44.30-PM.png 626w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.46.57-PM.png\"><img loading=\"lazy\" class=\"alignright wp-image-1147 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.46.57-PM-222x300.png\" alt=\"Screen Shot 2018-02-27 at 3.46.57 PM\" width=\"222\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.46.57-PM-222x300.png 222w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.46.57-PM.png 465w\" sizes=\"(max-width: 222px) 100vw, 222px\" \/><\/a>3) the third example is a granular harmonic oscillator in which each grain generates a random harmonic of the base pitch.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>The abstraction is almost identical to the original sine example except that an additional random object is added to create the harmonic frequency multiplier.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.52.52-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1148 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.52.52-PM-300x255.png\" alt=\"Screen Shot 2018-02-27 at 3.52.52 PM\" width=\"300\" height=\"255\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.52.52-PM-300x255.png 300w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.52.52-PM-353x300.png 353w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.52.52-PM.png 780w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><a href=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.54.14-PM.png\"><img loading=\"lazy\" class=\"alignleft wp-image-1149 size-medium\" src=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.54.14-PM-208x300.png\" alt=\"Screen Shot 2018-02-27 at 3.54.14 PM\" width=\"208\" height=\"300\" srcset=\"https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.54.14-PM-208x300.png 208w, https:\/\/tre.ucsd.edu\/wordpress\/wp-content\/uploads\/2018\/02\/Screen-Shot-2018-02-27-at-3.54.14-PM.png 501w\" sizes=\"(max-width: 208px) 100vw, 208px\" \/><\/a>4) The final example is a granular sound file player which randomizes the playback start position. A slider in the main patch is used to set the original start position. The sound needs to be loaded with the &#8220;replace&#8221; message before this patch will work.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>The playback abstraction requires a little more logic to derive the playback start, end and time from the pitch and position parameters in the main patch.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here are all the patches for this topic:\u00a006-granular &nbsp; 1) this first patch demonstrates basic granular synthesis using the poly~ object and metro. &#8220;note&#8221; is prepended to the message sent to poly~ as it is typically used for polyphony. &nbsp; &hellip; <a href=\"https:\/\/tre.ucsd.edu\/wordpress\/?p=1138\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[22],"tags":[],"_links":{"self":[{"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1138"}],"collection":[{"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1138"}],"version-history":[{"count":7,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1138\/revisions"}],"predecessor-version":[{"id":1176,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1138\/revisions\/1176"}],"wp:attachment":[{"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1138"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1138"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tre.ucsd.edu\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}