Exposing artboard volume

Adds ```artboard->volume(0.9f);``` to C++ and artboard.volume getter/setter to JS!

Needs to be exposed to the high level TS runtime so it can then be used by React for our community.

Diffs=
cb2ea5b2d Exposing artboard volume (#7022)

Co-authored-by: Luigi Rosso <luigi-rosso@users.noreply.github.com>
diff --git a/.rive_head b/.rive_head
index 406e3a5..8d2c3c4 100644
--- a/.rive_head
+++ b/.rive_head
@@ -1 +1 @@
-8ecc99130db737d49ce0889501c421bd53b58f9e
+cb2ea5b2d31eb6888a96cb25524392087bdf47c7
diff --git a/include/rive/artboard.hpp b/include/rive/artboard.hpp
index 8338a6d..2365af9 100644
--- a/include/rive/artboard.hpp
+++ b/include/rive/artboard.hpp
@@ -260,10 +260,15 @@
 
     StatusCode import(ImportStack& importStack) override;
 
+    float volume() const;
+    void volume(float value);
+
 #ifdef EXTERNAL_RIVE_AUDIO_ENGINE
     rcp<AudioEngine> audioEngine() const;
     void audioEngine(rcp<AudioEngine> audioEngine);
 #endif
+private:
+    float m_volume = 1.0f;
 };
 
 class ArtboardInstance : public Artboard
diff --git a/src/artboard.cpp b/src/artboard.cpp
index b386bf7..6021a07 100644
--- a/src/artboard.cpp
+++ b/src/artboard.cpp
@@ -796,6 +796,9 @@
     return result;
 }
 
+float Artboard::volume() const { return m_volume; }
+void Artboard::volume(float value) { m_volume = value; }
+
 ////////// ArtboardInstance
 
 #include "rive/animation/linear_animation_instance.hpp"
diff --git a/src/audio_event.cpp b/src/audio_event.cpp
index d0d8098..9a9e043 100644
--- a/src/audio_event.cpp
+++ b/src/audio_event.cpp
@@ -20,6 +20,12 @@
         return;
     }
 
+    auto volume = audioAsset->volume() * artboard()->volume();
+    if (volume <= 0.0f)
+    {
+        return;
+    }
+
     auto engine =
 #ifdef EXTERNAL_RIVE_AUDIO_ENGINE
         artboard()->audioEngine() != nullptr ? artboard()->audioEngine() :
@@ -27,9 +33,10 @@
                                              AudioEngine::RuntimeEngine();
 
     auto sound = engine->play(audioSource, engine->timeInFrames(), 0, 0);
-    if (audioAsset->volume() != 1.0f)
+
+    if (volume != 1.0f)
     {
-        sound->volume(audioAsset->volume());
+        sound->volume(volume);
     }
 #endif
 }