VAD - Simple Voice Activity Detection
Project description
VAD - simple voice activity detection in Python
This is a simple voice activity detection (VAD) algorithm in Python. It is based on simple energy-based thresholding and is intended to be used as a simple method for detecting speech in audio files when other methods cannot be used for both privacy, performance, or other reasons.
Installation
You can install the package using pip:
pip install vad
Usage
The package can be seamlessly integrated into your Python code. The following example shows how to use the package to detect speech in an audio file:
from vad import EnergyVAD
# load audio file in "audio" variable
vad = EnergyVAD(
sample_rate: int = 16000,
frame_length: int = 25,
frame_shift: int = 20,
energy_threshold: float = 0.05,
pre_emphasis: float = 0.5,
) # default values are used here
voice_activity = vad(audio) # returns a boolean array indicating whether a frame is speech or not
# you can also use the following method to get the audio file with only speech
# speech_signal is a numpy array of the same shape as audio
speech_signal = vad.apply_vad(audio)
Audio samples
example.wav
is a sample audio file that can be used to test the package.example_vad.wav
is the audio file with only speech after applying the VAD algorithm.example_vad_2.wav
is the audio file with only speech direcly extracted from the original audio file using theapply_vad
method.vad_output.png
is a plot of the voice activity detected by the VAD algorithm.test_vad.py
is the script that was used to generate the above audio files and plot.
Known issues
- There is no additional VAD algorithm implemented in this package at the moment. It may be added in the future.
License
This project is licensed under the CC-BY-NC-SA 4.0 license. See the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file vad-1.0.tar.gz
.
File metadata
- Download URL: vad-1.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 018b374bedce590168147cd7e309d431aede5700ce50b11ae75cecc4c76fb5a5 |
|
MD5 | 8d2e333ccd1c819989d8ece294f73208 |
|
BLAKE2b-256 | 0b6b4c51d807680526d923a8234a0eba8e13f05bcd03fa548dc3c40635d2bcc1 |
File details
Details for the file vad-1.0-py3-none-any.whl
.
File metadata
- Download URL: vad-1.0-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f0ea34d9a9a1889e7ad2bc1b0d5624c7fcddc9f5e01492273333d257d088fa73 |
|
MD5 | d10f07e6a7e713a5254b297d69d5e551 |
|
BLAKE2b-256 | e6b20c224adb41983b390a8b497214e97e32d33aeb37aa35395dd421c9eb9b76 |