{"id":19239,"date":"2015-04-27T11:46:45","date_gmt":"2015-04-27T15:46:45","guid":{"rendered":"https:\/\/reactivemusic.net\/?p=19239"},"modified":"2015-04-28T00:31:37","modified_gmt":"2015-04-28T04:31:37","slug":"ep-341-maxmsp-spring-2015-week-14","status":"publish","type":"post","link":"https:\/\/reactivemusic.net\/?p=19239","title":{"rendered":"ep-341 Max\/MSP \u2013 Spring 2015 week 14"},"content":{"rendered":"<p>(under construction)<\/p>\n<p class=\"lead\">Algorithmic composition and generative music \u2013 part 3<\/p>\n<p><a href=\"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-17282\" src=\"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png\" alt=\"\" width=\"300\" height=\"213\" \/><\/a><\/p>\n<p>Sensors, sonification, and data.<\/p>\n<h4>Sensors<\/h4>\n<ul>\n<li>Arduino download:\u00a0<a style=\"line-height: normal;\" href=\"http:\/\/www.arduino.cc\/en\/Main\/Software\">http:\/\/www.arduino.cc\/en\/Main\/Software<\/a><\/li>\n<li>Convert photocell data to MIDI:\u00a0<a style=\"line-height: normal;\" href=\"https:\/\/reactivemusic.net\/?p=19230\">https:\/\/reactivemusic.net\/?p=19230<\/a><\/li>\n<\/ul>\n<h4>Data<\/h4>\n<h5>Vine API in Max<\/h5>\n<p>A Max patch that displays, transforms, and responds to internet data.<\/p>\n<h5>building materials<\/h5>\n<ul>\n<li>Max (6.1.7 or newer)<\/li>\n<li>Soundflower &#8211;<\/li>\n<\/ul>\n<p>Both available from Cycling 74\u00a0<a href=\"http:\/\/cycling74.com\/\">http:\/\/cycling74.com\/<\/a><\/p>\n<p>The Max patch is based on a tutorial by dude837 called &#8220;Automatic Silly Video Generator&#8221;<\/p>\n<p><iframe loading=\"lazy\" title=\"Delicious Max 6 Tutorial 54: Automatic Silly Video Generator\" width=\"525\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/VDQfwODQc48?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<h5>download<\/h5>\n<p>The patch at the download link in the video is broken &#8211; but the javascript code for the Max js object is intact.<\/p>\n<p>Download the entire patch from the Max-projects archive:\u00a0<a href=\"https:\/\/github.com\/tkzic\/max-projects\">https:\/\/github.com\/tkzic\/max-projects\u00a0<\/a>folder: maxvine<\/p>\n<h5>Internet API&#8217;s<\/h5>\n<p>API&#8217;s (application programming interfaces) provide methods for programs (other than web browsers) to access Internet data. Any app that access data from the web uses an API.<\/p>\n<p>Here is a link to information about the Vine API:\u00a0<a href=\"https:\/\/github.com\/starlock\/vino\/wiki\/API-Reference\">https:\/\/github.com\/starlock\/vino\/wiki\/API-Reference<\/a><\/p>\n<p>For example, if you copy this URL into a web browser address bar, it will return a block of data in JSON format about the most popular videos on Vine:\u00a0<a href=\"https:\/\/api.vineapp.com\/timelines\/popular\">https:\/\/api.vineapp.com\/timelines\/popular<\/a><\/p>\n<h5>HTTP requests<\/h5>\n<p>An HTTP request transfers data to or from a server. A web browser handles HTTP requests in the background. You can also write programs that make HTTP requests. A\u00a0 program called &#8220;curl&#8221; runs http requests from the terminal command line. Here are examples:\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=5916\">https:\/\/reactivemusic.net\/?p=5916<\/a><\/p>\n<h5>Response data<\/h5>\n<p>Data is usually returned in one of 3 formats:<\/p>\n<ul>\n<li>JSON<\/li>\n<li>XML<\/li>\n<li>HTML<\/li>\n<\/ul>\n<p>JSON is the preferred method because its easy to access the data structure.<\/p>\n<h5>Max HTTP requests<\/h5>\n<p>There are several ways to make HTTP requests in Max, but the best method is the js object: Here is the code that runs the GET request for the Vine API:<\/p>\n<pre>function get(url)\r\n{\r\n\u00a0\u00a0 \u00a0var ajaxreq = new XMLHttpRequest();\r\n\u00a0\u00a0 \u00a0ajaxreq.open(&quot;GET&quot;, url);\r\n\u00a0\u00a0 \u00a0ajaxreq.onreadystatechange = readystatechange;\r\n\u00a0\u00a0 \u00a0ajaxreq.send();\r\n}\r\n\r\nfunction readystatechange()\r\n{\r\n\u00a0\u00a0 \u00a0var rawtext = this._getResponseKey(&quot;body&quot;);\r\n\u00a0\u00a0 \u00a0var body = JSON.parse(rawtext);\r\n\u00a0\u00a0 \u00a0outlet(0, body.data.records[0].videoUrl);\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<p>The function: get() formats and sends an HTTP request using the URL passed in with the get message from Max. When the data is returned to Max, the readystatechange() function parses it and sends the URL of the most popular Vine video out the left outlet of the js object.<\/p>\n<h5>Playing Internet audio\/video files in Max<\/h5>\n<p>The qt.movie object will play videos, with the URL passed in by the read message.<\/p>\n<p>Unfortunately, qt.movie sends its audio to the system, not to Max. You can use Soundflower, or a virtual audio routing app, to get the audio back into Max.<\/p>\n<h5>MBTA API<\/h5>\n<ul>\n<li>developer portal:\u00a0<a style=\"line-height: normal;\" href=\"https:\/\/reactivemusic.net\/?p=17511\">https:\/\/reactivemusic.net\/?p=17511<\/a><\/li>\n<li>MBTA Bus data in Max:\u00a0<a style=\"line-height: normal;\" href=\"https:\/\/reactivemusic.net\/?p=17524\">https:\/\/reactivemusic.net\/?p=17524<\/a><\/li>\n<\/ul>\n<h5>Audio from video<\/h5>\n<p><a href=\"https:\/\/reactivemusic.net\/?p=12570\">https:\/\/reactivemusic.net\/?p=12570<\/a><\/p>\n<ul>\n<li>Color tracking (histogram analysis:\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=12598\">https:\/\/reactivemusic.net\/?p=12598<\/a><\/li>\n<li>frame subtraction<\/li>\n<li>frame subtraction with jit.cv<\/li>\n<li>Vizzie: analyzr<\/li>\n<\/ul>\n<h5>Video from audio<\/h5>\n<p><a href=\"https:\/\/reactivemusic.net\/?p=12570\">https:\/\/reactivemusic.net\/?p=12570<\/a><\/p>\n<ul>\n<li>Vizzie\u00a0\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=11777\">https:\/\/reactivemusic.net\/?p=11777<\/a><\/li>\n<li>Amplitude, spectrum, and transient detection.<\/li>\n<li>spigot~\u00a0<a href=\"https:\/\/www.youtube.com\/watch?v=qSOqC3lqEnY\">https:\/\/www.youtube.com\/watch?v=qSOqC3lqEnY<\/a><\/li>\n<\/ul>\n<h5>Sonification of Vine videos<\/h5>\n<p><a href=\"https:\/\/github.com\/tkzic\/max-projects\/tree\/master\/maxvine\">https:\/\/github.com\/tkzic\/max-projects\/tree\/master\/maxvine<\/a><\/p>\n<p>patch: maxvine-analyzer.maxpat (requires other files in the maxvine folder)<\/p>\n<p>Steve Hensley example: local file: shensely_maxvine.maxpat<\/p>\n<h4>References<\/h4>\n<p>There is a large archive of examples here: Internet sensors:\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=5859\">https:\/\/reactivemusic.net\/?p=5859<\/a><\/p>\n<h5>Aggregators<\/h5>\n<p>There are API services that consolidate many API&#8217;s into one API. For example:<\/p>\n<ul>\n<li>Temboo<a href=\"https:\/\/www.temboo.com\/library\/\">\u00a0https:\/\/www.temboo.com\/library\/<\/a><\/li>\n<li>Mashape<\/li>\n<li>IFTTT<\/li>\n<\/ul>\n<h5>Scaling data<\/h5>\n<p>Look at the Max tutorial (built in to Max Help) called &#8220;Data : data scaling&#8221; It contains most of what you need to know to work with streams of data.<\/p>\n<p>Curl examples:\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=5916\">https:\/\/reactivemusic.net\/?p=5916<\/a><\/p>\n<h4>Assignment<\/h4>\n<p>Algorithmic\/generative music. Due in class next week.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(under construction) Algorithmic composition and generative music \u2013 part 3 Sensors, sonification, and data. Sensors Arduino download:\u00a0http:\/\/www.arduino.cc\/en\/Main\/Software Convert photocell data to MIDI:\u00a0https:\/\/reactivemusic.net\/?p=19230 Data Vine API in Max A Max patch that displays, transforms, and responds to internet data. building materials Max (6.1.7 or newer) Soundflower &#8211; Both available from Cycling 74\u00a0http:\/\/cycling74.com\/ The Max patch is &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/reactivemusic.net\/?p=19239\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;ep-341 Max\/MSP \u2013 Spring 2015 week 14&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","footnotes":""},"categories":[142,28],"tags":[13],"class_list":["post-19239","post","type-post","status-publish","format-standard","hentry","category-ideas","category-maxmsp","tag-teaching"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ep-341 Max\/MSP \u2013 Spring 2015 week 14 - reactive music<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/reactivemusic.net\/?p=19239\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ep-341 Max\/MSP \u2013 Spring 2015 week 14 - reactive music\" \/>\n<meta property=\"og:description\" content=\"(under construction) Algorithmic composition and generative music \u2013 part 3 Sensors, sonification, and data. Sensors Arduino download:\u00a0http:\/\/www.arduino.cc\/en\/Main\/Software Convert photocell data to MIDI:\u00a0https:\/\/reactivemusic.net\/?p=19230 Data Vine API in Max A Max patch that displays, transforms, and responds to internet data. building materials Max (6.1.7 or newer) Soundflower &#8211; Both available from Cycling 74\u00a0http:\/\/cycling74.com\/ The Max patch is &hellip; Continue reading &quot;ep-341 Max\/MSP \u2013 Spring 2015 week 14&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/reactivemusic.net\/?p=19239\" \/>\n<meta property=\"og:site_name\" content=\"reactive music\" \/>\n<meta property=\"article:published_time\" content=\"2015-04-27T15:46:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2015-04-28T04:31:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png\" \/>\n<meta name=\"author\" content=\"Tom Zicarelli\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tom Zicarelli\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239\"},\"author\":{\"name\":\"Tom Zicarelli\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#\\\/schema\\\/person\\\/56224d281582df7e5518e037ca63e571\"},\"headline\":\"ep-341 Max\\\/MSP \u2013 Spring 2015 week 14\",\"datePublished\":\"2015-04-27T15:46:45+00:00\",\"dateModified\":\"2015-04-28T04:31:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239\"},\"wordCount\":602,\"image\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/reactivemusic.net\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png\",\"keywords\":[\"teaching\"],\"articleSection\":[\"ideas\",\"Max\\\/MSP\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239\",\"url\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239\",\"name\":\"ep-341 Max\\\/MSP \u2013 Spring 2015 week 14 - reactive music\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/reactivemusic.net\\\/wp-content\\\/uploads\\\/2014\\\/10\\\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png\",\"datePublished\":\"2015-04-27T15:46:45+00:00\",\"dateModified\":\"2015-04-28T04:31:37+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#\\\/schema\\\/person\\\/56224d281582df7e5518e037ca63e571\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/reactivemusic.net\\\/?p=19239\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#primaryimage\",\"url\":\"\",\"contentUrl\":\"\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=19239#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/reactivemusic.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ep-341 Max\\\/MSP \u2013 Spring 2015 week 14\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#website\",\"url\":\"https:\\\/\\\/reactivemusic.net\\\/\",\"name\":\"reactive music\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/reactivemusic.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#\\\/schema\\\/person\\\/56224d281582df7e5518e037ca63e571\",\"name\":\"Tom Zicarelli\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g\",\"caption\":\"Tom Zicarelli\"},\"sameAs\":[\"http:\\\/\\\/tomzicarelli.com\"],\"url\":\"https:\\\/\\\/reactivemusic.net\\\/?author=2\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ep-341 Max\/MSP \u2013 Spring 2015 week 14 - reactive music","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/reactivemusic.net\/?p=19239","og_locale":"en_US","og_type":"article","og_title":"ep-341 Max\/MSP \u2013 Spring 2015 week 14 - reactive music","og_description":"(under construction) Algorithmic composition and generative music \u2013 part 3 Sensors, sonification, and data. Sensors Arduino download:\u00a0http:\/\/www.arduino.cc\/en\/Main\/Software Convert photocell data to MIDI:\u00a0https:\/\/reactivemusic.net\/?p=19230 Data Vine API in Max A Max patch that displays, transforms, and responds to internet data. building materials Max (6.1.7 or newer) Soundflower &#8211; Both available from Cycling 74\u00a0http:\/\/cycling74.com\/ The Max patch is &hellip; Continue reading \"ep-341 Max\/MSP \u2013 Spring 2015 week 14\"","og_url":"https:\/\/reactivemusic.net\/?p=19239","og_site_name":"reactive music","article_published_time":"2015-04-27T15:46:45+00:00","article_modified_time":"2015-04-28T04:31:37+00:00","og_image":[{"url":"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png","type":"","width":"","height":""}],"author":"Tom Zicarelli","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tom Zicarelli","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/reactivemusic.net\/?p=19239#article","isPartOf":{"@id":"https:\/\/reactivemusic.net\/?p=19239"},"author":{"name":"Tom Zicarelli","@id":"https:\/\/reactivemusic.net\/#\/schema\/person\/56224d281582df7e5518e037ca63e571"},"headline":"ep-341 Max\/MSP \u2013 Spring 2015 week 14","datePublished":"2015-04-27T15:46:45+00:00","dateModified":"2015-04-28T04:31:37+00:00","mainEntityOfPage":{"@id":"https:\/\/reactivemusic.net\/?p=19239"},"wordCount":602,"image":{"@id":"https:\/\/reactivemusic.net\/?p=19239#primaryimage"},"thumbnailUrl":"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png","keywords":["teaching"],"articleSection":["ideas","Max\/MSP"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/reactivemusic.net\/?p=19239","url":"https:\/\/reactivemusic.net\/?p=19239","name":"ep-341 Max\/MSP \u2013 Spring 2015 week 14 - reactive music","isPartOf":{"@id":"https:\/\/reactivemusic.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/reactivemusic.net\/?p=19239#primaryimage"},"image":{"@id":"https:\/\/reactivemusic.net\/?p=19239#primaryimage"},"thumbnailUrl":"https:\/\/reactivemusic.net\/wp-content\/uploads\/2014\/10\/Screen-Shot-2014-10-14-at-1.41.54-AM-300x213.png","datePublished":"2015-04-27T15:46:45+00:00","dateModified":"2015-04-28T04:31:37+00:00","author":{"@id":"https:\/\/reactivemusic.net\/#\/schema\/person\/56224d281582df7e5518e037ca63e571"},"breadcrumb":{"@id":"https:\/\/reactivemusic.net\/?p=19239#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/reactivemusic.net\/?p=19239"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/reactivemusic.net\/?p=19239#primaryimage","url":"","contentUrl":""},{"@type":"BreadcrumbList","@id":"https:\/\/reactivemusic.net\/?p=19239#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/reactivemusic.net\/"},{"@type":"ListItem","position":2,"name":"ep-341 Max\/MSP \u2013 Spring 2015 week 14"}]},{"@type":"WebSite","@id":"https:\/\/reactivemusic.net\/#website","url":"https:\/\/reactivemusic.net\/","name":"reactive music","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/reactivemusic.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/reactivemusic.net\/#\/schema\/person\/56224d281582df7e5518e037ca63e571","name":"Tom Zicarelli","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0da58cf21a2707dd335b204b8ed3cd9194dcbf9d9814ac5d71195a65c76c8a72?s=96&d=mm&r=g","caption":"Tom Zicarelli"},"sameAs":["http:\/\/tomzicarelli.com"],"url":"https:\/\/reactivemusic.net\/?author=2"}]}},"_links":{"self":[{"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts\/19239","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=19239"}],"version-history":[{"count":7,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts\/19239\/revisions"}],"predecessor-version":[{"id":19267,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts\/19239\/revisions\/19267"}],"wp:attachment":[{"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=19239"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=19239"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=19239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}