PureTunes is a C# .NET application designed to remove specific advertisements from radio broadcasts using audio fingerprinting. The program removes ads from a provided audio file of a radio broadcast by utilizing the technique of audio fingerprinting through the powerful soundfingerprinting library.
PureTunes works by comparing the audio fingerprints of the provided radio broadcast with those of the supplied advertisement audio files. Once identified, the tool eliminates the ads seamlessly from the broadcast audio, providing an uninterrupted listening experience.
- .NET Core 7.0
- Docker (for running the
soundfingerprinting.emycontainer) - FFmpeg binaries. Recommended: ffmpeg-5.1.2-full_build-shared
-
Clone the Repository and navigate to the Root Directory:
git clone https://github.com/Serek16/PureTunes.git cd PureTunes -
Edit Configuration File: Open the
EmySoundProject/appsettings.jsonfile and edit it with the appropriate paths:{ "Dataset": "path to the folder with radio broadcast files", "ExaminedFileDataset": "path to the folder with subfolders containing ads", "OutPath": "path to the folder where the results are to be generated" } -
Navigate to the Project Directory:
cd PureTunes -
Restore NuGet Packages:
dotnet restore
-
Build the Project:
dotnet build
-
Run the SoundFingerprinting Docker container:
-
Windows:
docker run -d -v $Env:USERPROFILE/FingerprintsStorage:/app/data -p 3399:3399 -p 3340:3340 addictedcs/soundfingerprinting.emy:latest -
Linux:
docker run -d -v ~/FingerprintsStorage:/app/data -p 3399:3399 -p 3340:3340 addictedcs/soundfingerprinting.emy:latest
-
-
Install FFmpeg:
- Windows: Download FFmpeg libraries for x64 platform. Place the executable files in the following folder:
C:\FFmpeg\bin\x64. The recommended version is ffmpeg-5.1.2-full_build-shared.
- Linux:
sudo apt-get install ffmpeg
- Windows: Download FFmpeg libraries for x64 platform. Place the executable files in the following folder:
C:\FFmpeg\bin\x64. The recommended version is ffmpeg-5.1.2-full_build-shared.
-
Run the Project:
dotnet run
-
Access the Web UI: Open your web browser and navigate to http://localhost:5000 to access the user interface.
This project is made available under the MIT license. More information can be found in the LICENSE file.
