{"id":787,"date":"2018-12-19T17:56:22","date_gmt":"2018-12-19T21:56:22","guid":{"rendered":"http:\/\/hub.vpa.mtu.edu\/?p=787"},"modified":"2023-05-03T15:08:41","modified_gmt":"2023-05-03T19:08:41","slug":"stockero-soundscape-generator","status":"publish","type":"post","link":"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/","title":{"rendered":"Stockero Soundscape Generator"},"content":{"rendered":"\n<p>The Stockero Soundscape Generator is a Max patch that when combined with an Arduino (or other external form of input) allows for the creation of an interactive soundscape for display in a public setting. Using iPad interface as well as serial input, this patch works by remembering the millisecond in the larger loop (or soundscape) at which an event was triggered so that it can be continually triggered as the content loops. As participants interact with the exhibit, the soundscape being played continues to change as new event sounds are being added with each interaction. To avoid an overabundance or crowding of the soundscape, it is possible to parameterize how many loop locations are being held by each event trigger.<\/p>\n\n\n<h2>Elements of the Patcher<\/h2>\n<h2>Clock<\/h2>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"789\" data-permalink=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/screen-shot-2018-12-19-at-4-30-14-pm\/\" data-orig-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?fit=864%2C824\" data-orig-size=\"864,824\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Clock Patch\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?fit=864%2C824\" class=\"alignnone size-medium wp-image-789\" src=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?resize=300%2C286\" alt=\"\" width=\"300\" height=\"286\" srcset=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?resize=300%2C286 300w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?resize=768%2C732 768w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.14-PM.png?w=864 864w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>The clock subpatch works by reading in the information about whatever file was dragged into the first loop buffer. After reading in the length of the file, it adjusts the speed at which the phasor counts from 0 to 1. The phasor output is what acts as the universal clock for letting the rest of the patcher know where in the loop the playhead is.<\/p>\n<h2>Serial Input<\/h2>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"790\" data-permalink=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/screen-shot-2018-12-19-at-4-30-28-pm\/\" data-orig-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?fit=1280%2C1334\" data-orig-size=\"1280,1334\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Serial subpatch\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?fit=983%2C1024\" class=\"alignnone size-medium wp-image-790\" src=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?resize=288%2C300\" alt=\"\" width=\"288\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?resize=288%2C300 288w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?resize=768%2C800 768w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?resize=983%2C1024 983w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.28-PM.png?w=1280 1280w\" sizes=\"auto, (max-width: 288px) 100vw, 288px\" \/><\/p>\n<p>The serial input subpatch allows the main patch to read in serial data from an external device. In the prototype build that device was an Arduino outputting acceleration data. Note that in Max when reading serial data you must get rid of the 13 and 10 numbers that appear before each data read.<\/p>\n<h2>Live Record<\/h2>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"791\" data-permalink=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/screen-shot-2018-12-19-at-4-30-43-pm\/\" data-orig-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?fit=1226%2C940\" data-orig-size=\"1226,940\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Live Record Sub\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?fit=1024%2C785\" class=\"alignnone size-medium wp-image-791\" src=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?resize=300%2C230\" alt=\"\" width=\"300\" height=\"230\" srcset=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?resize=300%2C230 300w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?resize=768%2C589 768w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?resize=1024%2C785 1024w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?resize=80%2C60 80w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.43-PM.png?w=1226 1226w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>The live record subpatch operates on a set threshold to know when to start and stop recording into a buffer. When recording begins the subpatch also marks the clock value so that the buffer can be played during the next cycle of the loop. This patch also remembers when it stops recording so that it can add a fade to the end of the recording.<\/p>\n<h2>Random Player<\/h2>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"792\" data-permalink=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/screen-shot-2018-12-19-at-4-30-58-pm\/\" data-orig-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?fit=958%2C782\" data-orig-size=\"958,782\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Random Player\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?fit=958%2C782\" class=\"alignnone size-medium wp-image-792\" src=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?resize=300%2C245\" alt=\"\" width=\"300\" height=\"245\" srcset=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?resize=300%2C245 300w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?resize=768%2C627 768w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.30.58-PM.png?w=958 958w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>The random player subpatch plays a sound from a group of files based upon a randomly generated number. Much like live record it also remembers when these sounds were triggered so that they are essentially added to the loop. Lastly a reverb plugin is in place that can have it&#8217;s setting adjusted through externally triggered &#8220;snapshots&#8221; of various reverb presets.<\/p>\n<h2>Fade<\/h2>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"793\" data-permalink=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/screen-shot-2018-12-19-at-4-31-09-pm\/\" data-orig-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.31.09-PM.png?fit=592%2C726\" data-orig-size=\"592,726\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"fade subpatch\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.31.09-PM.png?fit=592%2C726\" class=\"alignnone size-medium wp-image-793\" src=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.31.09-PM.png?resize=245%2C300\" alt=\"\" width=\"245\" height=\"300\" srcset=\"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.31.09-PM.png?resize=245%2C300 245w, https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-4.31.09-PM.png?w=592 592w\" sizes=\"auto, (max-width: 245px) 100vw, 245px\" \/><\/p>\n<p>The fade subpatch is the simplest of the subpatches as it simply changes the output level of the loops based upon which input receives a bang.\u00a0<\/p>\n<p>\u00a0<\/p>\n\n\n<p>Want to investigate further? Feel free to download this zip containing the Max patch and Arduino code used on the project.<\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-1e54f854-a3a9-44d2-9613-2491960d1ead\" href=\"http:\/\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/SoundscapeGeneratorFiles.zip\">SoundscapeGeneratorFiles<\/a><a href=\"http:\/\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/SoundscapeGeneratorFiles.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-1e54f854-a3a9-44d2-9613-2491960d1ead\">Download<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>The Stockero Soundscape Generator is a Max patch that when combined with an Arduino (or other external form of input) allows for the creation of an interactive soundscape for display in a public setting. Using <a class=\"mh-excerpt-more\" href=\"http:\/\/hub.vpa.mtu.edu\/index.php\/2018\/12\/19\/stockero-soundscape-generator\/\" title=\"Stockero Soundscape Generator\">[&#8230;]<\/a><\/p>\n<\/div>","protected":false},"author":9,"featured_media":788,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[7,1],"tags":[],"class_list":["post-787","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-live-sound","category-uncategorized"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/hub.vpa.mtu.edu\/wp-content\/uploads\/2018\/12\/Screen-Shot-2018-12-19-at-3.29.23-PM.png?fit=1430%2C1166","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7tfSI-cH","jetpack-related-posts":[],"_links":{"self":[{"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/posts\/787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/comments?post=787"}],"version-history":[{"count":5,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/posts\/787\/revisions"}],"predecessor-version":[{"id":1153,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/posts\/787\/revisions\/1153"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/media\/788"}],"wp:attachment":[{"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/media?parent=787"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/categories?post=787"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/hub.vpa.mtu.edu\/index.php\/wp-json\/wp\/v2\/tags?post=787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}