Data Handling
August 9, 2024 ยท View on GitHub
Data Structure
The project works with audio data stored in a specific directory structure:
-
Raw Data: Unprocessed audio files, typically in
.wavformat.data/raw/tracks/: Contains folders for each track (e.g.,song1/,song2/).- Example:
data/raw/tracks/song1/vocals.wav
-
Processed Data: Feature files and preprocessed data ready for model input.
data/processed/features/: Contains extracted features like MFCCs and spectrograms.- Example:
data/processed/features/song1_vocals_mfcc.npy
Data Collection
- Source Audio: Collect raw audio files for different tracks (vocals, instruments, etc.).
- Reference Tracks: Include mixed and mastered tracks for the AI to learn from.
Data Processing Workflow
-
Loading Audio:
- Use the
load_audio()function fromsrc/data_processing.pyto load audio files into numpy arrays.
- Use the
-
Splitting Tracks:
- Use the
split_tracks()function to divide longer audio files into manageable segments.
- Use the
-
Feature Extraction:
- Use
extract_mfcc()andextract_spectrogram()fromsrc/feature_extraction.pyto extract features for model training.
- Use
-
Saving Processed Data:
- Save extracted features as
.npyfiles in thedata/processed/features/directory.
- Save extracted features as
Ensure your data is properly organized before starting model training.