Coder Social home page Coder Social logo

rotl-bells's Introduction

"Roderick on the Line" Bell Detector

*** WIP ***

Description

The "Roderick on the Line" Bell Detector finds every time a bell has been rung in a corpus of podcast episodes and saves extracts of the audio.

"Roderick on the Line" is a podcast, self-described as "Merlin Mann’s frank & candid weekly call with John Roderick of The Long Winters." http://roderickontheline.com/

Starting in Episode 34, "A Shit Barge Full of Long Pigs", Merlin started ringing a desk bell when John said something particularly funny or noteworthy, as well as to indicate the end of an episode.

My goal with this project is to build a supercut of every bell ring.

ding

Methodology

A spectrogram is a visual representation of a sound. Here's a spectrogram of the first appearance of the bell in Episode 34:

canonical bell

The vertical line at 132 seconds is Merlin's hand hitting the bell and the horizontal lines to the right represent the bell's ring. Bells ring at several harmonic frequencies (for more background, I highly recommend Wikipedia's article on bells).

Using the Librosa package's (onset detector)[http://bmcfee.github.io/librosa/generated/librosa.onset.onset_detect.html?highlight=onset_detection], we can split the sound up into small chunks of time after each onset. The blue lines in this spectrogram are the detected onsets:

canonical bell with onsets

For inputs to my classifier, I used the spectrograms of the small chunks of time after each onset.

Directory Structure

RotL episodes should be downloaded and saved to the "episodes" directory in the format "rotl_0000.mp3" (where 0000 is the zero-padded episode number).

Found bells will be saved to the "found_bells" directory, which the script will create.

Known Issues

The logistic regression isn't working great. Many false positives are being detected, especially Merlin's singsongy laugh and both hosts' musical interjections. I plan to try other pattern detection algrorithms, and try different methods of extracting features.

Also, I found that ffmpeg is far faster than librosa at reading and writing audio files (important when the corpus runs to 243 hours of audio) but I keep running into a bug where ffmpeg can't find files.

Roderick on the Line Stats

(through Episode 184)

Total length:

  • Total RotL seconds: 875,690
  • Total RotL minutes: 14,595
  • Total RotL hours: 243
  • Total RotL days: 10.14
  • Total RotL weeks: 1.45

Typical and atypical episodes:

  • Average RotL length in minutes: 78.9
  • Minimum RotL length in minutes: 51.0, Ep. 147: "The Om of Surrender"
  • Maximum RotL length in minutes: 119.9, Ep. 183: "Here Comes Nacho"

rotl-bells's People

Contributors

devinbrady avatar

Stargazers

Knut Melvær avatar Don avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.