{"id":14231,"date":"2026-06-05T16:29:17","date_gmt":"2026-06-05T14:29:17","guid":{"rendered":"https:\/\/store.algosyntax.com\/?post_type=download&#038;p=14231"},"modified":"2026-06-05T20:39:51","modified_gmt":"2026-06-05T18:39:51","slug":"midi-engine-vst-audio-bundle","status":"publish","type":"download","link":"https:\/\/store.algosyntax.com\/marketplace\/unreal-engine\/midi-engine-vst-audio-bundle\/","title":{"rendered":"MIDI Engine VST Audio Bundle"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"14231\" class=\"elementor elementor-14231\" data-elementor-post-type=\"download\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1085660 e-flex e-con-boxed e-con e-parent\" data-id=\"1085660\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-49ddf02 elementor-widget elementor-widget-heading\" data-id=\"49ddf02\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Midi Engine &amp; VST Audio Bundle <\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8829ace e-con e-atomic-element e-flexbox-base e-8829ace-1a6ab9f \" data-id=\"8829ace\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"8829ace\" data-e-type=\"e-flexbox\" data-id=\"8829ace\">\n    \t\t\t<p class=\"e-2adf4bb-27756ce e-paragraph-base\" data-interaction-id=\"2adf4bb\" data-e-type=\"widget\" data-id=\"2adf4bb\">MIDI Engine &amp; VST Audio BUNDLE is an Unreal Engine 5 plugin bundle that combines MIDI playback, MIDI event systems, rhythm-game tooling, music visualization workflows, virtual instruments, and real-time VST3 audio processing inside Unreal Engine.This bundle is designed for developers building interactive music systems, rhythm games, DAW-like tools, procedural audio projects, audio visualizers, virtual instruments, live performance tools, and real-time sound design workflows.<\/p>\n\t\t\t\t<div class=\"elementor-element elementor-element-df8413c elementor-widget__width-initial elementor-widget-mobile__width-initial elementor-widget elementor-widget-video\" data-id=\"df8413c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;youtube_url&quot;:&quot;https:\\\/\\\/youtu.be\\\/JaKrrOP2prI&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-wrapper elementor-open-inline\">\n\t\t\t<div class=\"elementor-video\"><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<p class=\"e-1f14736-b925fd9 e-paragraph-base\" data-interaction-id=\"1f14736\" data-e-type=\"widget\" data-id=\"1f14736\">It contains the following products:<\/p>\n\t\t\t\t<div class=\"elementor-element elementor-element-b96feec elementor-align-left elementor-widget elementor-widget-button\" data-id=\"b96feec\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/store.algosyntax.com\/marketplace\/unreal-engine\/midi-engine\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">MIDI Engine<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-41a796e elementor-align-left elementor-widget elementor-widget-button\" data-id=\"41a796e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/store.algosyntax.com\/marketplace\/unreal-engine\/vst-audio\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">VST Audio <\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<p class=\"e-60a15b1-68d0617 e-paragraph-base\" data-interaction-id=\"60a15b1\" data-e-type=\"widget\" data-id=\"60a15b1\">Latest Version : V1.0 <\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-ca64e57 e-con-full e-flex e-con e-child\" data-id=\"ca64e57\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-557a832 elementor-widget elementor-widget-heading\" data-id=\"557a832\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Buy MidiEngine &amp; Vst Audio BUNDLE<\/h2>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fe2daad e-con-full e-flex e-con e-child\" data-id=\"fe2daad\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f647535 elementor-widget__width-initial elementor-widget elementor-widget-asx-edd-buy-dropdown\" data-id=\"f647535\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"asx-edd-buy-dropdown.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <style>\n            #asx-edd-buy-f647535.asx-edd-buy {\n                display: block;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-form {\n                display: inline-flex;\n                flex-direction: column;\n                align-items: flex-start;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-form .asx-edd-buy-button {\n                align-self: flex-start;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-button {\n                display: inline-flex;\n                align-items: center;\n                justify-content: center;\n                vertical-align: middle;\n                line-height: 1.2;\n                border-width: 1px;\n                border-style: solid;\n                text-decoration: none;\n                box-sizing: border-box;\n                cursor: pointer;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-button:hover,\n            #asx-edd-buy-f647535 .asx-edd-buy-button:focus {\n                text-decoration: none;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-icon,\n            #asx-edd-buy-f647535 .asx-edd-buy-owned-icon,\n            #asx-edd-buy-f647535 .asx-edd-buy-pre-price-text,\n            #asx-edd-buy-f647535 .asx-edd-buy-price,\n            #asx-edd-buy-f647535 .asx-edd-buy-discount-text,\n            #asx-edd-buy-f647535 .asx-edd-buy-original-price,\n            #asx-edd-buy-f647535 .asx-edd-buy-post-price-text,\n            #asx-edd-buy-f647535 .asx-edd-buy-owned-text {\n                display: inline-flex;\n                align-items: center;\n                line-height: inherit;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-icon,\n            #asx-edd-buy-f647535 .asx-edd-buy-owned-icon {\n                justify-content: center;\n                flex: 0 0 auto;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-icon i,\n            #asx-edd-buy-f647535 .asx-edd-buy-icon svg,\n            #asx-edd-buy-f647535 .asx-edd-buy-owned-icon i,\n            #asx-edd-buy-f647535 .asx-edd-buy-owned-icon svg {\n                display: block;\n                line-height: 1;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-original-price {\n                text-decoration: line-through;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-label {\n                display: block;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-select {\n                max-width: 100%;\n                border-width: 1px;\n                border-style: solid;\n                box-sizing: border-box;\n            }\n        <\/style>\n        <div id=\"asx-edd-buy-f647535\" class=\"asx-edd-buy\">        <style>\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-dropdown {\n                position: relative;\n                display: inline-flex;\n                flex-direction: column;\n                max-width: 100%;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-trigger {\n                display: inline-flex;\n                align-items: center;\n                justify-content: space-between;\n                gap: 12px;\n                max-width: 100%;\n                border-width: 1px;\n                border-style: solid;\n                box-sizing: border-box;\n                cursor: pointer;\n                text-align: left;\n                line-height: 1.2;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-trigger-content,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-content,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-price-line {\n                display: inline-flex;\n                flex-wrap: wrap;\n                line-height: inherit;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-trigger-content,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-content {\n                align-items: var(--asx-edd-buy-option-align-items, flex-start);\n                justify-content: var(--asx-edd-buy-option-justify-content, flex-start);\n                text-align: var(--asx-edd-buy-option-text-align, left);\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-price-line {\n                align-items: center;\n                justify-content: var(--asx-edd-buy-price-line-justify-content, flex-start);\n                column-gap: var(--asx-edd-buy-price-line-column-gap, 8px);\n                row-gap: 0;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-trigger-content {\n                min-width: 0;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-trigger-arrow {\n                display: inline-flex;\n                align-items: center;\n                justify-content: center;\n                flex: 0 0 auto;\n                line-height: 1;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-panel {\n                position: absolute;\n                top: calc(100% + var(--asx-edd-buy-panel-top-gap, 6px));\n                left: 0;\n                z-index: 1000;\n                display: flex;\n                flex-direction: column;\n                min-width: 100%;\n                max-height: var(--asx-edd-buy-panel-max-height, 280px);\n                overflow-y: auto;\n                border-width: 1px;\n                border-style: solid;\n                box-sizing: border-box;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-panel[hidden] {\n                display: none !important;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option {\n                display: flex;\n                width: 100%;\n                border: 0;\n                cursor: pointer;\n                text-align: left;\n                box-sizing: border-box;\n                line-height: 1.2;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-content {\n                width: 100%;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-name,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-price,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-discount,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-original-price,\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-owned-badge,\n            #asx-edd-buy-f647535 .asx-edd-buy-discount-text,\n            #asx-edd-buy-f647535 .asx-edd-buy-original-price {\n                display: inline-flex;\n                align-items: center;\n                line-height: inherit;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-original-price,\n            #asx-edd-buy-f647535 .asx-edd-buy-original-price {\n                text-decoration: line-through;\n            }\n\n            #asx-edd-buy-f647535 .asx-edd-buy-custom-option-owned-badge {\n                font-size: 0.85em;\n            }\n        <\/style>\n        <form class=\"asx-edd-buy-form\" method=\"get\" action=\"https:\/\/store.algosyntax.com\/checkout\/\"><input type=\"hidden\" name=\"edd_action\" value=\"add_to_cart\"><input type=\"hidden\" name=\"download_id\" value=\"14231\"><input id=\"asx-edd-buy-selected-price-f647535\" class=\"asx-edd-buy-selected-price-id\" type=\"hidden\" name=\"edd_options[price_id]\" value=\"1\"><label class=\"asx-edd-buy-label\" for=\"asx-edd-buy-custom-trigger-f647535\">License<\/label><div id=\"asx-edd-buy-custom-dropdown-f647535\" class=\"asx-edd-buy-custom-dropdown\" data-active-price-id=\"1\"><button id=\"asx-edd-buy-custom-trigger-f647535\" class=\"asx-edd-buy-custom-trigger\" type=\"button\" aria-haspopup=\"listbox\" aria-expanded=\"false\" aria-controls=\"asx-edd-buy-custom-panel-f647535\"><span class=\"asx-edd-buy-custom-trigger-content\"><span class=\"asx-edd-buy-custom-option-content\"><span class=\"asx-edd-buy-custom-option-name\">Individual<\/span><span class=\"asx-edd-buy-custom-option-price-line\"><span class=\"asx-edd-buy-custom-option-original-price\">&#036;150.00<\/span><span class=\"asx-edd-buy-custom-option-price\">&#036;75.00<\/span><span class=\"asx-edd-buy-custom-option-discount\">-50%<\/span><\/span><\/span><\/span><span class=\"asx-edd-buy-custom-trigger-arrow\" aria-hidden=\"true\">\u25be<\/span><\/button><div id=\"asx-edd-buy-custom-panel-f647535\" class=\"asx-edd-buy-custom-panel\" role=\"listbox\" aria-labelledby=\"asx-edd-buy-custom-trigger-f647535\" hidden><button id=\"asx-edd-buy-custom-dropdown-f647535-option-0\" class=\"asx-edd-buy-custom-option is-selected\" type=\"button\" role=\"option\" aria-selected=\"true\" data-price-id=\"1\" data-is-owned=\"no\" data-price-text=\"&#036;75.00\" data-discount-text=\"-50%\" data-original-price-text=\"&#036;150.00\"><span class=\"asx-edd-buy-custom-option-content\"><span class=\"asx-edd-buy-custom-option-name\">Individual<\/span><span class=\"asx-edd-buy-custom-option-price-line\"><span class=\"asx-edd-buy-custom-option-original-price\">&#036;150.00<\/span><span class=\"asx-edd-buy-custom-option-price\">&#036;75.00<\/span><span class=\"asx-edd-buy-custom-option-discount\">-50%<\/span><\/span><\/span><\/button><button id=\"asx-edd-buy-custom-dropdown-f647535-option-1\" class=\"asx-edd-buy-custom-option\" type=\"button\" role=\"option\" aria-selected=\"false\" data-price-id=\"2\" data-is-owned=\"no\" data-price-text=\"&#036;100.00\" data-discount-text=\"-50%\" data-original-price-text=\"&#036;200.00\"><span class=\"asx-edd-buy-custom-option-content\"><span class=\"asx-edd-buy-custom-option-name\">Studio<\/span><span class=\"asx-edd-buy-custom-option-price-line\"><span class=\"asx-edd-buy-custom-option-original-price\">&#036;200.00<\/span><span class=\"asx-edd-buy-custom-option-price\">&#036;100.00<\/span><span class=\"asx-edd-buy-custom-option-discount\">-50%<\/span><\/span><\/span><\/button><button id=\"asx-edd-buy-custom-dropdown-f647535-option-2\" class=\"asx-edd-buy-custom-option\" type=\"button\" role=\"option\" aria-selected=\"false\" data-price-id=\"3\" data-is-owned=\"no\" data-price-text=\"&#036;125.00\" data-discount-text=\"-50%\" data-original-price-text=\"&#036;250.00\"><span class=\"asx-edd-buy-custom-option-content\"><span class=\"asx-edd-buy-custom-option-name\">Enterprise<\/span><span class=\"asx-edd-buy-custom-option-price-line\"><span class=\"asx-edd-buy-custom-option-original-price\">&#036;250.00<\/span><span class=\"asx-edd-buy-custom-option-price\">&#036;125.00<\/span><span class=\"asx-edd-buy-custom-option-discount\">-50%<\/span><\/span><\/span><\/button><\/div><\/div><button class=\"asx-edd-buy-button\" type=\"submit\" data-owned-url=\"https:\/\/store.algosyntax.com\/account\/\" data-buy-button-template=\"&lt;span class=&quot;asx-edd-buy-icon&quot; aria-hidden=&quot;true&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; class=&quot;e-font-icon-svg e-fab-paypal&quot; viewBox=&quot;0 0 384 512&quot; xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;&gt;&lt;path d=&quot;M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;&lt;\/span&gt;&lt;span class=&quot;asx-edd-buy-pre-price-text&quot;&gt;Paypal&lt;\/span&gt;\" data-owned-button-template=\"&lt;span class=&quot;asx-edd-buy-icon asx-edd-buy-owned-icon&quot; aria-hidden=&quot;true&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; class=&quot;e-font-icon-svg e-fas-download&quot; viewBox=&quot;0 0 512 512&quot; xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;&gt;&lt;path d=&quot;M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;&lt;\/span&gt;&lt;span class=&quot;asx-edd-buy-owned-text&quot;&gt;View in Library&lt;\/span&gt;\"><span class=\"asx-edd-buy-icon\" aria-hidden=\"true\"><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-paypal\" viewBox=\"0 0 384 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"><\/path><\/svg><\/span><span class=\"asx-edd-buy-pre-price-text\">Paypal<\/span><\/button><\/form>        <script>\n            (function() {\n                function updateOptionalTextElement(wrapper, selector, text) {\n                    var element = wrapper.querySelector(selector);\n\n                    if (!element) {\n                        return;\n                    }\n\n                    element.textContent = text || '';\n\n                    if (text) {\n                        element.style.display = 'inline-flex';\n                    } else {\n                        element.style.display = 'none';\n                    }\n                }\n\n                function setPanelOpen(trigger, panel, isOpen) {\n                    if (isOpen) {\n                        panel.hidden = false;\n                        trigger.setAttribute('aria-expanded', 'true');\n                        return;\n                    }\n\n                    panel.hidden = true;\n                    trigger.setAttribute('aria-expanded', 'false');\n                }\n\n                function focusOption(options, index) {\n                    if (!options.length) {\n                        return;\n                    }\n\n                    if (index < 0) {\n                        index = options.length - 1;\n                    }\n\n                    if (index >= options.length) {\n                        index = 0;\n                    }\n\n                    options[index].focus();\n                }\n\n                function getOptionIndex(options, option) {\n                    for (var i = 0; i < options.length; i++) {\n                        if (options[i] === option) {\n                            return i;\n                        }\n                    }\n\n                    return -1;\n                }\n\n                function bindCustomEddBuyDropdown() {\n                    var wrapper = document.getElementById('asx-edd-buy-f647535');\n                    var dropdown = document.getElementById('asx-edd-buy-custom-dropdown-f647535');\n                    var trigger = document.getElementById('asx-edd-buy-custom-trigger-f647535');\n                    var panel = document.getElementById('asx-edd-buy-custom-panel-f647535');\n                    var hiddenInput = document.getElementById('asx-edd-buy-selected-price-f647535');\n\n                    if (!wrapper || !dropdown || !trigger || !panel || !hiddenInput) {\n                        return;\n                    }\n\n                    var form = wrapper.querySelector('.asx-edd-buy-form');\n                    var buyButton = wrapper.querySelector('.asx-edd-buy-button');\n                    var triggerContent = trigger.querySelector('.asx-edd-buy-custom-trigger-content');\n                    var options = Array.prototype.slice.call(panel.querySelectorAll('.asx-edd-buy-custom-option'));\n\n                    if (!form || !buyButton || !triggerContent || !options.length) {\n                        return;\n                    }\n\n                    function closeDropdown() {\n                        setPanelOpen(trigger, panel, false);\n                    }\n\n                    function openDropdown() {\n                        setPanelOpen(trigger, panel, true);\n                    }\n\n                    function getSelectedOption() {\n                        return panel.querySelector('.asx-edd-buy-custom-option.is-selected') || options[0];\n                    }\n\n                    function optionIsOwned(option) {\n                        return !!option && 'yes' === option.getAttribute('data-is-owned');\n                    }\n\n                    function redirectToOwnedUrl() {\n                        var ownedUrl = buyButton.getAttribute('data-owned-url') || '';\n\n                        if (ownedUrl) {\n                            window.location.href = ownedUrl;\n                        }\n                    }\n\n                    function setButtonOwnedMode(isOwned) {\n                        if (isOwned) {\n                            buyButton.setAttribute('type', 'button');\n                            buyButton.classList.add('asx-edd-buy-owned-button');\n                            buyButton.innerHTML = buyButton.getAttribute('data-owned-button-template') || '';\n                            return;\n                        }\n\n                        buyButton.setAttribute('type', 'submit');\n                        buyButton.classList.remove('asx-edd-buy-owned-button');\n                        buyButton.innerHTML = buyButton.getAttribute('data-buy-button-template') || buyButton.innerHTML;\n                    }\n\n                    function updateBuyButtonPriceParts(option) {\n                        var priceElement = wrapper.querySelector('.asx-edd-buy-price');\n\n                        if (priceElement) {\n                            priceElement.textContent = option.getAttribute('data-price-text') || '';\n                        }\n\n                        updateOptionalTextElement(wrapper, '.asx-edd-buy-discount-text', option.getAttribute('data-discount-text') || '');\n                        updateOptionalTextElement(wrapper, '.asx-edd-buy-original-price', option.getAttribute('data-original-price-text') || '');\n                    }\n\n                    function selectOption(option, shouldFocusTrigger) {\n                        if (!option) {\n                            return;\n                        }\n\n                        var optionContent = option.querySelector('.asx-edd-buy-custom-option-content');\n\n                        if (!optionContent) {\n                            return;\n                        }\n\n                        hiddenInput.value = option.getAttribute('data-price-id') || '';\n                        dropdown.setAttribute('data-active-price-id', hiddenInput.value);\n                        triggerContent.innerHTML = optionContent.innerHTML;\n\n                        options.forEach(function(otherOption) {\n                            var isSelected = otherOption === option;\n\n                            if (isSelected) {\n                                otherOption.classList.add('is-selected');\n                                otherOption.setAttribute('aria-selected', 'true');\n                            } else {\n                                otherOption.classList.remove('is-selected');\n                                otherOption.setAttribute('aria-selected', 'false');\n                            }\n                        });\n\n                        if (optionIsOwned(option)) {\n                            setButtonOwnedMode(true);\n                        } else {\n                            setButtonOwnedMode(false);\n                            updateBuyButtonPriceParts(option);\n                        }\n\n                        closeDropdown();\n\n                        if (shouldFocusTrigger) {\n                            trigger.focus();\n                        }\n                    }\n\n                    trigger.addEventListener('click', function() {\n                        setPanelOpen(trigger, panel, panel.hidden);\n                    });\n\n                    trigger.addEventListener('keydown', function(event) {\n                        if ('ArrowDown' === event.key || 'ArrowUp' === event.key) {\n                            event.preventDefault();\n                            openDropdown();\n\n                            var selectedOption = getSelectedOption();\n                            var selectedIndex = getOptionIndex(options, selectedOption);\n\n                            if ('ArrowDown' === event.key) {\n                                focusOption(options, selectedIndex + 1);\n                            } else {\n                                focusOption(options, selectedIndex - 1);\n                            }\n                        }\n\n                        if ('Enter' === event.key || ' ' === event.key) {\n                            event.preventDefault();\n                            setPanelOpen(trigger, panel, panel.hidden);\n                        }\n\n                        if ('Escape' === event.key) {\n                            closeDropdown();\n                        }\n                    });\n\n                    options.forEach(function(option) {\n                        option.addEventListener('click', function() {\n                            selectOption(option, true);\n                        });\n\n                        option.addEventListener('keydown', function(event) {\n                            var currentIndex = getOptionIndex(options, option);\n\n                            if ('ArrowDown' === event.key) {\n                                event.preventDefault();\n                                focusOption(options, currentIndex + 1);\n                            }\n\n                            if ('ArrowUp' === event.key) {\n                                event.preventDefault();\n                                focusOption(options, currentIndex - 1);\n                            }\n\n                            if ('Enter' === event.key || ' ' === event.key) {\n                                event.preventDefault();\n                                selectOption(option, true);\n                            }\n\n                            if ('Escape' === event.key) {\n                                event.preventDefault();\n                                closeDropdown();\n                                trigger.focus();\n                            }\n                        });\n                    });\n\n                    buyButton.addEventListener('click', function(event) {\n                        if (!optionIsOwned(getSelectedOption())) {\n                            return;\n                        }\n\n                        event.preventDefault();\n                        redirectToOwnedUrl();\n                    });\n\n                    form.addEventListener('submit', function(event) {\n                        if (!optionIsOwned(getSelectedOption())) {\n                            return;\n                        }\n\n                        event.preventDefault();\n                        redirectToOwnedUrl();\n                    });\n\n                    document.addEventListener('click', function(event) {\n                        if (dropdown.contains(event.target)) {\n                            return;\n                        }\n\n                        closeDropdown();\n                    });\n\n                    selectOption(getSelectedOption(), false);\n                }\n\n                if (document.readyState === 'loading') {\n                    document.addEventListener('DOMContentLoaded', bindCustomEddBuyDropdown);\n                } else {\n                    bindCustomEddBuyDropdown();\n                }\n            })();\n        <\/script>\n        <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ecfe7b elementor-widget elementor-widget-button\" data-id=\"2ecfe7b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/store.algosyntax.com\/digital-assets-licenses\/\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-external-link-alt\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M432,320H400a16,16,0,0,0-16,16V448H64V128H208a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V336A16,16,0,0,0,432,320ZM488,0h-128c-21.37,0-32.05,25.91-17,41l35.73,35.73L135,320.37a24,24,0,0,0,0,34L157.67,377a24,24,0,0,0,34,0L435.28,133.32,471,169c15,15,41,4.5,41-17V24A24,24,0,0,0,488,0Z\"><\/path><\/svg>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">About License Types<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f6e012c e-flex e-con-boxed e-con e-parent\" data-id=\"f6e012c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-097798a elementor-widget elementor-widget-text-editor\" data-id=\"097798a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2 data-section-id=\"1lp2q23\" data-start=\"1914\" data-end=\"1932\">Bundle Contents<\/h2><p data-start=\"1934\" data-end=\"2080\">This bundle includes the core plugins and audio systems needed to build MIDI-driven and VST-powered audio workflows directly inside Unreal Engine.<\/p><h3 data-section-id=\"1x1agol\" data-start=\"2082\" data-end=\"2098\">MIDI Plugins<\/h3><p data-start=\"2100\" data-end=\"2334\"><strong data-start=\"2100\" data-end=\"2117\">MIDI Engine 3<\/strong><br data-start=\"2117\" data-end=\"2120\" \/>MIDI Engine 3 adds MIDI file import, MIDI playback, MIDI event broadcasting, MIDI listening, MetaSound integration, Sequencer integration, rhythm-game templates, and virtual instrument workflows to Unreal Engine 5.<\/p><p data-start=\"2336\" data-end=\"2363\">Use MIDI Engine 3 to build:<\/p><ul data-start=\"2365\" data-end=\"2523\"><li data-section-id=\"17nf1k7\" data-start=\"2365\" data-end=\"2379\">Rhythm games<\/li><li data-section-id=\"py9vhm\" data-start=\"2380\" data-end=\"2399\">Music visualizers<\/li><li data-section-id=\"1qo8oya\" data-start=\"2400\" data-end=\"2430\">MIDI-driven gameplay systems<\/li><li data-section-id=\"z1qvmq\" data-start=\"2431\" data-end=\"2456\">Music-synced cinematics<\/li><li data-section-id=\"1kmhu2f\" data-start=\"2457\" data-end=\"2473\">DAW-like tools<\/li><li data-section-id=\"192n2i7\" data-start=\"2474\" data-end=\"2495\">Virtual instruments<\/li><li data-section-id=\"1ju2va8\" data-start=\"2496\" data-end=\"2523\">Interactive audio systems<\/li><\/ul><p data-start=\"2525\" data-end=\"2781\">MIDI Engine 3 allows actors, components, and UObjects to react to MIDI notes and events during playback. This makes it useful for gameplay synchronization, note highways, visual effects, animation timing, lighting systems, and other music-reactive systems.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2d5d92a elementor-widget elementor-widget-text-editor\" data-id=\"2d5d92a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h3 data-section-id=\"fc1axn\" data-start=\"2783\" data-end=\"2804\">VST Audio Plugins<\/h3><p data-start=\"2806\" data-end=\"3062\"><strong data-start=\"2806\" data-end=\"2819\">VST Audio<\/strong><br data-start=\"2819\" data-end=\"2822\" \/>VST Audio turns Unreal Engine into a real-time VST3 host. It allows Unreal Engine projects to discover, load, instantiate, process, and control Steinberg VST3 plugins from C++, Blueprints, MetaSounds, the Unreal Editor, and packaged builds.<\/p><p data-start=\"3064\" data-end=\"3087\">Use VST Audio to build:<\/p><ul data-start=\"3089\" data-end=\"3315\"><li data-section-id=\"em6c5u\" data-start=\"3089\" data-end=\"3118\">Real-time VST effect chains<\/li><li data-section-id=\"5ier96\" data-start=\"3119\" data-end=\"3151\">Interactive sound design tools<\/li><li data-section-id=\"18q4xor\" data-start=\"3152\" data-end=\"3182\">VST-powered MetaSound graphs<\/li><li data-section-id=\"1ur5npb\" data-start=\"3183\" data-end=\"3217\">Runtime audio processing systems<\/li><li data-section-id=\"1ecryws\" data-start=\"3218\" data-end=\"3248\">Virtual instrument workflows<\/li><li data-section-id=\"oun65f\" data-start=\"3249\" data-end=\"3267\">Live audio tools<\/li><li data-section-id=\"29xhxe\" data-start=\"3268\" data-end=\"3315\">Audio applications built inside Unreal Engine<\/li><\/ul><p data-start=\"3317\" data-end=\"3523\">VST Audio allows Unreal projects to use professional audio plugins normally found in DAWs, while still keeping access to gameplay logic, runtime interaction, procedural systems, and Unreal\u2019s audio pipeline.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Midi Engine &amp; VST Audio Bundle MIDI Engine &amp; VST Audio BUNDLE is an Unreal Engine 5 plugin bundle that combines MIDI playback, MIDI event systems, rhythm-game tooling, music visualization workflows, virtual instruments, and real-time VST3 audio processing inside Unreal Engine.This bundle is designed for developers building interactive music systems, rhythm games, DAW-like tools, procedural [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":14242,"template":"elementor_header_footer","edd-categories":[11,4],"edd-tags":[137,88,108,124],"class_list":["post-14231","download","type-download","status-publish","has-post-thumbnail","hentry","download_category-code-plugins","download_category-unreal-engine","download_tag-bundle","download_tag-midiengine","download_tag-unreal-engine","download_tag-vst-audio","entry","has-media","edd-download","edd-download-cat-code-plugins","edd-download-cat-unreal-engine","edd-download-tag-bundle","edd-download-tag-midiengine","edd-download-tag-unreal-engine","edd-download-tag-vst-audio"],"acf":[],"_links":{"self":[{"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-downloads\/14231","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-downloads"}],"about":[{"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/types\/download"}],"author":[{"embeddable":true,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/users\/1"}],"version-history":[{"count":2,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-downloads\/14231\/revisions"}],"predecessor-version":[{"id":14251,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-downloads\/14231\/revisions\/14251"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/media\/14242"}],"wp:attachment":[{"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/media?parent=14231"}],"wp:term":[{"taxonomy":"download_category","embeddable":true,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-categories?post=14231"},{"taxonomy":"download_tag","embeddable":true,"href":"https:\/\/store.algosyntax.com\/asx-rest\/wp\/v2\/edd-tags?post=14231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}