{"id":5512,"date":"2023-03-10T15:40:03","date_gmt":"2023-03-10T14:40:03","guid":{"rendered":"https:\/\/www.pschatzmann.ch\/home\/?p=5512"},"modified":"2024-02-27T09:57:28","modified_gmt":"2024-02-27T08:57:28","slug":"mozzi-and-the-audiokit-reading-audio-data","status":"publish","type":"post","link":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/","title":{"rendered":"Mozzi and the AudioKit &#8211; Reading Audio Data"},"content":{"rendered":"<p>I have extended the I2S interface in <a href=\"https:\/\/sensorium.github.io\/Mozzi\/\">Mozzi<\/a>, so that we can can use the getAudioInput() which <strong>reads the audio via I2S<\/strong>: This can be used e.g. by the AudioKit. Until this change has been merged, you need to use <a href=\"https:\/\/github.com\/pschatzmann\/Mozzi\">my extended project<\/a>.<\/p>\n<p><strong>Mozzi<\/strong> 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>The <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audiokit\">AudioKit<\/a> is a cheap ESP32 based audio board that usually uses an <strong>ES8388 audio chip<\/strong>. This chip needs to be configured via I2C before it can be used.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/12\/audio-toolkit-300x188.png\" alt=\"\" width=\"80%\" class=\"alignnone size-medium wp-image-3882\" srcset=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/12\/audio-toolkit-300x188.png 300w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/12\/audio-toolkit-768x480.png 768w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/12\/audio-toolkit.png 800w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>If you want to use <strong>Mozzi with the AudioKit<\/strong> you still have a pretty easy way to deal with this using my <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-driver\">audio-driver library<\/a> directly.<\/p>\n<p>So here are the steps that are necessary:<\/p>\n<h3>Select Your Board<\/h3>\n<p>There a quite of few different variants out there with different audio chips and different pin assignments.<\/p>\n<h3>Mozzi Configuration for the ESP32<\/h3>\n<p>Make sure that Mozzi is using <strong>I2S with a DAC and ADC<\/strong> and the <strong>correct pins<\/strong>. This is done in <strong>AudioConfigESP32.h<\/strong> by using the following settings:<\/p>\n<pre><code> \/\/ Set output mode\n#define ESP32_AUDIO_OUT_MODE I2S_DAC_AND_I2S_ADC\n\n\/\/ For external I2S use I2S pins of your AudioKit\n#define ESP32_I2S_BCK_PIN 27\n#define ESP32_I2S_WS_PIN 25\n#define ESP32_I2S_DATA_PIN 26\n#define ESP32_I2S_DATA_PIN_IN 35 \n\n<\/code><\/pre>\n<p>You can determine the relevant pins for your model by consulting <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audiokit\/wiki\/GPIO-Overview-by-Selected-Board\">this table<\/a>.<\/p>\n<h3>Using the Codec<\/h3>\n<p>In the sketch you need to set up the audio chip of the AudioKit: We need to provide the <strong>sample rate<\/strong> and select the correct board object to initialize (See AudioBoard in <a href=\"https:\/\/pschatzmann.github.io\/arduino-audio-driver\/html\/group__audio__driver.html\">Variables section of the documentation<\/a>):<\/p>\n<pre><code>  \/\/ setup of AudioKit codec\n  CodecConfig cfg;\n  cfg.input_device = ADC_INPUT_LINE2;\n  cfg.output_device = DAC_OUTPUT_ALL;\n  cfg.i2s.bits = BIT_LENGTH_16BITS;\n  cfg.i2s.rate = RATE_32K;\n  AudioKitEs8388V1.begin(cfg); \n<\/code><\/pre>\n<p>Unfortunately the input device selection of the es8388 based AudioKits does not work because of a hardware bug and you get the input both from the microphones and the aux in. The LyraT boards however work correctly!<\/p>\n<h2>The Complete Arduino Sketch<\/h2>\n<p>We just copy the data from the output: This Sketch works on an AudioKit or LyraT board:<\/p>\n<pre><code>#include &lt;MozziGuts.h&gt;\n#include \"AudioBoard.h\"\n\nvoid setup(){\n  CodecConfig cfg;\n  cfg.input_device = ADC_INPUT_LINE2;\n  cfg.output_device = DAC_OUTPUT_ALL;\n  cfg.i2s.bits = BIT_LENGTH_16BITS;\n  cfg.i2s.rate = RATE_32K;\n  AudioKitEs8388V1.begin(cfg); \n\n  startMozzi();\n}\n\n\nvoid updateControl(){\n}\n\n\nAudioOutput_t updateAudio(){\n  int asig = getAudioInput(); \/\/ range 0-1023\n  asig = asig - 512; \/\/ now range is -512 to 511\n  \/\/ output range in STANDARD mode is -244 to 243,\n  \/\/ we scale down only by one bit, so you might need\n  \/\/ to adjust your signal to suit\n  return MonoOutput::fromAlmostNBit(9, asig).clip();\n}\n\n\nvoid loop(){\n  audioHook();\n}\n<\/code><\/pre>\n<p>and you get the proper int16_t values !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have extended the I2S interface in Mozzi, so that we can can use the getAudioInput() which reads the audio via I2S: This can be used e.g. by the AudioKit. Until this change has been merged, you need to use my extended project. Mozzi brings your Arduino to life by [&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":[28],"class_list":["post-5512","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino","category-machine-sound","tag-esp32audiokit"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mozzi and the AudioKit - Reading Audio Data - 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\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mozzi and the AudioKit - Reading Audio Data - Phil Schatzmann\" \/>\n<meta property=\"og:description\" content=\"I have extended the I2S interface in Mozzi, so that we can can use the getAudioInput() which reads the audio via I2S: This can be used e.g. by the AudioKit. Until this change has been merged, you need to use my extended project. Mozzi brings your Arduino to life by [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/\" \/>\n<meta property=\"og:site_name\" content=\"Phil Schatzmann\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-10T14:40:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-02-27T08:57:28+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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/\"},\"author\":{\"name\":\"pschatzmann\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"headline\":\"Mozzi and the AudioKit &#8211; Reading Audio Data\",\"datePublished\":\"2023-03-10T14:40:03+00:00\",\"dateModified\":\"2024-02-27T08:57:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/\"},\"wordCount\":328,\"commentCount\":7,\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"keywords\":[\"ESP32AudioKit\"],\"articleSection\":[\"Arduino\",\"Machine Sound\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/\",\"name\":\"Mozzi and the AudioKit - Reading Audio Data - Phil Schatzmann\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/05\\\/mozzi.png\",\"datePublished\":\"2023-03-10T14:40:03+00:00\",\"dateModified\":\"2024-02-27T08:57:28+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#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\\\/2023\\\/03\\\/10\\\/mozzi-and-the-audiokit-reading-audio-data\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mozzi and the AudioKit &#8211; Reading Audio Data\"}]},{\"@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":"Mozzi and the AudioKit - Reading Audio Data - 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\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/","og_locale":"en_US","og_type":"article","og_title":"Mozzi and the AudioKit - Reading Audio Data - Phil Schatzmann","og_description":"I have extended the I2S interface in Mozzi, so that we can can use the getAudioInput() which reads the audio via I2S: This can be used e.g. by the AudioKit. Until this change has been merged, you need to use my extended project. Mozzi brings your Arduino to life by [&hellip;]","og_url":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/","og_site_name":"Phil Schatzmann","article_published_time":"2023-03-10T14:40:03+00:00","article_modified_time":"2024-02-27T08:57:28+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":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#article","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/"},"author":{"name":"pschatzmann","@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"headline":"Mozzi and the AudioKit &#8211; Reading Audio Data","datePublished":"2023-03-10T14:40:03+00:00","dateModified":"2024-02-27T08:57:28+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/"},"wordCount":328,"commentCount":7,"publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","keywords":["ESP32AudioKit"],"articleSection":["Arduino","Machine Sound"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/","url":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/","name":"Mozzi and the AudioKit - Reading Audio Data - Phil Schatzmann","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#primaryimage"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/05\/mozzi.png","datePublished":"2023-03-10T14:40:03+00:00","dateModified":"2024-02-27T08:57:28+00:00","breadcrumb":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/home\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#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\/2023\/03\/10\/mozzi-and-the-audiokit-reading-audio-data\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pschatzmann.ch\/home\/"},{"@type":"ListItem","position":2,"name":"Mozzi and the AudioKit &#8211; Reading Audio Data"}]},{"@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\/5512","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=5512"}],"version-history":[{"count":25,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/5512\/revisions"}],"predecessor-version":[{"id":6089,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/5512\/revisions\/6089"}],"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=5512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/categories?post=5512"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/tags?post=5512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}