help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • Blog
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
music-classification
RSK World
music-classification
Music Classification Dataset - Genre Classification + Music AI + Audio ML
music-classification
  • __pycache__
  • data
  • models
  • notebooks
  • utils
  • .gitignore1.2 KB
  • ADVANCED_FEATURES.md10.7 KB
  • COMPLETE_PROJECT_INFO.txt16.3 KB
  • CONTRIBUTING.md2 KB
  • DATASET_INFO.md8.5 KB
  • INSTALLATION.md8.4 KB
  • LICENSE2.1 KB
  • PROJECT_STRUCTURE.md8.4 KB
  • PROJECT_SUMMARY.md12.7 KB
  • README.md5.7 KB
  • START_HERE.md7 KB
  • USAGE_GUIDE.md11.1 KB
  • WHATS_NEW.md8.9 KB
  • config.py4.3 KB
  • demo.py11.9 KB
  • example_usage.py8.8 KB
  • index.html38.8 KB
  • music-classification.png2.1 MB
  • quick_start.py5.7 KB
  • requirements.txt1.1 KB
  • setup.py2.9 KB
  • validate_project.py7 KB
PROJECT_STRUCTURE.md
PROJECT_STRUCTURE.md
Raw Download

PROJECT_STRUCTURE.md

# Music Classification Dataset - Project Structure

<!--
/**
* Project: Music Classification Dataset
* Author: Molla Samser
* Company: RSK World
* Designer & Tester: Rima Khatun
* Website: https://rskworld.in
* Email: help@rskworld.in, support@rskworld.in
* Phone: +91 93305 39277
*/
-->

## Complete Project Structure

```
music-classification/
│
├── 📄 README.md # Main project documentation
├── 📄 LICENSE # MIT License
├── 📄 requirements.txt # Python dependencies
├── 📄 setup.py # Installation setup script
├── 📄 config.py # Configuration settings
├── 📄 .gitignore # Git ignore rules
├── 📄 quick_start.py # Quick start script
├── 📄 DATASET_INFO.md # Detailed dataset information
├── 📄 USAGE_GUIDE.md # Usage instructions
├── 📄 CONTRIBUTING.md # Contribution guidelines
├── 📄 PROJECT_STRUCTURE.md # This file
├── 📄 index.html # Demo webpage
├── 🖼️ music-classification.png # Project image
│
├── 📁 data/ # Dataset directory
│ ├── 📄 README.md # Data directory info
│ ├── 📄 train_data.csv # Training metadata
│ ├── 📄 test_data.csv # Testing metadata
│ ├── 📄 features.csv # Pre-extracted features
│ └── 📁 audio/ # Audio files by genre
│ ├── 📁 classical/
│ ├── 📁 jazz/
│ ├── 📁 rock/
│ ├── 📁 pop/
│ ├── 📁 hiphop/
│ ├── 📁 electronic/
│ ├── 📁 country/
│ └── 📁 blues/
│
├── 📁 models/ # Machine learning models
│ ├── 📄 __init__.py
│ ├── 📄 train_model.py # Model training script
│ ├── 📄 predict.py # Prediction script
│ └── 📁 saved_models/ # Saved model files
│ └── (model files will be saved here)
│
├── 📁 utils/ # Utility modules
│ ├── 📄 __init__.py
│ ├── 📄 audio_processor.py # Audio processing utilities
│ └── 📄 feature_extractor.py # Feature extraction functions
│
└── 📁 notebooks/ # Jupyter notebooks
├── 📓 exploratory_analysis.ipynb # Data exploration
└── 📓 audio_visualization.ipynb # Audio visualization
```

## Directory Descriptions

### Root Directory

| File | Purpose | Author |
|------|---------|--------|
| `README.md` | Main project documentation and overview | Molla Samser |
| `LICENSE` | MIT License with author information | Molla Samser |
| `requirements.txt` | Python package dependencies | Molla Samser |
| `setup.py` | Package installation configuration | Molla Samser |
| `config.py` | Project configuration settings | Molla Samser |
| `quick_start.py` | Quick setup and testing script | Molla Samser |
| `index.html` | Interactive demo webpage | Molla Samser |

### data/

Contains all dataset files and audio samples.

**CSV Files:**
- `train_data.csv` - Training set metadata (filename, genre, duration, sample_rate, path)
- `test_data.csv` - Test set metadata
- `features.csv` - Pre-extracted audio features

**audio/ Subdirectories:**
Each genre has its own subdirectory containing audio files in WAV format:
- `classical/` - Classical music samples
- `jazz/` - Jazz music samples
- `rock/` - Rock music samples
- `pop/` - Pop music samples
- `hiphop/` - Hip-hop music samples
- `electronic/` - Electronic music samples
- `country/` - Country music samples
- `blues/` - Blues music samples

### models/

Machine learning model training and prediction scripts.

| File | Purpose |
|------|---------|
| `train_model.py` | Train classification models (Random Forest, SVM, KNN) |
| `predict.py` | Make predictions on new audio files |
| `saved_models/` | Directory for saved trained models |

### utils/

Reusable utility modules for audio processing and feature extraction.

| Module | Purpose |
|--------|---------|
| `audio_processor.py` | AudioProcessor class for loading and preprocessing audio |
| `feature_extractor.py` | FeatureExtractor class for extracting audio features |

### notebooks/

Jupyter notebooks for exploration and visualization.

| Notebook | Purpose |
|----------|---------|
| `exploratory_analysis.ipynb` | Dataset exploration and statistics |
| `audio_visualization.ipynb` | Audio waveform and feature visualization |

## Key Features by File

### audio_processor.py

**Author:** Molla Samser (RSK World)

**Features:**
- Load audio files (WAV, MP3)
- Normalize audio amplitude
- Pad or trim to standard length
- Convert stereo to mono
- Basic noise reduction
- Save processed audio

### feature_extractor.py

**Author:** Molla Samser (RSK World)

**Features:**
- Extract MFCC (Mel-Frequency Cepstral Coefficients)
- Extract spectral features (centroid, rolloff, bandwidth)
- Extract chroma features
- Extract zero crossing rate
- Detect tempo (BPM)
- Calculate RMS energy

### train_model.py

**Author:** Molla Samser (RSK World)

**Features:**
- Support for multiple model types (Random Forest, SVM, KNN)
- Automated feature extraction from CSV
- Model training and evaluation
- Save trained models
- Performance metrics and confusion matrix

### predict.py

**Author:** Molla Samser (RSK World)

**Features:**
- Load trained models
- Predict genre for new audio files
- Confidence scores
- Genre probability distribution
- Batch prediction support

## Configuration (config.py)

**Author:** Molla Samser

Central configuration file containing:
- Project metadata (name, version, author info)
- Directory paths
- Audio settings (sample rate, duration, etc.)
- Model parameters
- Feature extraction settings
- Contact information

## Usage Workflows

### 1. Dataset Exploration
```
quick_start.py → exploratory_analysis.ipynb → audio_visualization.ipynb
```

### 2. Model Training
```
data/train_data.csv → train_model.py → saved_models/
```

### 3. Making Predictions
```
audio file → predict.py → prediction results
```

### 4. Custom Processing
```
audio file → audio_processor.py → feature_extractor.py → custom model
```

## File Dependencies

```
train_model.py
├── depends on: utils/audio_processor.py
├── depends on: utils/feature_extractor.py
└── reads from: data/train_data.csv, data/test_data.csv

predict.py
├── depends on: utils/audio_processor.py
├── depends on: utils/feature_extractor.py
└── loads from: models/saved_models/

notebooks/*.ipynb
├── depends on: utils/audio_processor.py
├── depends on: utils/feature_extractor.py
└── reads from: data/*.csv
```

## Installation Order

1. Clone/download repository
2. Install dependencies: `pip install -r requirements.txt`
3. Run quick start: `python quick_start.py`
4. Explore data: `jupyter notebook`
5. Train models: `python models/train_model.py`
6. Make predictions: `python models/predict.py`

## Author Information

**Every file in this project includes author information:**

```python
"""
Project: Music Classification Dataset
Author: Molla Samser
Company: RSK World
Designer & Tester: Rima Khatun
Website: https://rskworld.in
Email: help@rskworld.in, support@rskworld.in
Phone: +91 93305 39277
"""
```

## Contact & Support

**Author:** Molla Samser
**Company:** RSK World
**Designer & Tester:** Rima Khatun

**Contact Information:**
- 🌐 Website: [https://rskworld.in](https://rskworld.in)
- 📧 Email: help@rskworld.in, support@rskworld.in
- 📱 Phone: +91 93305 39277
- 📞 Contact Form: [https://rskworld.in/contact.php](https://rskworld.in/contact.php)

---

**© 2026 RSK World - Free Programming Resources & Source Code**

*Founded by Molla Samser with Designer & Tester Rima Khatun*

---

For questions, support, or contributions, please visit: **https://rskworld.in/contact.php**

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer