JusperLee/Hive

Dataset

Usage

2

2 commits

1 linked in READMEs

updated May 19, 2026

See the code

README

A Semantically Consistent Dataset for Data-Efficient Query-Based Universal Sound Separation

Logo

Kai Li*, Jintao Cheng*, Chang Zeng, Zijun Yan, Helin Wang, Zixiong Su, Bo Zheng, Xiaolin Hu
Tsinghua University, Shanda AI, Johns Hopkins University
*Equal contribution
πŸ“œ Arxiv 2026 | πŸ’» Code | 🎢 Demo

Usage

from datasets import load_dataset

# Load full dataset
dataset = load_dataset("ShandaAI/Hive")

# Load specific split
train_data = load_dataset("ShandaAI/Hive", split="train")

# Streaming mode (recommended for large datasets)
dataset = load_dataset("ShandaAI/Hive", streaming=True)

πŸ“„ Dataset Description

Hive is a high-quality synthetic dataset designed for Universal Sound Separation (USS). Unlike traditional methods relying on weakly-labeled in-the-wild data, Hive leverages an automated data collection pipeline to mine high-purity single-event segments from complex acoustic environments and synthesizes mixtures with semantically consistent constraints.

Key Features

  • Purity over Scale: 2.4k hours achieving competitive performance with million-hour baselines (~0.2% data scale)
  • Single-label Clean Supervision: Rigorous semantic-acoustic alignment eliminating co-occurrence noise
  • Semantically Consistent Mixing: Logic-based co-occurrence matrix ensuring realistic acoustic scenes
  • High Fidelity: 44.1kHz sample rate for high-quality audio

Dataset Scale

MetricValue
Training Set Raw Audio2,442 hours
Val & Test Set Raw Audio292 hours
Mixed Samples19.6M mixtures
Total Mixed Duration~22.4k hours
Label Categories283 classes
Sample Rate44.1 kHz
Training Sample Duration4 seconds
Test Sample Duration10 seconds

Dataset Splits

SplitSamplesDescription
Train17.5MTraining mixtures (4s duration)
Validation1.75MValidation mixtures
Test350kTest mixtures (10s duration)

πŸ“‚ Dataset Structure

Directory Organization

hive-datasets-parquet/
β”œβ”€β”€ README.md
β”œβ”€β”€ train/
β”‚   └── data.parquet
β”œβ”€β”€ validation/
β”‚   └── data.parquet
└── test/
    └── data.parquet

Each split contains a single Parquet file with all mixture metadata. The num_sources field indicates the number of sources (2-5) for each mixture.


πŸ“‹ Data Fields

JSON Schema

Each JSON object contains complete generation parameters for reproducing a mixture sample:

{
    "mix_id": "sample_00000003",
    "split": "train",
    "sample_rate": 44100,
    "target_duration": 4.0,
    "num_sources": 2,
    "sources": {
        "source_id": ["s1", "s2"],
        "path": ["relative/path/to/audio1", "relative/path/to/audio2"],
        "label": ["Ocean", "Rain"],
        "crop_start_second": [1.396, 2.5],
        "crop_end_second": [5.396, 6.5],
        "chunk_start_second": [35.0, 20.0],
        "chunk_end_second": [45.0, 30.0],
        "rms_gain": [3.546, 2.1],
        "snr_db": [0.0, -3.0],
        "applied_weight": [3.546, 1.487]
    },
    "global_normalization_factor": 0.786,
    "final_max_amplitude": 0.95
}

Field Descriptions

1. Basic Info Fields

FieldTypeDescription
mix_idstringUnique identifier for the mixture task
splitstringDataset partition (train / validation / test)
sample_rateint32Audio sample rate in Hz (44100)
target_durationfloat64Target duration in seconds (4.0 for train, 10.0 for test)
num_sourcesint32Number of audio sources in this mixture (2-5)

2. Source Information (sources)

Metadata required to reproduce the mixing process for each audio source. Stored in columnar format (dict of lists) for efficient Parquet storage:

FieldTypeDescription
source_idlist[string]Source identifiers (s1, s2, ...)
pathlist[string]Relative paths to the source audio files
labellist[string]AudioSet ontology labels for each source
chunk_start_secondlist[float64]Start times (seconds) for reading from original audio files
chunk_end_secondlist[float64]End times (seconds) for reading from original audio files
crop_start_secondlist[float64]Precise start positions (seconds) for reproducible random extraction
crop_end_secondlist[float64]Precise end positions (seconds) for reproducible random extraction
rms_gainlist[float64]Energy normalization coefficients: $\text{target_rms} / \text{current_rms}$
snr_dblist[float64]Signal-to-noise ratios in dB assigned to each source
applied_weightlist[float64]Final scaling weights: $\text{rms_gain} \times 10^{(\text{snr_db} / 20)}$

3. Mixing Parameters

Global processing parameters after combining multiple audio sources:

FieldTypeDescription
global_normalization_factorfloat64Anti-clipping scaling coefficient: $0.95 / \text{max_val}$
final_max_amplitudefloat64Maximum amplitude threshold (0.95) to prevent bit-depth overflow

Detailed Field Explanations

Cropping Logic

  • chunk_start/end_second: Defines the reading interval from the original audio file
  • crop_start/end_second: Records the precise random cropping position, ensuring exact reproducibility across runs

Energy Normalization (rms_gain)

Adjusts different audio sources to the same energy level: $$\text{rms_gain} = \frac{\text{target_rms}}{\text{current_rms}}$$

Signal-to-Noise Ratio (snr_db)

The SNR value assigned to each source, sampled from a predefined range using random.uniform(snr_range[0], snr_range[1]).

Applied Weight

The comprehensive scaling weight combining energy normalization and SNR adjustment: $$\text{applied_weight} = \text{rms_gain} \times 10^{(\text{snr_db} / 20)}$$

This is the final coefficient applied to the original waveform.

Global Normalization Factor

Prevents audio clipping after mixing: $$\text{global_normalization_factor} = \frac{0.95}{\text{max_val}}$$

Where max_val is the peak amplitude (absolute value) of the mixed signal.


πŸ”§ Usage

Download Metadata

from datasets import load_dataset

# Load specific split and mixture type
dataset = load_dataset("ShandaAI/Hive", split="train")

Generate Mixed Audio

Please refer to the official GitHub repository for the complete audio generation pipeline.

# Clone the repository
git clone https://github.com/ShandaAI/Hive.git
cd Hive/hive_dataset

# Generate mixtures from metadata
python mix_from_metadata/mix_from_metadata.py \
    --metadata_dir /path/to/downloaded/metadata \
    --output_dir ./hive_dataset \
    --dataset_paths dataset_paths.json \
    --num_processes 16

πŸ“š Source Datasets

Hive integrates 12 public datasets to construct a long-tailed acoustic space:

#DatasetClipsDuration (h)License
1BBC Sound Effects369,6031,020.62Remix License
2AudioSet326,890896.61CC BY
3VGGSound115,191319.10CC BY 4.0
4MUSIC2132,70190.28YouTube Standard
5FreeSound17,45146.90CC0/BY/BY-NC
6ClothoV214,75938.19Non-Commercial Research
7Voicebank-DEMAND12,3769.94CC BY 4.0
8AVE3,0546.91CC BY-NC-SA
9SoundBible2,5015.78CC BY 4.0
10DCASE1,9695.46Academic Use
11ESC501,4331.99CC BY-NC 3.0
12FSD50K6360.80Creative Commons
Total898,5642,442.60

Important Note: This repository releases only metadata (JSON files containing mixing parameters and source references) for reproducibility. Users must independently download and prepare the source datasets according to their respective licenses.


πŸ“– Citation

If you use this dataset, please cite:

@article{li2026hive,
  title={A Semantically Consistent Dataset for Data-Efficient Query-Based Universal Sound Separation},
  author={Li, Kai and Cheng, Jintao and Zeng, Chang and Yan, Zijun and Wang, Helin and Su, Zixiong and Zheng, Bo and Hu, Xiaolin},
  journal={arXiv preprint arXiv:2601.22599},
  year={2026}
}

βš–οΈ License

This dataset metadata is released under the Apache License 2.0.

Please note that the source audio files are subject to their original licenses. Users must comply with the respective licenses when using the source datasets.


πŸ™ Acknowledgments

We extend our gratitude to the researchers and organizations who curated the foundational datasets that made Hive possible:

  • BBC Sound Effects - Professional-grade recordings with broadcast-level fidelity
  • AudioSet (Google) - Large-scale audio benchmark
  • VGGSound (University of Oxford) - Real-world acoustic diversity
  • FreeSound (MTG-UPF) - Rich crowdsourced soundscapes
  • And all other contributing datasets

πŸ“¬ Contact

For questions or issues, please open an issue on the GitHub repository or contact the authors.

audio
audio-mixing
audioset
sound-separation
universal-sound-separation

Contributors

JusperLee

2 commits

JusperLee/Hive

Dataset

Usage

2

2 commits

1 linked in READMEs

updated May 19, 2026

See the code

README

A Semantically Consistent Dataset for Data-Efficient Query-Based Universal Sound Separation

Logo

Kai Li*, Jintao Cheng*, Chang Zeng, Zijun Yan, Helin Wang, Zixiong Su, Bo Zheng, Xiaolin Hu
Tsinghua University, Shanda AI, Johns Hopkins University
*Equal contribution
πŸ“œ Arxiv 2026 | πŸ’» Code | 🎢 Demo

Usage

from datasets import load_dataset

# Load full dataset
dataset = load_dataset("ShandaAI/Hive")

# Load specific split
train_data = load_dataset("ShandaAI/Hive", split="train")

# Streaming mode (recommended for large datasets)
dataset = load_dataset("ShandaAI/Hive", streaming=True)

πŸ“„ Dataset Description

Hive is a high-quality synthetic dataset designed for Universal Sound Separation (USS). Unlike traditional methods relying on weakly-labeled in-the-wild data, Hive leverages an automated data collection pipeline to mine high-purity single-event segments from complex acoustic environments and synthesizes mixtures with semantically consistent constraints.

Key Features

  • Purity over Scale: 2.4k hours achieving competitive performance with million-hour baselines (~0.2% data scale)
  • Single-label Clean Supervision: Rigorous semantic-acoustic alignment eliminating co-occurrence noise
  • Semantically Consistent Mixing: Logic-based co-occurrence matrix ensuring realistic acoustic scenes
  • High Fidelity: 44.1kHz sample rate for high-quality audio

Dataset Scale

MetricValue
Training Set Raw Audio2,442 hours
Val & Test Set Raw Audio292 hours
Mixed Samples19.6M mixtures
Total Mixed Duration~22.4k hours
Label Categories283 classes
Sample Rate44.1 kHz
Training Sample Duration4 seconds
Test Sample Duration10 seconds

Dataset Splits

SplitSamplesDescription
Train17.5MTraining mixtures (4s duration)
Validation1.75MValidation mixtures
Test350kTest mixtures (10s duration)

πŸ“‚ Dataset Structure

Directory Organization

hive-datasets-parquet/
β”œβ”€β”€ README.md
β”œβ”€β”€ train/
β”‚   └── data.parquet
β”œβ”€β”€ validation/
β”‚   └── data.parquet
└── test/
    └── data.parquet

Each split contains a single Parquet file with all mixture metadata. The num_sources field indicates the number of sources (2-5) for each mixture.


πŸ“‹ Data Fields

JSON Schema

Each JSON object contains complete generation parameters for reproducing a mixture sample:

{
    "mix_id": "sample_00000003",
    "split": "train",
    "sample_rate": 44100,
    "target_duration": 4.0,
    "num_sources": 2,
    "sources": {
        "source_id": ["s1", "s2"],
        "path": ["relative/path/to/audio1", "relative/path/to/audio2"],
        "label": ["Ocean", "Rain"],
        "crop_start_second": [1.396, 2.5],
        "crop_end_second": [5.396, 6.5],
        "chunk_start_second": [35.0, 20.0],
        "chunk_end_second": [45.0, 30.0],
        "rms_gain": [3.546, 2.1],
        "snr_db": [0.0, -3.0],
        "applied_weight": [3.546, 1.487]
    },
    "global_normalization_factor": 0.786,
    "final_max_amplitude": 0.95
}

Field Descriptions

1. Basic Info Fields

FieldTypeDescription
mix_idstringUnique identifier for the mixture task
splitstringDataset partition (train / validation / test)
sample_rateint32Audio sample rate in Hz (44100)
target_durationfloat64Target duration in seconds (4.0 for train, 10.0 for test)
num_sourcesint32Number of audio sources in this mixture (2-5)

2. Source Information (sources)

Metadata required to reproduce the mixing process for each audio source. Stored in columnar format (dict of lists) for efficient Parquet storage:

FieldTypeDescription
source_idlist[string]Source identifiers (s1, s2, ...)
pathlist[string]Relative paths to the source audio files
labellist[string]AudioSet ontology labels for each source
chunk_start_secondlist[float64]Start times (seconds) for reading from original audio files
chunk_end_secondlist[float64]End times (seconds) for reading from original audio files
crop_start_secondlist[float64]Precise start positions (seconds) for reproducible random extraction
crop_end_secondlist[float64]Precise end positions (seconds) for reproducible random extraction
rms_gainlist[float64]Energy normalization coefficients: $\text{target_rms} / \text{current_rms}$
snr_dblist[float64]Signal-to-noise ratios in dB assigned to each source
applied_weightlist[float64]Final scaling weights: $\text{rms_gain} \times 10^{(\text{snr_db} / 20)}$

3. Mixing Parameters

Global processing parameters after combining multiple audio sources:

FieldTypeDescription
global_normalization_factorfloat64Anti-clipping scaling coefficient: $0.95 / \text{max_val}$
final_max_amplitudefloat64Maximum amplitude threshold (0.95) to prevent bit-depth overflow

Detailed Field Explanations

Cropping Logic

  • chunk_start/end_second: Defines the reading interval from the original audio file
  • crop_start/end_second: Records the precise random cropping position, ensuring exact reproducibility across runs

Energy Normalization (rms_gain)

Adjusts different audio sources to the same energy level: $$\text{rms_gain} = \frac{\text{target_rms}}{\text{current_rms}}$$

Signal-to-Noise Ratio (snr_db)

The SNR value assigned to each source, sampled from a predefined range using random.uniform(snr_range[0], snr_range[1]).

Applied Weight

The comprehensive scaling weight combining energy normalization and SNR adjustment: $$\text{applied_weight} = \text{rms_gain} \times 10^{(\text{snr_db} / 20)}$$

This is the final coefficient applied to the original waveform.

Global Normalization Factor

Prevents audio clipping after mixing: $$\text{global_normalization_factor} = \frac{0.95}{\text{max_val}}$$

Where max_val is the peak amplitude (absolute value) of the mixed signal.


πŸ”§ Usage

Download Metadata

from datasets import load_dataset

# Load specific split and mixture type
dataset = load_dataset("ShandaAI/Hive", split="train")

Generate Mixed Audio

Please refer to the official GitHub repository for the complete audio generation pipeline.

# Clone the repository
git clone https://github.com/ShandaAI/Hive.git
cd Hive/hive_dataset

# Generate mixtures from metadata
python mix_from_metadata/mix_from_metadata.py \
    --metadata_dir /path/to/downloaded/metadata \
    --output_dir ./hive_dataset \
    --dataset_paths dataset_paths.json \
    --num_processes 16

πŸ“š Source Datasets

Hive integrates 12 public datasets to construct a long-tailed acoustic space:

#DatasetClipsDuration (h)License
1BBC Sound Effects369,6031,020.62Remix License
2AudioSet326,890896.61CC BY
3VGGSound115,191319.10CC BY 4.0
4MUSIC2132,70190.28YouTube Standard
5FreeSound17,45146.90CC0/BY/BY-NC
6ClothoV214,75938.19Non-Commercial Research
7Voicebank-DEMAND12,3769.94CC BY 4.0
8AVE3,0546.91CC BY-NC-SA
9SoundBible2,5015.78CC BY 4.0
10DCASE1,9695.46Academic Use
11ESC501,4331.99CC BY-NC 3.0
12FSD50K6360.80Creative Commons
Total898,5642,442.60

Important Note: This repository releases only metadata (JSON files containing mixing parameters and source references) for reproducibility. Users must independently download and prepare the source datasets according to their respective licenses.


πŸ“– Citation

If you use this dataset, please cite:

@article{li2026hive,
  title={A Semantically Consistent Dataset for Data-Efficient Query-Based Universal Sound Separation},
  author={Li, Kai and Cheng, Jintao and Zeng, Chang and Yan, Zijun and Wang, Helin and Su, Zixiong and Zheng, Bo and Hu, Xiaolin},
  journal={arXiv preprint arXiv:2601.22599},
  year={2026}
}

βš–οΈ License

This dataset metadata is released under the Apache License 2.0.

Please note that the source audio files are subject to their original licenses. Users must comply with the respective licenses when using the source datasets.


πŸ™ Acknowledgments

We extend our gratitude to the researchers and organizations who curated the foundational datasets that made Hive possible:

  • BBC Sound Effects - Professional-grade recordings with broadcast-level fidelity
  • AudioSet (Google) - Large-scale audio benchmark
  • VGGSound (University of Oxford) - Real-world acoustic diversity
  • FreeSound (MTG-UPF) - Rich crowdsourced soundscapes
  • And all other contributing datasets

πŸ“¬ Contact

For questions or issues, please open an issue on the GitHub repository or contact the authors.

audio
audio-mixing
audioset
sound-separation
universal-sound-separation

Contributors

JusperLee

2 commits