{"id":5599,"date":"2013-02-22T02:38:27","date_gmt":"2013-02-22T02:38:27","guid":{"rendered":"http:\/\/zerokidz.com\/ideas\/?p=5599"},"modified":"2014-06-14T19:03:29","modified_gmt":"2014-06-14T23:03:29","slug":"osc-in-php","status":"publish","type":"post","link":"https:\/\/reactivemusic.net\/?p=5599","title":{"rendered":"Osc in php"},"content":{"rendered":"<p>The Osc code from the stock market music project\u00a0<a href=\"https:\/\/reactivemusic.net\/?p=12029\">https:\/\/reactivemusic.net\/?p=12029<\/a>\u00a0is\u00a0<span style=\"line-height: 1.6;\">not really doing Osc.<\/span><\/p>\n<p><span style=\"line-height: 1.6;\">But&#8230; it works well going from php-&gt;max. In the other direction its using a kluge of nc and an alarm clock shell program &#8211; to receive messages from Max in UDP, but its really kind of horrible &#8211; so I&#8217;m going to look again for an OSC library in php.<\/span><\/p>\n<p>update 2\/2013 This is hard to believe, but I haven&#8217;t yet found a real OSC libraries for php. Apparently php is so uncool, that nobody wants to write for it anymore. Anyway, the code above, works unidirectionally, so its of some use for existing php code.<\/p>\n<p><span style=\"line-height: 1.6;\">Local files are max-php-osc-tester.maxpat and max-osc-play.php in tkzic\/api<\/span><\/p>\n<p>Analysis that might help with parsing:<\/p>\n<p><cite>from Captain Caveman<\/cite><\/p>\n<p><a href=\"http:\/\/forum.cockos.com\/showthread.php?t=99076\">http:\/\/forum.cockos.com\/showthread.php?t=99076<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Osc code from the stock market music project\u00a0https:\/\/reactivemusic.net\/?p=12029\u00a0is\u00a0not really doing Osc. But&#8230; it works well going from php-&gt;max. In the other direction its using a kluge of nc and an alarm clock shell program &#8211; to receive messages from Max in UDP, but its really kind of horrible &#8211; so I&#8217;m going to look &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/reactivemusic.net\/?p=5599\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Osc in php&#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":[230,143],"tags":[345,105,196,190,198],"class_list":["post-5599","post","type-post","status-publish","format-standard","hentry","category-development","category-interactive-media-art","tag-maxmsp","tag-osc","tag-php","tag-portfolio","tag-upd"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Osc in php - 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=5599\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Osc in php - reactive music\" \/>\n<meta property=\"og:description\" content=\"The Osc code from the stock market music project\u00a0https:\/\/reactivemusic.net\/?p=12029\u00a0is\u00a0not really doing Osc. But&#8230; it works well going from php-&gt;max. In the other direction its using a kluge of nc and an alarm clock shell program &#8211; to receive messages from Max in UDP, but its really kind of horrible &#8211; so I&#8217;m going to look &hellip; Continue reading &quot;Osc in php&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/reactivemusic.net\/?p=5599\" \/>\n<meta property=\"og:site_name\" content=\"reactive music\" \/>\n<meta property=\"article:published_time\" content=\"2013-02-22T02:38:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2014-06-14T23:03:29+00:00\" \/>\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=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599\"},\"author\":{\"name\":\"Tom Zicarelli\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#\\\/schema\\\/person\\\/56224d281582df7e5518e037ca63e571\"},\"headline\":\"Osc in php\",\"datePublished\":\"2013-02-22T02:38:27+00:00\",\"dateModified\":\"2014-06-14T23:03:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599\"},\"wordCount\":148,\"keywords\":[\"Max\\\/MSP\",\"OSC\",\"php\",\"portfolio\",\"UDP\"],\"articleSection\":[\"development\",\"interactive media art\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599\",\"url\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599\",\"name\":\"Osc in php - reactive music\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#website\"},\"datePublished\":\"2013-02-22T02:38:27+00:00\",\"dateModified\":\"2014-06-14T23:03:29+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/#\\\/schema\\\/person\\\/56224d281582df7e5518e037ca63e571\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/reactivemusic.net\\\/?p=5599\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/reactivemusic.net\\\/?p=5599#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/reactivemusic.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Osc in php\"}]},{\"@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":"Osc in php - 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=5599","og_locale":"en_US","og_type":"article","og_title":"Osc in php - reactive music","og_description":"The Osc code from the stock market music project\u00a0https:\/\/reactivemusic.net\/?p=12029\u00a0is\u00a0not really doing Osc. But&#8230; it works well going from php-&gt;max. In the other direction its using a kluge of nc and an alarm clock shell program &#8211; to receive messages from Max in UDP, but its really kind of horrible &#8211; so I&#8217;m going to look &hellip; Continue reading \"Osc in php\"","og_url":"https:\/\/reactivemusic.net\/?p=5599","og_site_name":"reactive music","article_published_time":"2013-02-22T02:38:27+00:00","article_modified_time":"2014-06-14T23:03:29+00:00","author":"Tom Zicarelli","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tom Zicarelli","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/reactivemusic.net\/?p=5599#article","isPartOf":{"@id":"https:\/\/reactivemusic.net\/?p=5599"},"author":{"name":"Tom Zicarelli","@id":"https:\/\/reactivemusic.net\/#\/schema\/person\/56224d281582df7e5518e037ca63e571"},"headline":"Osc in php","datePublished":"2013-02-22T02:38:27+00:00","dateModified":"2014-06-14T23:03:29+00:00","mainEntityOfPage":{"@id":"https:\/\/reactivemusic.net\/?p=5599"},"wordCount":148,"keywords":["Max\/MSP","OSC","php","portfolio","UDP"],"articleSection":["development","interactive media art"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/reactivemusic.net\/?p=5599","url":"https:\/\/reactivemusic.net\/?p=5599","name":"Osc in php - reactive music","isPartOf":{"@id":"https:\/\/reactivemusic.net\/#website"},"datePublished":"2013-02-22T02:38:27+00:00","dateModified":"2014-06-14T23:03:29+00:00","author":{"@id":"https:\/\/reactivemusic.net\/#\/schema\/person\/56224d281582df7e5518e037ca63e571"},"breadcrumb":{"@id":"https:\/\/reactivemusic.net\/?p=5599#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/reactivemusic.net\/?p=5599"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/reactivemusic.net\/?p=5599#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/reactivemusic.net\/"},{"@type":"ListItem","position":2,"name":"Osc in php"}]},{"@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\/5599","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=5599"}],"version-history":[{"count":8,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts\/5599\/revisions"}],"predecessor-version":[{"id":13686,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=\/wp\/v2\/posts\/5599\/revisions\/13686"}],"wp:attachment":[{"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/reactivemusic.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}