Skip to content

Latest commit

 

History

History
60 lines (46 loc) · 3.13 KB

README.md

File metadata and controls

60 lines (46 loc) · 3.13 KB

VL.GameAudioPlayer

High level command based audio player for vvvv Gamma. Tested with vvvv 2021.4.12 stable.

Install from nuget In Gamma go to top left menu>Manage Nugets>Command line and type nuget install VL.GameAudioPlayer

Video tutorial

NOTE - The advanced architecture has been simplified since the video. Check the Advanced Architecture helppatch.

Features

  • Aims to reduce the complexity of getting audio playback into your app while maintaining good performance.
  • Loads and plays media without blocking your main thread
  • Removes headaches of managing player instances and building state machines for straightforward background music tasks.
  • Simple organisation paradigm from video games with three main categories of media: Sound Effects, Music and Dialog
  • Supports advanced workflows to simplify collaboration with composers and import from audio software (eg Ableton)
  • Use loops of music and play loops in sequence
  • Potentially cross-platform (only tested on Windows so far)
  • Documented through interactive helppatches
  • Extract BPM and Bar information for visualisation
  • Includes original test media (also released under MIT licence, although if you use these in a project a credit as composer would be appreciated...)

image

Expectations

  • Only plays out the default sound device, no ASIO
  • Only plays audio files, no recording or live inputs
  • No realtime effects, beat detection or FFT

(If you need these functions see VL.Audio )

  • No multitrack support
  • Not intended for tight sync with video files.
  • Does not support MP3 (due to underlying library limitation)

Dependencies

Status

  • 90% complete and working
  • PlayDialog functionality is there but not tested properly because I didn't have a use case. I can imagine there are specific needs for working with lots of dialog (eg managing localisation or linking mediakeys to dialog data for subtitle display). If someone has a project with a dialog usecase maybe you could contribute to this?
  • Positioning functionality is just left to right panning. In theory the underlying library supports 3D positioning. Again I didn't have a usecase during development so if you've got one and you would like to contribute please get in touch.

Changelog

  • 1.0.4 Simplified the advanced workflow with ChannelCommand stateless operations. Find them under Advanced in node browser.
  • 1.0.3 improved helppatches, improved dispose, fixed incorrect duration calculation for queued items
  • 1.0.2 improved helppatches
  • 1.0.1 improved helppatches, added function for MediaStatus command to continuing following the same player while next media has the same path.
  • 1.0.0 initial release

Licence

MIT

Special Thanks

All those in the vvvv chat for help with various issues during development.