{"id":6312,"date":"2025-09-20T23:42:58","date_gmt":"2025-09-20T14:42:58","guid":{"rendered":"https:\/\/blog.criware.com\/?p=6312"},"modified":"2025-09-22T18:15:22","modified_gmt":"2025-09-22T09:15:22","slug":"making-music-react-to-gameplay-part-1","status":"publish","type":"post","link":"https:\/\/blog.criware.com\/index.php\/2025\/09\/20\/making-music-react-to-gameplay-part-1\/","title":{"rendered":"Making Music React to Gameplay [Part 1]"},"content":{"rendered":"<p>In this 2-part tutorial, we will explore how to automatically add sounds to background music at specific times during playback, based on the game context. To achieve this, we will set up Action Tracks and Game Variables in our ADX project and use a Blueprint in UE5 to control the implementation on the game side. <\/p>\n<p>Adding sounds in sync with background music can be used to highlight a specific game situation. For example:<br \/>\n\u2022\tWe can keep playing the same music but add different melodies depending on the area of the game.<br \/>\n\u2022\tWe can change the initial impact a music will have by playing a different sound when it starts.<br \/>\n\u2022\tWe can add variations to the ending sequence when the music finishes after a battle scene.<\/p>\n<p>In this first post, we will prepare the interactive audio data in Atom Craft, ADX\u2019s authoring tool. In the next post, we will handle the implementation in Unreal Engine 5.6, using only a Blueprint (no code).<\/p>\n<p>We will use the ADX LE UE SDK (version 2.04.02). If you are not familiar with it yet, ADX LE is the light edition of ADX, and the SDK can be downloaded for free here:<br \/>\n<a href=\"https:\/\/game.criware.jp\/en\/products\/adx-le_en\/\">https:\/\/game.criware.jp\/en\/products\/adx-le_en\/<\/a><\/p>\n<h5>Importing the audio files<\/h5>\n<p>First, we need to prepare and import the background music (<strong>BGM_Base<\/strong>) and some additional files:<br \/>\n\u2022\tTwo different kick sounds that can be played at the start of the music (<strong>SE_KickA, B<\/strong>)<br \/>\n\u2022\tTwo musical phrases that can be played simultaneously to the main music (<strong>BGM_PhraseA, B<\/strong>)<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A01.png\" alt=\"\" width=\"390\" height=\"283\" class=\"alignnone size-full wp-image-6315\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A01.png 390w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A01-300x218.png 300w\" sizes=\"auto, (max-width: 390px) 100vw, 390px\" \/><\/p>\n<h5>Creating the Cues<\/h5>\n<p>Let\u2019s create the main music Cue. Right-click on the Cue Sheet, select \u201cNew Object\u201d and then \u201cCreate Polyphonic Cue\u201d. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A02.png\" alt=\"\" width=\"1278\" height=\"601\" class=\"alignnone size-full wp-image-6316\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A02.png 1278w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A02-300x141.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A02-1024x482.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A02-768x361.png 768w\" sizes=\"auto, (max-width: 1278px) 100vw, 1278px\" \/><\/p>\n<p>Name the Cue you just created, and drag the BGM_Base material onto it to create a track.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A03.png\" alt=\"\" width=\"1281\" height=\"781\" class=\"alignnone size-full wp-image-6319\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A03.png 1281w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A03-300x183.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A03-1024x624.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A03-768x468.png 768w\" sizes=\"auto, (max-width: 1281px) 100vw, 1281px\" \/><\/p>\n<p>Next, let\u2019s create the secondary Cues.<br \/>\nRight-click the Cue Sheet, select \u201cNew Object\u201d, and this time choose \u201cCreate Switch Cue\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A04.png\" alt=\"\" width=\"1312\" height=\"520\" class=\"alignnone size-full wp-image-6317\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A04.png 1312w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A04-300x119.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A04-1024x406.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A04-768x304.png 768w\" sizes=\"auto, (max-width: 1312px) 100vw, 1312px\" \/><\/p>\n<p>Add 2 tracks to this new Cue, one for each additional phrase.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A05.png\" alt=\"\" width=\"1280\" height=\"789\" class=\"alignnone size-full wp-image-6318\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A05.png 1280w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A05-300x185.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A05-1024x631.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A05-768x473.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/p>\n<p>Create a similar Switch Cue for the kick sounds and add the corresponding materials as well.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06.png\" alt=\"\" width=\"1122\" height=\"783\" class=\"alignnone size-full wp-image-6325\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06.png 1122w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06-300x209.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06-1024x715.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06-768x536.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A06-130x90.png 130w\" sizes=\"auto, (max-width: 1122px) 100vw, 1122px\" \/><\/p>\n<h5>Setting Up Game Variables<\/h5>\n<p>The next step is to create the Game Variables: right-click the <strong>Game Variables<\/strong> folder in the Project Tree, select \u201cNew Object\u201d and then \u201cCreate Game Variable\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A07.png\" alt=\"\" width=\"936\" height=\"552\" class=\"alignnone size-full wp-image-6326\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A07.png 936w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A07-300x177.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A07-768x453.png 768w\" sizes=\"auto, (max-width: 936px) 100vw, 936px\" \/><\/p>\n<p>Name the Game Variable appropriately for easy reference.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A08.png\" alt=\"\" width=\"387\" height=\"341\" class=\"alignnone size-full wp-image-6327\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A08.png 387w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A08-300x264.png 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/p>\n<p>Select the Cue with the musical phrases in the Inspector, and press the <strong>Switch<\/strong> button to access the switching menu. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09.png\" alt=\"\" width=\"1776\" height=\"755\" class=\"alignnone size-full wp-image-6320\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09.png 1776w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09-300x128.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09-1024x435.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09-768x326.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A09-1536x653.png 1536w\" sizes=\"auto, (max-width: 1776px) 100vw, 1776px\" \/><\/p>\n<p>Assign the Game Variable to the Switch Variable.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A10.png\" alt=\"\" width=\"1382\" height=\"755\" class=\"alignnone size-full wp-image-6321\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A10.png 1382w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A10-300x164.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A10-1024x559.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A10-768x420.png 768w\" sizes=\"auto, (max-width: 1382px) 100vw, 1382px\" \/><\/p>\n<p>By default, the range of the variable will be equally divided between the tracks. In our case, with 2 potential tracks, values in the range [0\u20260.5] will trigger the first track, while values greater than 0.5 will trigger the second. It is possible to adjust the distribution as we want (total must stay equal to 1.0).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A11.png\" alt=\"\" width=\"503\" height=\"371\" class=\"alignnone size-full wp-image-6322\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A11.png 503w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A11-300x221.png 300w\" sizes=\"auto, (max-width: 503px) 100vw, 503px\" \/><\/p>\n<p>To test how different values affect the sound, select the Game Variable in the Project Tree and change its <strong>Initial Value<\/strong> in the Inspector.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12.png\" alt=\"\" width=\"1778\" height=\"597\" class=\"alignnone size-full wp-image-6323\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12.png 1778w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12-300x101.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12-1024x344.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12-768x258.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A12-1536x516.png 1536w\" sizes=\"auto, (max-width: 1778px) 100vw, 1778px\" \/><\/p>\n<p>Now you can repeat this setup for the Cue with the kicks.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13.png\" alt=\"\" width=\"1777\" height=\"776\" class=\"alignnone size-full wp-image-6324\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13.png 1777w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13-300x131.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13-1024x447.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13-768x335.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A13-1536x671.png 1536w\" sizes=\"auto, (max-width: 1777px) 100vw, 1777px\" \/><\/p>\n<h5>Setting Up Actions<\/h5>\n<p>Adding Actions to the Timeline will allow us to trigger sounds at specific points during a Cue\u2019s playback.<br \/>\nActions are added to a special <strong>Action Track<\/strong>. To create one, select the main BGM Cue, right-click on an empty spot in the track list, then select \u201cNew Object\u201d and finally \u201cCreate Action Track\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A14.png\" alt=\"\" width=\"1282\" height=\"703\" class=\"alignnone size-full wp-image-6329\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A14.png 1282w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A14-300x165.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A14-1024x562.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A14-768x421.png 768w\" sizes=\"auto, (max-width: 1282px) 100vw, 1282px\" \/><\/p>\n<p>Drag and drop the Cue with the musical phrases from the Work Unit Tree onto the new Action Track. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A15.png\" alt=\"\" width=\"1284\" height=\"648\" class=\"alignnone size-full wp-image-6330\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A15.png 1284w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A15-300x151.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A15-1024x517.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A15-768x388.png 768w\" sizes=\"auto, (max-width: 1284px) 100vw, 1284px\" \/><\/p>\n<p>Create a second Action Track for the Cue with the kicks.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A16.png\" alt=\"\" width=\"1280\" height=\"647\" class=\"alignnone size-full wp-image-6331\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A16.png 1280w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A16-300x152.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A16-1024x518.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A16-768x388.png 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/p>\n<p>Name the tracks in the Inspector for easy identification.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A17.png\" alt=\"\" width=\"1394\" height=\"521\" class=\"alignnone size-full wp-image-6332\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A17.png 1394w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A17-300x112.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A17-1024x383.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A17-768x287.png 768w\" sizes=\"auto, (max-width: 1394px) 100vw, 1394px\" \/><\/p>\n<p>Right-click on the Action Track\u2019s Timeline, select \u201cNew Object\u201d and then \u201cCreate Start Action\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A18.png\" alt=\"\" width=\"879\" height=\"602\" class=\"alignnone size-full wp-image-6333\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A18.png 879w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A18-300x205.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A18-768x526.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A18-130x90.png 130w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/p>\n<p>A marker appears that indicates the position at which the action will be triggered.<br \/>\nFor the kicks, let\u2019s move it to the beginning of the Timeline.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A19.png\" alt=\"\" width=\"896\" height=\"442\" class=\"alignnone size-full wp-image-6334\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A19.png 896w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A19-300x148.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A19-768x379.png 768w\" sizes=\"auto, (max-width: 896px) 100vw, 896px\" \/><\/p>\n<p>For the phrases that will be played in addition to the background music, let\u2019s place it on measure 5.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A20.png\" alt=\"\" width=\"888\" height=\"446\" class=\"alignnone size-full wp-image-6335\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A20.png 888w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A20-300x151.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A20-768x386.png 768w\" sizes=\"auto, (max-width: 888px) 100vw, 888px\" \/><\/p>\n<p>For better synchronization, we need to align these markers precisely with the music. Click the small clock button at the top of the Timeline and select <strong>TimeBase Settings<\/strong>. Here, you can set the time base to bars and beats. Make sure to enter a signature and BPM that match your music, and then adjust the position of your markers.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A21.png\" alt=\"\" width=\"607\" height=\"374\" class=\"alignnone size-full wp-image-6337\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A21.png 607w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A21-300x185.png 300w\" sizes=\"auto, (max-width: 607px) 100vw, 607px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A22.png\" alt=\"\" width=\"394\" height=\"371\" class=\"alignnone size-full wp-image-6336\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A22.png 394w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A22-300x282.png 300w\" sizes=\"auto, (max-width: 394px) 100vw, 394px\" \/><\/p>\n<p>We can now test the results without leaving AtomCraft. Simply changing the initial value of the game variables will result in different sounds being played.<\/p>\n<h5>Building the Cue Sheet<\/h5>\n<p>It is time to export the Cue Sheet! Go to the Build menu and select \u201cBuild Atom CueSheet Binary\u201d.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A23.png\" alt=\"\" width=\"1283\" height=\"555\" class=\"alignnone size-full wp-image-6338\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A23.png 1283w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A23-300x130.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A23-1024x443.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A23-768x332.png 768w\" sizes=\"auto, (max-width: 1283px) 100vw, 1283px\" \/><\/p>\n<p>Select the options as shown below and press Build. A new ACB file will be generated.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A24.png\" alt=\"\" width=\"1086\" height=\"715\" class=\"alignnone size-full wp-image-6339\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A24.png 1086w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A24-300x198.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A24-1024x674.png 1024w, https:\/\/blog.criware.com\/wp-content\/uploads\/2025\/09\/A24-768x506.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/p>\n<p>In the <a href=\"https:\/\/blog.criware.com\/index.php\/2025\/09\/21\/making-music-react-to-gameplay-part-2\/\">second post<\/a> of this tutorial, we will import the binary Cue Sheet we prepared in Unreal Engine and use Blueprints to implement this dynamic music system!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this 2-part tutorial, we will explore how to automatically add sounds to background music at specific times during playback,<\/p>\n","protected":false},"author":2,"featured_media":6314,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[5,7,22],"tags":[],"class_list":["post-6312","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adx","category-tutorials","category-unreal-engine"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/6312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/comments?post=6312"}],"version-history":[{"count":8,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/6312\/revisions"}],"predecessor-version":[{"id":6381,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/6312\/revisions\/6381"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media\/6314"}],"wp:attachment":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media?parent=6312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/categories?post=6312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/tags?post=6312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}