Inspiration

The idea came to me while watching the recent world series and wondering if anyone in the bar I was at cared about the advertisements being played. From there it was a relatively easy step to realize that unless the product was sold at the bar, the owner of the bar didn't care about the ads either. That meant that there was effectively dead airtime, and something else could go in its place.

What it does

LiveSwap allows proprietors of bars and restaurants to automatically replace broadcast ads with their own content. This could range from a static image of the days specials, to well produced content promoting upcoming events, all easily managed from a web portal.

How we built it

We trained a CNN by feeding it audio spectrograms of live sports games and broadcast advertisements based on an 80%/20% data split. We then feed spectrograms of the live programming and based on the last 5s of audio data determine whether to pass through the content, or to replace the broadcast ad with our own ad content. The final touch was to build out a fastAPI web portal so that a user can manage the ad content being displayed.

What's next for LiveSwap

The next steps would be to clean up the output to ensure it maintains the original resolution, wrap it up into smaller hardware and go find a place to pilot for deployment. The end result for us would be to build out an ad platform allowing us to orchestrate the sale of ad space in bars and restaurants directly to advertisers, allowing bar owners to effectively monetize otherwise dead airtime.

Built With

  • fastapi
  • fsspec
  • joblib
  • librosa
  • matplotlib
  • numpy
  • obs
  • opencv-python-(cv2)
  • pandas
  • pillow
  • pydantic
  • python
  • python-multipart
  • python-vlc
  • pytorch-(torch)
  • requests
  • scikit-learn
  • scipy
  • sounddevice
  • soundfile
  • soxr
  • starlette
  • torchaudio
  • typing-extensions
  • uvicorn
Share this project:

Updates