Returns a Music. Supports wav, mp3, and ogg.

(music "song.wav")
(music "song.wav" :play)
Options
:dispose
Needs to be called when the Music is no longer needed.
:get-position
Returns the playback position in seconds.
:get-volume
:is-looping
:is-playing
:pause
Pauses the play back. If the music stream has not been started yet or has finished playing a call to this method will be ignored.
:play
Starts the play back of the music stream. In case the stream was paused this will resume the play back. In case the music stream is finished playing this will restart the play back.
:set-looping^boolean is-looping
Sets whether the music stream is looping. This can be called at any time, whether the stream is playing.
:set-on-completion-listener^Music.OnCompletionListener listener
Register a callback to be invoked when the end of a music stream has been reached during playback.
:set-pan^float pan, ^float volume
Sets the panning and volume of this music stream.
:set-position^float position
Set the playback position in seconds.
:set-volume^float volume
Sets the volume of this music stream. The volume must be given in the range [0,1] with 0 being silent and 1 being the maximum volume.
:stop
Stops a playing or paused Music instance. Next time play() is invoked the Music will start from the beginning.
Source
(defn music*
  [^String path]
  (or (u/load-asset path Music)
      (audio! :new-music (files! :internal path))))
(defmacro music
  [path & options]
  `(let [^Music object# (music* ~path)]
     (u/calls! object# ~@options)))