{"id":641512,"date":"2026-02-24T08:20:58","date_gmt":"2026-02-24T07:20:58","guid":{"rendered":"https:\/\/es.exxpress.at\/?p=641512"},"modified":"2026-02-24T06:35:20","modified_gmt":"2026-02-24T05:35:20","slug":"wenn-algorithmen-hits-schreiben-ki-stellt-die-musikindustrie-auf-den-kopf","status":"publish","type":"post","link":"https:\/\/es.exxpress.at\/economy\/wenn-algorithmen-hits-schreiben-ki-stellt-die-musikindustrie-auf-den-kopf\/","title":{"rendered":"Wenn Algorithmen \u201eHits\u201f schreiben: KI stellt die Musikindustrie auf den Kopf"},"content":{"rendered":"<section class=\"wpb-content-wrapper\"><p>[vc_row][vc_column width=&#8221;1\/6&#8243;]\n        <span class=\"article-tag\">\n            Economy\n        <\/span>\n    [\/vc_column][vc_column width=&#8221;1\/2&#8243;]<h1 id=\"nativendo-title\" style=\"text-align: left\" class=\"vc_custom_heading article-heading\">Wenn Algorithmen \u201eHits\u201f schreiben: KI stellt die Musikindustrie auf den Kopf<\/h1>[vc_column_text el_class=&#8221;article-subheading&#8221;]Ein paar Zeilen Prompt gen\u00fcgen \u2013 und Sekunden sp\u00e4ter entsteht ein Popsong samt Gesang, Arrangement und Coverbild. K\u00fcnstliche Intelligenz komponiert inzwischen nicht mehr nur Hintergrundmusik, sondern kann quasi marktf\u00e4hige Tracks produzieren. F\u00fcr die Musikindustrie beginnt damit eine Phase des Umbruchs, die tiefer greift als Streaming oder Download-Revolution.[\/vc_column_text][\/vc_column][vc_column width=&#8221;1\/3&#8243;][\/vc_column][\/vc_row][vc_row el_class=&#8221;article-main-content&#8221;][vc_column width=&#8221;1\/6&#8243;]\n        <div class=\"author-box\">\n            <span class=\"author\">Redaktion<\/span>\n            <time datetime=\"2026-02-24T08:20:58+01:00\">24.02.2026 08:20<\/time>\n        <\/div>\n            <div class=\"share-box\">\n            <a href=\"https:\/\/x.com\/intent\/tweet?url=https%3A%2F%2Fes.exxpress.at%2Fapi%2Fwp%2Fv2%2Fposts%2F641512\" target=\"blank\" class=\"share-icon share-circle-icon share-twitter\"><?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"100%\" height=\"100%\" viewBox=\"0 0 300 300\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n <path d=\"M178.57 127.15 290.27 0h-26.46l-97.03 110.38L89.34 0H0l117.13 166.93L0 300.25h26.46l102.4-116.59 81.8 116.59h89.34M36.01 19.54H76.66l187.13 262.13h-40.66\"\/>\n<\/svg><\/a>\n            <a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?href=https%3A%2F%2Fes.exxpress.at%2Fapi%2Fwp%2Fv2%2Fposts%2F641512&u=https%3A%2F%2Fes.exxpress.at%2Fapi%2Fwp%2Fv2%2Fposts%2F641512\" target=\"blank\" class=\"share-icon share-circle-icon share-facebook\"><?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-\/\/W3C\/\/DTD SVG 1.1\/\/EN\" \"http:\/\/www.w3.org\/Graphics\/SVG\/1.1\/DTD\/svg11.dtd\">\n<svg width=\"100%\" height=\"100%\" viewBox=\"0 0 28 28\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" xml:space=\"preserve\" xmlns:serif=\"http:\/\/www.serif.com\/\" style=\"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;\">\n    <g transform=\"matrix(1,0,0,1,-12,-11)\">\n        <path d=\"M31,11.2C30.3,11.1 29.7,11 29,11C28.2,10.9 27.3,10.9 26.5,11.1C25.5,11.3 24.6,11.8 23.8,12.7C23.2,13.4 22.8,14.3 22.5,15.2C22.3,15.9 22.3,16.5 22.3,17.2L22.3,21L18.4,21L18.4,25.7L22.4,25.7L22.4,38.6L27.2,38.6L27.2,25.7L30.7,25.7C30.9,24.1 31.1,22.6 31.4,21L27.4,21L27.4,20.8L27.4,17.8C27.4,17.5 27.4,17.2 27.5,16.9C27.7,16 28.3,15.5 29.1,15.3C29.4,15.2 29.7,15.2 30,15.2L31.8,15.2L31.8,11.2C31.3,11.3 31.1,11.2 31,11.2Z\" style=\"fill-rule:nonzero;\"\/>\n    <\/g>\n<\/svg>\n<\/a>\n            <a href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fes.exxpress.at%2Fapi%2Fwp%2Fv2%2Fposts%2F641512\" target=\"blank\" class=\"share-icon share-circle-icon share-linkedin\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\"><path d=\"M0 160h114.496v352H0zM426.368 164.128c-1.216-.384-2.368-.8-3.648-1.152a74.218 74.218 0 00-4.64-.896c-6.08-1.216-12.736-2.08-20.544-2.08-66.752 0-109.088 48.544-123.04 67.296V160H160v352h114.496V320s86.528-120.512 123.04-32v224H512V274.464c0-53.184-36.448-97.504-85.632-110.336z\"\/><circle cx=\"56\" cy=\"56\" r=\"56\"\/><\/svg><\/a>\n            <div class=\"mobile-splitter\"><\/div>\n            <a href=\"mailto:?subject=Exxpress: Wenn Algorithmen \u201eHits\u201f schreiben: KI stellt die Musikindustrie auf den Kopf&body=https%3A%2F%2Fes.exxpress.at%2Fapi%2Fwp%2Fv2%2Fposts%2F641512\" target=\"blank\" class=\"share-icon share-mail\"><?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<svg version=\"1.1\" id=\"Ebene_1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 50 50\" style=\"enable-background:new 0 0 50 50;\" xml:space=\"preserve\">\n<g>\n\t<path d=\"M1.2,7.7C0.8,8.1,0.6,8.6,0.6,9.1v31.3c0,0.6,0.2,1.1,0.7,1.4c0.4,0.4,0.8,0.6,1.3,0.6h45c0.5,0,1-0.2,1.3-0.6\n\t\ts0.6-0.9,0.6-1.4V9.1c0-0.5-0.2-0.9-0.6-1.4c-0.4-0.4-0.8-0.6-1.3-0.6h-45C2,7.1,1.6,7.3,1.2,7.7z M4.3,13.8l13,11.3l-13,11.6V13.8\n\t\tz M7.5,11.7h34.9L24.9,27.1L7.5,11.7z M8,38.6l12.2-11.1l3.5,3.3l2.4,0.1l3.8-3.4L42,38.6H8z M45.8,36.7l-13-11.6l13-11.3V36.7z\"\/>\n<\/g>\n<\/svg>\n<\/a>\n            \n        <\/div>\n    [\/vc_column][vc_column width=&#8221;1\/2&#8243; el_class=&#8221;article-body&#8221;]\n            <div class=\"featured-image-box\">\n                <a href=\"https:\/\/es.exxpress.at\/media\/2023\/04\/gettyimages-1250799402.jpg\" data-featherlight=\"image\">\n                    <img decoding=\"async\" class=\"attachment-article_featured_image size-article_featured_image wp-post-image\" src=\"https:\/\/es.exxpress.at\/media\/2023\/04\/gettyimages-1250799402.jpg\" srcset=\"https:\/\/es.exxpress.at\/media\/2023\/04\/gettyimages-1250799402.jpg 2x\">\n                <\/a>\n                <span class=\"tagline\"><span class=\"credits\" style=\"padding-left: 0\">GETTYIMAGES\/Rafael Henrique\/SOPA Images\/LightRocket<\/span><\/span>\n            <\/div>\n        [vc_column_text]Eine Untersuchung der GEMA kommt zu einem drastischen Ergebnis: Bis 2028 k\u00f6nnten die Einnahmen von Musikern um rund 30 % sinken \u2013 verursacht durch den zunehmenden Einsatz von KI. Rund 70 % der f\u00fcr die Studie befragten K\u00fcnstler sehen ihre wirtschaftliche Basis bedroht.\u201eDa m\u00fcssen wir uns als Komponist und Songwriter schon \u00fcberlegen, wie wir in Zukunft weiterleben k\u00f6nnen\u201c, warnt der Musiker Ludwig Wright im Gespr\u00e4ch mit dem Bayerischen Rundfunk.<\/p>\n<p>Wright, der im Vorstand des Deutscher Komponist:innenverband sitzt, bringt die Sorge auf den Punkt: \u201eLetztlich ist kein Bereich in der Musik davor gefeit, von der KI substituiert zu werden.\u201c[\/vc_column_text]<h2 style=\"text-align: left\" class=\"vc_custom_heading running-header\">Besonders gef\u00e4hrdet: Film- und Werbemusik<\/h2>[vc_column_text]W\u00e4hrend Popstars noch auf B\u00fchnen und in sozialen Netzwerken Pr\u00e4senz zeigen k\u00f6nnen, trifft es andere Bereiche unmittelbarer. Vor allem in der Film- und Werbemusik drohe ein \u201emassiver Kahlschlag\u201c, so Wright. Auftragskompositionen lassen sich von KI-Systemen in k\u00fcrzester Zeit erstellen \u2013 g\u00fcnstiger, schneller, skalierbar.<\/p>\n<p>Wo fr\u00fcher ein Komponist Tage oder sogar Wochen dran arbeitete, gen\u00fcgt heute ein gut formulierter Prompt. Auftraggeber erhalten in Sekunden verschiedene Stilvarianten \u2013 inklusive Gesang, Arrangement und Mastering.[\/vc_column_text]<h2 style=\"text-align: left\" class=\"vc_custom_heading running-header\">Virtuelle Bands erobern die Streaming-Plattformen<\/h2>[vc_column_text]KI erschafft inzwischen komplette K\u00fcnstleridentit\u00e4ten: vom Bandnamen \u00fcber das Albumcover bis hin zu Social-Media-Profilen. Virtuelle Bands, bzw. S\u00e4nger ver\u00f6ffentlichen zunehmend Songs auf Plattformen wie Spotify \u2013 oft ohne dass H\u00f6rer \u00fcberhaupt erkennen, dass kein Mensch dahintersteht.<\/p>\n<p>Zugleich sinkt die Einstiegsh\u00fcrde f\u00fcr Laien drastisch. Generative Musiktools werden zunehmend benutzerfreundlich. Wer bislang kein Instrument spielte, kann heute mithilfe weniger Textbefehle eigene Songs produzieren.[\/vc_column_text]<h2 style=\"text-align: left\" class=\"vc_custom_heading running-header\">Google mischt mit \u2013 30 Sekunden aus dem Nichts<\/h2>[vc_column_text]Auch Technologiekonzerne treiben die Entwicklung voran. Mit seinem KI-Modell Gemini erm\u00f6glicht Google nun die Erstellung von Musikst\u00fccken per Texteingabe. Die generierten<\/p>\n<p>Tracks sind zun\u00e4chst 30 Sekunden lang, k\u00f6nnen jedoch auf Basis von Text, Bildern oder Videos komponiert werden \u2013 inklusive Gesang.<\/p>\n<p>Technologische Grundlage ist das Musikmodell \u201eLyria\u201c, entwickelt von Google DeepMind. Es befindet sich inzwischen in der dritten Version. Seit 2023 arbeitet das Unternehmen an der Weiterentwicklung, erstmals \u00f6ffentlich vorgestellt wurde das Projekt 2024 auf der Entwicklerkonferenz Google I\/O. Die produzierten Titel enthalten ein nicht h\u00f6rbares Wasserzeichen, das sie als KI-Erzeugnisse kennzeichnet.[\/vc_column_text]<h2 style=\"text-align: left\" class=\"vc_custom_heading running-header\">Rechtefragen und Verteilungsk\u00e4mpfe<\/h2>[vc_column_text]Mit der technologischen Dynamik w\u00e4chst auch der juristische Druck. Die GEMA fordert Ausgleichszahlungen von KI-Unternehmen, da deren Systeme auf bestehenden Musikwerken trainiert werden. Es geht um Lizenzmodelle, Beteiligungen und um die Frage, wem k\u00fcnftig welche Erl\u00f6se zustehen.<\/p>\n<p>Die Musikindustrie steht damit an einer Wegscheide. K\u00fcnstliche Intelligenz ist nicht l\u00e4nger blo\u00df ein Werkzeug zur Klangoptimierung. Sie entwickelt sich vielmehr zum eigenst\u00e4ndigen Produzenten.[\/vc_column_text][\/vc_column][vc_column width=&#8221;1\/3&#8243;]<div class=\"ad-container\"><div id=\"adnz_rectangle_1\" style=\"padding-top: 0;\"><\/div><\/div><div class=\"ad-container sticky\" style=\"padding-top: 0;\"><div id=\"adnz_halfpage_2\"><\/div><\/div>[\/vc_column][\/vc_row][vc_row][vc_column width=&#8221;1\/6&#8243;][\/vc_column][vc_column width=&#8221;5\/6&#8243;]<div class=\"footer-hook\"><div class=\"move-to-article\">  <details class=\"mollie-donation-modal\" open>\n    <summary>Dein Beitrag z\u00e4hlt \u2013 jetzt spenden!<\/summary>\n    <div class=\"mollie-donation-backdrop\" onclick=\"var modal = document.querySelector('.mollie-donation-modal'); modal.removeAttribute('data-modal-opened')\"><\/div>\n    <div class=\"mollie-donation-form-holder\" id=\"donation\">\n      <div class=\"mollie-donation-close-button\" onclick=\"var modal = document.querySelector('.mollie-donation-modal'); modal.removeAttribute('data-modal-opened')\"><\/div>\n      <p style=\"padding: 0 30px; line-height: 1.3;\">Mit deinem Beitrag schaffen wir Raum f\u00fcr Journalismus, der einordnet, hinterfragt und sichtbar macht, was wirklich z\u00e4hlt.<\/p>\n      <form class=\"mollie-donation\">\n          <div style=\"display: flex; justify-content: center;\">\n            <div class=\"donate-type-btn-holder\">\n                <button type=\"button\" class=\"donate-select-btn\" value=\"onetime\">Einmalig<\/button>\n                <button type=\"button\" class=\"donate-select-btn selected\" value=\"monthly\">Monatlich<\/button>\n                <button type=\"button\" class=\"donate-select-btn\" value=\"yearly\">J\u00e4hrlich<\/button>\n            <\/div>\n          <\/div>\n          <input type=\"email\" name=\"mail\" placeholder=\"E-Mail Adresse*\" required\/>\n          <div class=\"donate-btn-holder\">\n              <button type=\"button\" class=\"donate-select-btn\" value=\"10\">10\u20ac<\/button>\n              <button type=\"button\" class=\"donate-select-btn selected\" value=\"20\">20\u20ac<\/button>\n              <button type=\"button\" class=\"donate-select-btn\" value=\"100\">100\u20ac<\/button>\n              <div class=\"flex-break\"><\/div>\n              <button type=\"button\" class=\"donate-select-btn\" value=\"free\">Anderer Betrag<\/button>\n          <\/div>\n          <input class=\"hidden\" type=\"number\" min=\"2\" step=\"1\" value=\"20\" required\/>\n          <label class=\"checkbox-label hidden privacy-label\">\n              <input type=\"checkbox\" name=\"privacy\" required\/>\n              Ich akzeptiere die <a href=\"https:\/\/es.exxpress.at\/datenschutzerklaerung\/\" target=\"_blank\">Datenschutzvereinbarung<\/a>.*\n          <\/label>\n          <label class=\"checkbox-label hidden newsletter-label\">\n              <input type=\"checkbox\" name=\"newsletter\"\/>\n              Bitte halte mich auf dem Laufenden. Ich m\u00f6chte den Newsletter erhalten.\n          <\/label>\n          <a target=\"_blank\" class=\"disabled\" href=\"\" type=\"button\">Dein Beitrag z\u00e4hlt \u2013 jetzt spenden!<\/a>\n      <\/form>\n    <\/div>\n  <\/details>\n          <style>\ndetails.mollie-donation-modal summary {\n  --background: var(--category_bg_color);\n  --border-color: var(--category_bg_color);\n  --color: var(--category_tertiary_color);\n\n  --hover-background: var(--category_tertiary_color);\n  --hover-color: var(--category_bg_color);\n\n  margin: calc(var(--gutter-width-bottom)) auto;\n  transition: background-color 300ms, color 300ms;\n  border: 2px solid var(--border-color);\n  background: var(--background);\n  color: var(--color);\n  padding: 0.5em 1em;\n  font-size: 1em;\n  font-family: Blacker Sans Text;\n  font-weight: 900;\n  text-decoration: none;\n  display: inline-block;\n  cursor: pointer;\n  width: max-content;\n  display: block;\n}\ndetails.mollie-donation-modal summary:hover,\ndetails.mollie-donation-modal[open] summary {\n  background: var(--hover-background);\n  color: var(--hover-color);\n}\ndetails.mollie-donation-modal[data-modal-opened] {\n\n}\ndetails.mollie-donation-modal[data-modal-opened] summary {\n  display: none;\n}\n.mollie-donation-form-holder {\n  --don-bg-color: #fffbf8;\n  --don-border-color: #5e2c4f;\n  --don-color: rgb(26, 25, 25);\n  border: 2px solid var(--don-border-color);\n  background: var(--don-bg-color);\n  color: var(--don-color);\n  padding: 10px 15px;\n  margin-bottom: 15px;\n  position: relative;\n}\n.mollie-donation-form-holder h3 {\n  font-size: 18px;\n  text-align: center;\n  font-weight: bold;\n  margin-top: 5px;\n  margin-bottom: 10px;\n}\n.mollie-donation-form-holder p {\n  max-width: 455px;\n  text-align: center;\n  margin: 0 auto;\n  margin-bottom: 10px;\n}\nform.mollie-donation {\n  max-width: 100%;\n  margin: 0 auto;\n  text-align: center;\n}\nform.mollie-donation input[type=\"checkbox\"] {\n    font-size: 16px;\n}\nform.mollie-donation input[type=\"number\"],\nform.mollie-donation input[type=\"email\"],\nform.mollie-donation select {\n  font-family: 'Blacker Sans';\n  width: 190px;\n  border: none;\n  outline: none;\n  padding: 4px 8px;\n  background: white;\n  font-size: 18px;\n  text-align: center;\n  margin: 0 auto;\n  display: block;\n  border-bottom: 2px solid var(--don-border-color);\n}\nform.mollie-donation .donate-btn-holder {\n  display: flex;\n  flex-direction: row;\n  justify-content: center;\n  flex-wrap: wrap;\n  padding: var(--gutter-width-bottom);\n  max-width: 360px;\n  margin: 0 auto;\n}\nform.mollie-donation .donate-btn-holder .flex-break {\n  min-width: 100%;\n  height: 0px; max-height: 0px; margin: 0; padding: 0;\n}\nform.mollie-donation .donate-btn-holder button {\n  font-size: 16px;\n  border-width: 1px;\n  margin: calc(var(--gutter-width-bottom) \/ 4) calc(var(--gutter-width) \/ 4);\n}\nform.mollie-donation .donate-btn-holder button.selected {\n  cursor: pointer;\n  background: var(--hover-background);\n  color: var(--hover-color);\n}\nform.mollie-donation .donate-type-btn-holder {\n  display: flex;\n  flex-direction: row;\n  justify-content: center;\n  flex-wrap: wrap;\n  padding: var(--gutter-width-bottom);\n  margin-top: 10px;\n  gap: 1px;\n  padding: 1px;\n  background-color: var(--don-border-color);\n}\nform.mollie-donation .donate-type-btn-holder button {\n  font-size: 14px;\n  margin: 0;\n  border: none;\n  background-color: var(--don-bg-color);\n}\nform.mollie-donation .donate-type-btn-holder button.selected {\n  cursor: pointer;\n  background: var(--hover-background);\n  color: var(--hover-color);\n}\nform.mollie-donation input[type=\"email\"] {\n  width: 100%;\n  max-width: 320px;\n  margin-top: 20px;\n}\nform.mollie-donation select {\n  margin-top: 10px;\n  margin-bottom: 10px;\n}\nform.mollie-donation input[type=\"number\"] {\n  width: 100px;\n  margin-bottom: var(--gutter-width-bottom);\n  margin-top: calc(var(--gutter-width-bottom) * -1);\n}\nform.mollie-donation input[type=\"number\"] ~ small.num-input-error {\n    display: block;\n    margin-top: calc(var(--gutter-width-bottom) * -1);\n    margin-bottom: var(--gutter-width-bottom);\n    color: red;\n}\nform.mollie-donation input[type=\"number\"].hidden {\n  display: none;\n}\nform.mollie-donation button, form.mollie-donation a[type=\"button\"] {\n  margin: 0 auto;\n  display: block;\n  --border-color: var(--don-border-color);\n  --hover-background: #5e2c4f;\n  --color: var(--don-color);\n  --hover-color: #e0d2d8;\n  transition: background-color 300ms, color 300ms;\n  border: 1px solid var(--border-color);\n  background: var(--background);\n  color: var(--color);\n  padding: .3em 1em;\n  padding-bottom: .37em;\n  font-size: 1em;\n  font-family: Blacker Sans Text;\n  font-weight: 900;\n  text-decoration: none;\n  margin-bottom: 10px;\n}\nform.mollie-donation a[type=\"button\"] {\n    --border-color: white;\n    --hover-background: white;\n    --color: white;\n    --hover-color: #c03;\n    background: #c03;\n}\nform.mollie-donation a[type=\"button\"] {\n    display: inline-block;\n}\nform.mollie-donation button.disabled, form.mollie-donation a[type=\"button\"].disabled {\n    opacity: 0.5;\n}\nform.mollie-donation .checkbox-label:not(.hidden) ~ button,\nform.mollie-donation .checkbox-label:not(.hidden) ~ a[type=\"button\"] {\n    margin-top: var(--gutter-width-bottom);\n}\nform.mollie-donation button:disabled {\n  opacity: 0.5;\n}\nform.mollie-donation button:hover,\nform.mollie-donation a[type=\"button\"]:not(.disabled):hover {\n  cursor: pointer;\n  background: var(--hover-background);\n  color: var(--hover-color);\n}\nform.mollie-donation .checkbox-label {\n  display: block;\n  margin-bottom: 3px;\n  text-align: center;\n}\nform.mollie-donation .checkbox-label a {\n  color: inherit;\n}\nform.mollie-donation .checkbox-label.hidden {\n  display: none;\n}\n.mollie-donation-modal {\n  display: block;\n}\n.mollie-donation-modal[data-modal-opened] {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  background-color: rgba(255,255,255,0.7);\n  z-index: 10000;\n  -webkit-transition: opacity 0.5s ease-in-out;\n  -moz-transition: opacity 0.5s ease-in-out;\n  -ms-transition: opacity 0.5s ease-in-out;\n  -o-transition: opacity 0.5s ease-in-out;\n  transition: opacity 0.5s ease-in-out;\n}\n.mollie-donation-backdrop {\n  display: block;\n}\n.mollie-donation-modal[data-modal-opened] .mollie-donation-form-holder {\n  margin: 10px;\n  width: max-content;\n  position: absolute;\n  right: 50%;\n  bottom: 50%;\n  transform: translate(50%, 50%);\n}\n.mollie-donation-modal[data-modal-opened] .mollie-donation-backdrop {\n  position: absolute;\n  top: 0px;\n  left: 0px;\n  width: 100%;\n  height: 100%;\n}\n.mollie-donation-close-button {\n  position: absolute;\n  top: 10px;\n  right: 10px;\n  cursor: pointer;\n  width: 20px;\n  height: 20px;\n  display: flex;\n  align-self: center;\n  justify-content: center;\n  display: none;\n}\n.mollie-donation-modal[data-modal-opened] .mollie-donation-close-button {\n  display: flex;\n}\n.mollie-donation-close-button::after {\n  content: \"\";\n  display: block;\n  width: 2px;\n  height: 20px;\n  background-color: #333;\n  transform: rotate(45deg);\n  position: absolute;\n  top: 0;\n  left: 9px;\n}\n.mollie-donation-close-button::before {\n  content: \"\";\n  display: block;\n  width: 2px;\n  height: 20px;\n  background-color: #333;\n  transform: rotate(-45deg);\n}\n\n\/* Modal open *\/\ndetails.mollie-donation-modal > summary{\n  list-style: none;\n  pointer-events: none;\n  cursor: default;\n  display:none;\n}\ndetails.mollie-donation-modal > summary::-webkit-details-marker{\n  display: none;\n}\n\n.mollie-donation-backdrop,\n.mollie-donation-close-button{\n  display: none !important;\n}\n\ndetails.mollie-donation-modal[data-modal-opened]{\n  position: static;\n  width: auto;\n  height: auto;\n  background: none;\n  display: block;            \n}\n        <\/style>\n    \n          <script>\n          window.addEventListener('load', () => {\n            (($) => {\n                $(() => {\n                    const loadingSpinner = `<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" style=\"margin: auto; background: none; display: block; shape-rendering: auto;width: 30px;height: 30px;padding-top: 3px;margin-bottom: 3px;\" width=\"48px\" height=\"48px\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"xMidYMid\"><circle cx=\"50\" cy=\"50\" fill=\"none\" stroke=\"var(--category_tertiary_color)\" style=\"stroke: var(--category_tertiary_color)\" r=\"40\" stroke-dasharray=\"188.49555921538757 64.83185307179586\" stroke-width=\"11\"><animateTransform attributeName=\"transform\" type=\"rotate\" repeatCount=\"indefinite\" dur=\"1s\" values=\"0 50 50;360 50 50\" keyTimes=\"0;1\"><\/animateTransform><\/circle><\/svg>`;\n                    jQuery('.mollie-donation-modal:not(:eq(0))').remove();\n\n                    $( document ).ready(function() {\n                      var mdf = localStorage.getItem(\"mollie-donation-form\");\n                      if(mdf === null) {\n                        setTimeout(function() {\n                          \/\/ $(\".mollie-donation-modal\").attr(\"data-modal-opened\", \"\");\n                          \/\/ $(\".mollie-donation-modal\").attr(\"open\", \"\");\n                          localStorage.setItem(\"mollie-donation-form\", true);\n                        }, 2000);\n                      }\n                    });\n\n                    const $form = $('form.mollie-donation');\n                    if ($form.length > 0) {\n                        const $numInput = $form.find('input[type=\"number\"]')\n                        const default_value = 10;\n    \n                        $form.find('.donate-btn-holder button').removeClass('selected');\n                        $form.find('.donate-btn-holder button[value=\"' + default_value + '\"]').addClass('selected');\n                        $numInput.val(default_value);\n                        $form.find('input[type=\"email\"]').val('')\n                        $form.find('.checkbox-label input').prop('checked', false);\n    \n                        $form.find('input[type=\"email\"]').on('input', e => {\n                            if (e.delegateTarget.checkValidity()) {\n                                $form.find('.privacy-label').removeClass('hidden');\n                            }\n                        })\n    \n                        $form.find('.privacy-label input').on('change', e => {\n                            $form.find('.newsletter-label').removeClass('hidden');\n                        })\n    \n                        const removeNumInputError = (msg) => {\n                            $form.find('.num-input-error').remove();\n                        }\n                        const addNumInputError = (msg) => {\n                            removeNumInputError();\n                            $numInput.after(`<small class=\"num-input-error\">${msg}<\/small>`);\n                        }\n                        $numInput.on('change', e => {\n                            removeNumInputError();\n                            const $target = $(e.delegateTarget);\n                            const newValue = $target.val();\n                            if(Number.parseInt(newValue).toString() !== newValue) {\n                                $target.val(Number.parseInt(newValue));\n                                addNumInputError('Betrag muss rund und gr\u00f6\u00dfer 2\u20ac sein');\n                            } else if (Number.parseInt(newValue) < 2) {\n                                $target.val(2);\n                                addNumInputError('Betrag muss gr\u00f6\u00dfer 2\u20ac sein');\n                            }\n                        })\n    \n                        $form.find('.donate-btn-holder button').on('click', e => {\n                            $form.find('.donate-btn-holder button').removeClass('selected');\n                            const selected_value = $(e.delegateTarget).attr('value');\n                            $form.find('.donate-btn-holder button[value=\"' + selected_value + '\"]').addClass('selected');\n                            if (selected_value === 'free') {\n                                \/\/ $numInput.removeClass('hidden');\n                            } else {\n                              $numInput.addClass('hidden');\n                              $numInput.val(selected_value);\n                            }\n                            $form.change();\n                        });\n\n                        $form.find('.donate-type-btn-holder button').on('click', e => {\n                            $form.find('.donate-type-btn-holder button').removeClass('selected');\n                            const selected_value = $(e.delegateTarget).attr('value');\n                            $form.find('.donate-type-btn-holder button[value=\"' + selected_value + '\"]').addClass('selected');\n                            if (selected_value === 'free') {\n                              \/\/ some code\n                            } else {\n                              \/\/ $numInput.addClass('hidden');\n                              \/\/ $numInput.val(selected_value);\n                              \/\/ $form.change()\n                            }\n                            $form.change();\n                        });\n    \n                        const setDonateButtonUrl = () => {\n                            const type = jQuery('.donate-type-btn-holder .donate-select-btn.selected').attr('value');\n                            const amount = jQuery('.donate-btn-holder .donate-select-btn.selected').attr('value');\n                            const rawMail = $form.find('input[type=\"email\"]').val();\n                            const mail = encodeURIComponent(rawMail);\n                            const newsletter = $form.find('.newsletter-label input').is(':checked') ? '1' : '0';\n                            const page = site.post.id;\n                            const categories = encodeURIComponent(JSON.stringify(site.post.categories));\n                            console.log('should be setting to amount', amount)\n                            const amountUrlMapping = {\n                              onetime: {\n                                '5': 'https:\/\/buy.stripe.com\/8wMbKR6pi4tm2pa9AA',\n                                '10': 'https:\/\/buy.stripe.com\/4gw8yFeVOcZS1l69AB',\n                                '20': 'https:\/\/buy.stripe.com\/7sIcOV6pibVO7Ju8wy',\n                                '100': 'https:\/\/buy.stripe.com\/6oEcOV4ha1ha2pa3cf',\n                                'free': 'https:\/\/buy.stripe.com\/7sIaGN9BuaRK4xi5ko',\n                              },\n                              monthly: {\n                                '5': 'https:\/\/buy.stripe.com\/28o0297tm3pigg0dQW',\n                                '10': 'https:\/\/buy.stripe.com\/eVaaGN9Bue3W3te7sC',\n                                '20': 'https:\/\/buy.stripe.com\/aEUbKRdRKgc42pa8wF',\n                                '100': 'https:\/\/buy.stripe.com\/4gwg179BubVO4xi7sD',\n                                'free': 'https:\/\/buy.stripe.com\/14k5mt9Bu5xq6Fq28g',\n                              },\n                              yearly: {\n                                '5': 'https:\/\/buy.stripe.com\/14k16d7tmf809RCfZa',\n                                '10': 'https:\/\/buy.stripe.com\/8wMbKRcNG7FyfbW4gt',\n                                '20': 'https:\/\/buy.stripe.com\/00g8yF14Y2leaVGaES ',\n                                '100': 'https:\/\/buy.stripe.com\/dR67uB8xq4tmgg0bIX',\n                                'free': 'https:\/\/buy.stripe.com\/dR6dSZcNG4tm0h228o',\n                              }\n                            }\n                            \/\/ for (const amount in amountUrlMapping[type]) {\n                            \/\/   amountUrlMapping[type][amount] ? $form.find(`.donate-select-btn[value=\"${amount}\"]`).show() : $form.find(`.donate-select-btn[value=\"${amount}\"]`).hide();\n                            \/\/ }\n                            $form.find('a[type=\"button\"]').attr('href', amountUrlMapping[type][amount]);\n                            $('a[type=\"button\"]').off('click');\n                        \n                            if ($form[0].checkValidity() && amountUrlMapping[type][amount]) {\n                                $form.find('a[type=\"button\"]').removeClass('disabled')\n\n                                $('a[type=\"button\"]').on('click', e => {\n                                    \/\/ In a timeout, so the href keeps being the right one while the a click is handled by the browser\n                                    setTimeout(() => {\n                                        if(mauticApi && typeof mauticApi.send === 'function')\u00a0{\n                                            console.log('Sending to mautic ', {email: rawMail, is_newsletter: newsletter})\n                                            mauticApi.send({email: rawMail, is_newsletter: newsletter, source: \"Spende\"});\n                                        }\n                                        if (typeof gtag === 'function') {\n                                            gtag('event', 'donation_submitted', {\n                                                event_category: 'donation',\n                                                event_label: 'form_submitted',\n                                                value: Number.parseInt(amount),\n                                                post: page,\n                                                category_slugs: categories,\n                                            });\n                                        }\n                                        \/*\n                                        Modal bleibt offen\n                                        $(\".mollie-donation-modal\").removeAttr(\"data-modal-opened\");\n                                        $(\".mollie-donation-modal\").removeAttr(\"open\");*\/\n                                        $form.find('button[value=\"' + default_value + '\"]').click()\n                                        $form.find('input[type=\"email\"]').val('')\n                                        $form.find('.checkbox-label').addClass('hidden');\n                                        $form.find('.checkbox-label input').prop('checked', false);\n                                        $form.change();\n                                    }, 100);\n                                });\n                            } else {\n                                $('a[type=\"button\"]').on('click', e => {\n                                    e.preventDefault();\n                                    $form[0].reportValidity();\n                                });\n                                $form.find('a[type=\"button\"]').addClass('disabled')\n                            }\n                        }\n                        setDonateButtonUrl();\n    \n                        $form.on('change', setDonateButtonUrl);\n                    }\n                });\n            })(jQuery);\n          });\n        <\/script>\n    <\/div><\/div>[\/vc_column][\/vc_row]<\/p>\n<\/section>","protected":false},"excerpt":{"rendered":"<p>Ein paar Zeilen Prompt gen\u00fcgen \u2013 und Sekunden sp\u00e4ter entsteht ein Popsong samt Gesang, Arrangement und Coverbild. K\u00fcnstliche Intelligenz komponiert inzwischen nicht mehr nur Hintergrundmusik, sondern kann quasi marktf\u00e4hige Tracks produzieren. F\u00fcr die Musikindustrie beginnt damit eine Phase des Umbruchs, die tiefer greift als Streaming oder Download-Revolution.<\/p>\n","protected":false},"author":13,"featured_media":346746,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","_wp_rev_ctl_limit":""},"categories":[4],"tags":[],"class_list":["post-641512","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-economy"],"acf":[],"_links":{"self":[{"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/posts\/641512","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/comments?post=641512"}],"version-history":[{"count":3,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/posts\/641512\/revisions"}],"predecessor-version":[{"id":641516,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/posts\/641512\/revisions\/641516"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/media\/346746"}],"wp:attachment":[{"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/media?parent=641512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/categories?post=641512"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/es.exxpress.at\/api\/wp\/v2\/tags?post=641512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}