{"id":3096,"date":"2024-03-21T10:05:58","date_gmt":"2024-03-21T09:05:58","guid":{"rendered":"https:\/\/www.pschatzmann.ch\/home\/?p=3096"},"modified":"2024-03-21T18:29:25","modified_gmt":"2024-03-21T17:29:25","slug":"using-the-mozzi-sound-generator-with-a-bluetooth-speaker","status":"publish","type":"post","link":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/","title":{"rendered":"Using Mozzi with a Bluetooth Speaker"},"content":{"rendered":"<p><a href=\"https:\/\/github.com\/sensorium\/Mozzi\">Mozzi<\/a> brings your Arduino to life by allowing it to produce much more complex and interesting growls, sweeps and chorusing atmospherics. These sounds can be quickly and easily constructed from familiar synthesis units like oscillators, delays, filters and envelopes.<\/p>\n<p>One of the strong points of my <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\">AudioTools<\/a> library is, that we also support extensive <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\/wiki\/Communication\">communication scenarios<\/a>. In this example we show how we can output the sound generated by Mozzi to a Bluetooth Speaker using an <strong>ESP32<\/strong>.<\/p>\n<h3>The Sketch<\/h3>\n<p>Here is the example Arduino sketch that uses both libraries and sends the generated sound to a <strong>Bluetooth Speaker<\/strong>.<\/p>\n<pre><code>#include \"AudioTools.h\"\n#include \"AudioLibs\/A2DPStream.h\"\n#include \"AudioLibs\/MozziStream.h\"\n#include &lt;Oscil.h&gt;                \/\/ oscillator template\n#include &lt;tables\/sin2048_int8.h&gt;  \/\/ sine table for oscillator\n\nconst int sample_rate = 44100;\nAudioInfo info(sample_rate, 2, 16);  \/\/ bluetooth requires 44100, stereo, 16 bits\nBluetoothA2DPSource a2dp_source;\nMozziStream mozzi;  \/\/ audio source\nconst int16_t BYTES_PER_FRAME = 4;\n\/\/ use: Oscil &lt;table_size, update_rate&gt; oscilName (wavetable), look in .h file\n\/\/ of table #included above\nOscil&lt;SIN2048_NUM_CELLS, sample_rate&gt; aSin(SIN2048_DATA);\n\/\/ control variable, use the smallest data size you can for anything used in\n\/\/ audio\nbyte gain = 255;\n\n\/\/ callback used by A2DP to provide the sound data \nint32_t get_sound_data(uint8_t* data, int32_t size) {\n  int32_t result = mozzi.readBytes(data, size);\n  \/\/LOGI(\"get_sound_data %d-&gt;%d\",size, result);\n  return result;\n}\n\n\/\/ Arduino Setup\nvoid setup(void) {\n  Serial.begin(115200);\n  AudioLogger::instance().begin(Serial, AudioLogger::Info);\n\n  \/\/ setup mozzi\n  auto cfg = mozzi.defaultConfig();\n  cfg.control_rate = CONTROL_RATE;\n  cfg.copyFrom(info);\n  mozzi.begin(cfg);\n\n  aSin.setFreq(3320);  \/\/ set the frequency\n\n  \/\/ start the bluetooth\n  Serial.println(\"starting A2DP...\");\n  a2dp_source.start_raw(\"LEXON MINO L\", get_sound_data);\n  \/\/a2dp_source.set_volume(100);\n}\n\nvoid updateControl() {\n  \/\/ as byte, this will automatically roll around to 255 when it passes 0\n  gain = gain - 3;\n}\n\nint updateAudio() {\n  \/\/ shift back to STANDARD audio range, like \/256 but faster\n  return (aSin.next() * gain) &gt;&gt; 8;\n}\n\n\/\/ Arduino loop - repeated processing\nvoid loop() {\n  delay(1000);\n}\n<\/code><\/pre>\n<p>This is basically the same sketch that I have <a href=\"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/15\/mozzi-revisited\/\">already explained<\/a>: The only difference is, that we need to make sure to generate <strong>stereo 16 bit data with a sample rate of 44100<\/strong> and we replaced the audio sink wkth a BluetoothA2DPSource where the callback needs to be filled with data from Mozzi.<\/p>\n<p>Do not forget to set the <strong>Partition Scheme to Huge App<\/strong> in the Arduino Tools menu because the application is getting quite big.<\/p>\n<h2>Source Code<\/h2>\n<p>The potentially updated source code of the sketch can be found in the <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\/tree\/main\/examples\/examples-dsp\/examples-mozzi\">examples directory<\/a>.<\/p>\n<h2>Dependencies<\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/sensorium\/Mozzi\">Mozzi<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pschatzmann\/ESP32-A2DP\">ESP32-A2DP<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\">AudioTools<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Mozzi brings your Arduino to life by allowing it to produce much more complex and interesting growls, sweeps and chorusing atmospherics. These sounds can be quickly and easily constructed from familiar synthesis units like oscillators, delays, filters and envelopes. One of the strong points of my AudioTools library is, that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3097,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[20,22],"tags":[46,26],"class_list":["post-3096","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino","category-machine-sound","tag-communications","tag-synthesizer"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using Mozzi with a Bluetooth Speaker - Phil Schatzmann<\/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:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using Mozzi with a Bluetooth Speaker - Phil Schatzmann\" \/>\n<meta property=\"og:description\" content=\"Mozzi brings your Arduino to life by allowing it to produce much more complex and interesting growls, sweeps and chorusing atmospherics. These sounds can be quickly and easily constructed from familiar synthesis units like oscillators, delays, filters and envelopes. One of the strong points of my AudioTools library is, that [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/\" \/>\n<meta property=\"og:site_name\" content=\"Phil Schatzmann\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-21T09:05:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T17:29:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png\" \/>\n\t<meta property=\"og:image:width\" content=\"307\" \/>\n\t<meta property=\"og:image:height\" content=\"182\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"pschatzmann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"pschatzmann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/\"},\"author\":{\"name\":\"pschatzmann\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"headline\":\"Using Mozzi with a Bluetooth Speaker\",\"datePublished\":\"2024-03-21T09:05:58+00:00\",\"dateModified\":\"2024-03-21T17:29:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/\"},\"wordCount\":202,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"keywords\":[\"Communications\",\"Synthesizer\"],\"articleSection\":[\"Arduino\",\"Machine Sound\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/\",\"name\":\"Using Mozzi with a Bluetooth Speaker - Phil Schatzmann\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"datePublished\":\"2024-03-21T09:05:58+00:00\",\"dateModified\":\"2024-03-21T17:29:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"contentUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"width\":307,\"height\":182},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2024\\\/03\\\/21\\\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using Mozzi with a Bluetooth Speaker\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\",\"name\":\"Phil Schatzmann Consulting\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\",\"name\":\"pschatzmann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"contentUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"width\":305,\"height\":305,\"caption\":\"pschatzmann\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using Mozzi with a Bluetooth Speaker - Phil Schatzmann","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:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/","og_locale":"en_US","og_type":"article","og_title":"Using Mozzi with a Bluetooth Speaker - Phil Schatzmann","og_description":"Mozzi brings your Arduino to life by allowing it to produce much more complex and interesting growls, sweeps and chorusing atmospherics. These sounds can be quickly and easily constructed from familiar synthesis units like oscillators, delays, filters and envelopes. One of the strong points of my AudioTools library is, that [&hellip;]","og_url":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/","og_site_name":"Phil Schatzmann","article_published_time":"2024-03-21T09:05:58+00:00","article_modified_time":"2024-03-21T17:29:25+00:00","og_image":[{"width":307,"height":182,"url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","type":"image\/png"}],"author":"pschatzmann","twitter_card":"summary_large_image","twitter_misc":{"Written by":"pschatzmann","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#article","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/"},"author":{"name":"pschatzmann","@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"headline":"Using Mozzi with a Bluetooth Speaker","datePublished":"2024-03-21T09:05:58+00:00","dateModified":"2024-03-21T17:29:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/"},"wordCount":202,"commentCount":0,"publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","keywords":["Communications","Synthesizer"],"articleSection":["Arduino","Machine Sound"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/","url":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/","name":"Using Mozzi with a Bluetooth Speaker - Phil Schatzmann","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#primaryimage"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","datePublished":"2024-03-21T09:05:58+00:00","dateModified":"2024-03-21T17:29:25+00:00","breadcrumb":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#primaryimage","url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","contentUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","width":307,"height":182},{"@type":"BreadcrumbList","@id":"https:\/\/www.pschatzmann.ch\/home\/2024\/03\/21\/using-the-mozzi-sound-generator-with-a-bluetooth-speaker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pschatzmann.ch\/home\/"},{"@type":"ListItem","position":2,"name":"Using Mozzi with a Bluetooth Speaker"}]},{"@type":"WebSite","@id":"https:\/\/www.pschatzmann.ch\/home\/#website","url":"https:\/\/www.pschatzmann.ch\/home\/","name":"Phil Schatzmann Consulting","description":"","publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pschatzmann.ch\/home\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1","name":"pschatzmann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","contentUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","width":305,"height":305,"caption":"pschatzmann"},"logo":{"@id":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png"}}]}},"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/3096","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/comments?post=3096"}],"version-history":[{"count":33,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/3096\/revisions"}],"predecessor-version":[{"id":6179,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/3096\/revisions\/6179"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media\/3097"}],"wp:attachment":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media?parent=3096"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/categories?post=3096"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/tags?post=3096"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}