Awesome
<a name="readme-top"></a>
<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="Bro Audio Logo"> <img src="https://raw.githubusercontent.com/man572142/Bro_Audio/main/Assets/BroAudio/Logo.png" alt="Logo" width="128" height="128"> </a> <!-- PROJECT Title --> <h3 align="center">BroAudio</h3> <p align="center">A simple and intutive Audio Middleware for Unity <br /> <a href="https://man572142s-organization.gitbook.io/broaudio/"><strong>Explore the docs »</strong></a> <br /> <br /> <a href="https://discord.com/invite/CNWRcc6Zfp">Discord</a> · <a href="https://github.com/man572142/Bro_Audio/issues">Report Bug</a> · <a href="https://github.com/man572142/Bro_Audio/issues">Request Feature</a> </p> </div> <!-- TABLE OF CONTENTS --> <details> <summary>Table of Contents</summary> <ol> <li><a href="#about-the-project">About The Project</a></li> <li><a href="#quick-start">Quick Start</a></li> <li><a href="#explanation">Explanation</a></li> <li><a href="#roadmap">Roadmap</a></li> <li><a href="#license">License</a></li> <li><a href="#contact">Contact</a></li> <li><a href="#acknowledgments">Acknowledgments</a></li> </ol> </details> <!-- ABOUT THE PROJECT -->About The Project
<a href="https://youtu.be/HtjgdIc9ons?si=OwSPlDb3wNZUFVNP"> <img src="https://markdown-videos-api.jorgenkh.no/url?url=https%3A%2F%2Fyoutu.be%2FHtjgdIc9ons%3Fsi%3DOwSPlDb3wNZUFVNP" alt="Official Tralier" width="700" title="Official Tralier"/> </a>BroAudio is a sound management and playback system designed for Unity. It's unique in its focus on <a href="#sound-quality">sound quality</a> and a <a href="#developer-friendly">developer-friendly</a> experience. You can create extensive and captivating audio systems without the need for mastering complex middleware like FMOD or Wwise. Whether you're part of a large team or a solo developer, achieving the goals becomes effortless and efficient with BroAudio.
<p align="right">(<a href="#readme-top">back to top</a>)</p>Features
- Fade In/Out and Cross Fade with multiple ease function
- Seamless Loop
- Random Playback (with weight), Sequential Playback
- Clip Editor for permanent clip editing
- Dynamic audio effect
- Enhanced Volume Control Range (up to +20dB)
- Visualized waveform and visualized playback flow view
- Customizable GUI settings
- Write code in just one line
- and more…
Quick Start
Install
Get it from Unity Asset Store, install it from Package Manager
Creating sound libraries
- Locate <span style="color: #FF9333;"><i>Tools/BroAudio/Library Manager</i></span> in the Unity menu bar.
- Drag and drop the required AudioClip.
- Edit the parameters<br/> edit the clip's volume, playback position... etc.
- Name the asset and entities and choose an AudioType<br/> You could also skip this step. Just remember to set it before you need them in your scene.
Implementation
You can implement the sound you've created in Library Manager with or without coding.
Without Code
- <b>Add <span style="color: #FF9333;">SoundSource</span> component to a game object</b>
- <b>Select the required sound via the dropdown menu</b>
- <b>Choose the triggering strategy</b><br/> Enables "Play On Start" if you want to play it when the game object is activated at runtime. Or using <a href="https://docs.unity3d.com/2022.3/Documentation/Manual/UnityEvents.html">Unity Event</a> to trigger the Play() function like the Button's OnClick as below.
With Code
- <b>Declare a SoundID and implement
BroAudio.Play()
to play it</b>
- <b>Select the required sound via the dropdown menu in the Inspector</b><br/> The same way as using SoundSource.
Hit the Unity play button and enjoy it !
That's all you need to start using BroAudio. Of course, there is more than just this. Check out the rest of the documentation to fully unlock all the features of BroAudio.
<p align="right">(<a href="#readme-top">back to top</a>)</p>Explanation
<!-- ## Library Manager ### Asset A ScriptableObject that contains a group of libraries and their informations. ### Library Represent a sound associated with an AudioID that can be played. It can store many clips and their settings about how they would behave. ## Clip Editor Let you edit an audio clip and save it permanently in Unity. --><a name="sound-quality"></a>
Why is this tool related to sound quality?
Indeed, apart from issues like noise and distortion that need to be repaired, there is no objective method to enhance sound quality. However, a playback system still holds significant impact over the quality of sound. This is because the loss of sound quality is relatively easy to occur and hard to avoid.
Here are some common issues listed along with how BroAudio addresses them:
Issues | Bro's Solutions |
---|---|
Distortion caused by playing multiple sounds simultaneously. | Well-designed mixer and auto-ducking on the master track |
Comb Filtering | Preventing rapid repetition of the same sound |
Unbalanced volume levels | Full range (-80dB to +20dB) and highly adaptable real-time volume control system |
Unnatural volume changes in Fade In, Fade Out and CrossFade | Utilizing AudioMixer for volume control |
<a name="developer-friendly"></a>
What does Developer-Friendly mean in this tool?
BroAudio aims to minimize the amount of information presented to developers. This means that by default, you will only see a few commonly used features, while other functions dynamically appear in the UI interface as you interact. You won't be overwhelmed by a large number of rarely used, or even completely unfamiliar settings and parameters.
What's even better is that BroAudio allows you to customize the GUI layout. You can set and select the parameters you want to display in <span style="color: #FF9333;"><i>Tools/BroAudio/Preferences</i></span>.
<p align="right">(<a href="#readme-top">back to top</a>)</p>Can I still use Unity's built-in audio features?
Yes, BroAudio is an add-on plugin, all of Unity's built-in audio features are still available.
<!-- ROADMAP -->Roadmap
See the Roadmap page of the documentation.
<p align="right">(<a href="#readme-top">back to top</a>)</p> <!-- CONTACT -->Support & Contact
Join us on <a href="https://discord.com/invite/CNWRcc6Zfp">Discord</a>
Che Hsiang Weng - man572142@gmail.com
Project Link: https://github.com/man572142/Bro_Audio
<p align="right">(<a href="#readme-top">back to top</a>)</p> <!-- ACKNOWLEDGMENTS -->Acknowledgments
These blogs and articles have been a great source of help and inspiration for BroAudio.
<p align="right">(<a href="#readme-top">back to top</a>)</p> <!-- MARKDOWN LINKS & IMAGES --> <!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->