Inspiration

Censorship is more important than ever today in a society where television and online videos are prevalent among the young generation. Usually censorship requires a lot of time to accomplish in post-production, because editors have to pan through the entire video in order to catch every word. CURTIS not only gives editors an easier job, but can also be used by parents in the household to filter what your child is able to hear.

What it does

CURTIS interacts with the user via GUI to ask for an audio/video file and desired location of the modified file. Once the information is received, CURTIS gets right to work at analyzing the sound. It will convert it into .wav with the proper encoding in order for the CMU Sphinx4 API to be able to interact with the sound. The API returns a cluster of information from which the program parses timestamps of swear words, then extracts a bleep sound that matches the length of the words and replaces them. The modified audio is finally recombined with the video and is saved onto the user's computer.

How we built it

We built it using Gradle and Java, as well as CMU's Sphinx4 Speech-To-Text API. The sound bytes are manipulated using a powerful service called FFMPEG.

Challenges we ran into

We ran into challenges with using FFMPEG and Java. We ended up having to use a wrapper in order to execute the commands from the Java client.

Accomplishments that we're proud of

We are proud that we were able to overcome all odds and actually complete the project.

What we learned

We learned how to use the Sphinx4 API by CMU and manipulate sound with FFMPEG. They are very powerful tools that open up many new possibilities when used in conjunction.

What's next for CURTIS the Curse Word Purger

The premise behind CURTIS is very promising and we can foresee further development and advancement occurring in the near future. The main area for improvement is training the module to recognize human speech and swear words better.

Built With

Share this project:

Updates