inaSpeechSegmenter
pyannote-audio
Our great sponsors
inaSpeechSegmenter | pyannote-audio | |
---|---|---|
3 | 15 | |
695 | 5,027 | |
2.9% | 7.0% | |
6.4 | 8.6 | |
about 1 month ago | 4 days ago | |
Python | Jupyter Notebook | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
inaSpeechSegmenter
-
Listen to HD radio with a $30 RTL SDR dongle
I have a little hobby project where I record an FM radio music station using a SDR and then remove all the non-music portions for offline listening. I like the music selections the DJs pick, but I prefer not to listen to the DJ commentary and the advertisements.
I evaluated three methods of recording: analog capture from a standalone FM receiver, using this nrsc5 library to record the "HD" radio stream, and using an AirSpy SDR with this library: https://github.com/jj1bdx/airspy-fmradion
Recording the "HD" (what a misnomer) radio was nice in that there was no hiss or multipath effects, but in comparison to the other methods the digital compression artifacts became impossible to un-hear. It seems to top out at about 96 kbps
The airspy-fmradion library has some nice stuff in it to address multipath, resulting in the best audio quality of the three methods I tested.
I use https://github.com/ina-foss/inaSpeechSegmenter to identify which segments of the recordings are speech vs. music.
-
(Unpopular?) opinion: KEXP’s John Richards is annoying AF
One key library that makes it possible is this one: https://github.com/ina-foss/inaSpeechSegmenter
-
ytmdl Web - A webapp that lets you download music by getting the audio from YouTube and metadata from various sources like Itunes, Last.FM, Gaana and others. v2 released with lots of fixes.
After looking for a few options, I came across inaSpeechSegmenter. It is a speech segmenter and if you pass it an audio file, it returns the time segments of noises and music.
pyannote-audio
-
Open Source Libraries
pyannote/pyannote-audio
-
AI Transcribing tool for video with two voices?
Open Source. I've found this to be pretty nice, which is just a wrapper on some hugging face models https://github.com/pyannote/pyannote-audio
-
Show HN: PodText.ai – Search anything said on a podcast, Highlight text to play
(not the creator, but I've built something similar for personal use)
This is a great library for determining which speaker is speaking during each time in an audio file (this is called speaker diarization); I imagine they used it or something like it. Works really well out of the box!
https://github.com/pyannote/pyannote-audio
-
I wanted to use OpenAI's Whisper speech-to-text on my Mac without installing stuff in the Terminal so I made MacWhisper, a free Mac app to transcribe audio and video files for easy transcription and subtitle generation. Would love to hear some feedback on it!
Do you think pyannote could be implemented in the Pro version of the app to support diarization?
- I won several speaker diarization challenges with pyannote.audio
-
I made a free transcription service powered by Whisper AI
Free startup idea: Use Whisper with pyannote-audio[0]’s speaker diarization. Upload a recording, get back a multi-speaker annotated transcription.
Make a JSON API and I’ll be your first customer.
[0] https://github.com/pyannote/pyannote-audio
-
Can Whisper differentiate between different voices?
Whisper can’t, but pyannote-audio can. I’ve seen a couple of prototypes out there which link the two together.
-
[D] Is there a way to distinguish different human voices from 1 audio file ?
You can use pyannote python library. It will identify different speakers from audio and will create small audio files with those speakers.
- Post-Game Analysis: Destiny & Alex VS Andrew & Zen Shapiro
-
A quick and dirty tool for automatically analyzing speaking time in online debates (Effortpost)
This Colab notebook is basically a standard template (with small changes) provided by pyannote-audio, the library implementing the speaker diarization functionality we need. (template)
What are some alternatives?
madmom - Python audio and music signal processing library
NeMo - A scalable generative AI framework built for researchers and developers working on Large Language Models, Multimodal, and Speech AI (Automatic Speech Recognition and Text-to-Speech)
GuitarTuner - Guitar tuner program made with Python, Tkinter and PyAudio.
speechbrain - A PyTorch-based Speech Toolkit
ytmdl - A simple app to get songs from YouTube in mp3 format with artist name, album name etc from sources like iTunes, Spotify, LastFM, Deezer, Gaana etc.
Resemblyzer - A python package to analyze and compare voices with deep learning
ffsubsync - Automagically synchronize subtitles with video.
Kaldi Speech Recognition Toolkit - kaldi-asr/kaldi is the official location of the Kaldi project.
subaligner - Automatically synchronize and translate subtitles, or create new ones by transcribing, using pre-trained DNNs, Forced Alignments and Transformers. https://subaligner.readthedocs.io/
uis-rnn - This is the library for the Unbounded Interleaved-State Recurrent Neural Network (UIS-RNN) algorithm, corresponding to the paper Fully Supervised Speaker Diarization.
sox-noise - Noise generator GUI powered by SoX
segmentation_models.pytorch - Segmentation models with pretrained backbones. PyTorch.