FLAC Checker is a tool designed to efficiently identify and handle potentially corrupted FLAC audio files in your collection. FLAC files, while a popular lossless audio format, can become corrupted due to various reasons such as incomplete internet downloads, interruptions during file transfers, disk errors, or other unexpected scenarios. Manually identifying these files in a large collection can be tedious. FLAC Checker streamlines this process, making it easier to maintain the integrity of your FLAC collection.
- Efficiency: The script remembers files it has already processed. When run multiple times, it avoids re-checking previously scanned files.
- Logging: Comprehensive logging is provided, which includes progress logs as well as a main log detailing the status of each file.
- Interactive Deletion: After the scan, the script prompts the user for the deletion of directories containing corrupted files.
- Docker Support: A Dockerfile is provided for easy setup and execution.
- Python 3.x
- FLAC files to be checked
- Docker (if using the Docker setup)
- Clone the repository or download the
flac_checker.py
script. - Navigate to the directory containing the script using your terminal or command prompt.
- Run the script with the following command:
python3 flac_checker.py [path_to_music_folder] [path_to_corrupted_flacs_folder] [path_to_log_file]
Replace the placeholders ([...]
) with appropriate paths. For example:
python3 flac_checker.py /music /corrupted_flacs /app/flac_checker.log
- Clone the repository.
- Navigate to the directory containing the
flac_checker.py
script and the Dockerfile. - Build the Docker image:
docker build -t flac_checker:latest .
- Run the Docker container:
docker run -v [path_to_music_folder]:/app/music -v [path_to_corrupted_flacs_folder]:/app/corrupted_flacs -v [path_to_log_file]:/app/flac_checker.log flac_checker:latest
Replace the placeholders ([...]
) with appropriate paths. For example:
docker run -v /music:/app/music -v /corrupted_flacs:/app/corrupted_flacs -v /app/flac_checker.log:/app/flac_checker.log flac_checker:latest
Feel free to fork this repository, make changes, and submit pull requests. Any contributions are welcome!