# Audidata
Audidata is a toolkit that allows users to easily load audio datasets. Audidata supports music, audio, and speech datasets. Audidata also provides samplers, tokenizers, and transforms. Users can also create their own datasets, samplers, and transforms based on Audidata.
## 0. Installation
### Method 1.
```bash
pip install audidata
````
### Method 1. Download source code
```bash
git clone https://github.com/AudioFans/audidata
cd audidata
export PYTHONPATH=`pwd` # Export environment path so that users can import audidata anywhere in the terminal.
```
## 1. Example
Users must download the dataset manually. The datsets should be structured described in dataset files. Here is an example of loading GTZAN dataset.
```python
from audidata.datasets import GTZAN
root = "/datasets/gtzan"
dataset = GTZAN(root=root, split="train", test_fold=0, sr=16000)
print(dataset[0])
```
Output:
<pre>
{'audio_path': '/datasets/gtzan/genres/blues/blues.00010.au',
'audio': array([[ 0.11234417, 0.13617763, 0.10609552, ..., -0.06634186, -0.07007345, -0.07359146]], dtype=float32),
'target': array([1., 0., 0., 0., 0., 0., 0., 0., 0., 0.], dtype=float32),
'label': 'blues'}
</pre>
For more examples please see [audidata/examples](https://github.com/AudioFans/audidata/tree/main/examples). For example, users can run the following example script to concatenate multiple datasets:
```python
python examples/test_concat_datasets.py
```
Output:
<pre>
0 dict_keys(['dataset_name', 'audio_path', 'bass', 'drums', 'other', 'vocals', 'accompaniment', 'mixture'])
1 dict_keys(['dataset_name', 'audio_path', 'audio', 'target', 'label'])
2 dict_keys(['dataset_name', 'audio_path', 'bass', 'drums', 'other', 'vocals', 'accompaniment', 'mixture'])
3 dict_keys(['dataset_name', 'audio_path', 'audio', 'target', 'label'])
</pre>
## Repo structure
<pre>
audidata
├── audidata
│ ├── collate
│ │ ├── base.py
│ │ └── ...
│ ├── datasets
│ │ ├── gtzan.py
│ │ └── ...
│ ├── io
│ │ ├── audio.py
│ │ └── ...
│ ├── samplers
│ │ ├── multi_datasets.py
│ │ └── ...
│ ├── tokenizers
│ │ ├── base.py
│ │ └── ...
│ ├── transforms
│ │ ├── midi.py
│ │ └── ...
│ └── utils.py
├── examples
│ ├── test_concat_datasets.py
│ └── ...
├── LICENSE
├── README.md
└── pyproject.toml
</pre>
## License
MIT
Raw data
{
"_id": null,
"home_page": "https://github.com/AudioFans/audidata",
"name": "audidata",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": null,
"keywords": null,
"author": "Qiuqiang Kong",
"author_email": "qiuqiangkong@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/b3/f7/8e049756ee564c275f0a56071288523d1015f343065fc094e1960b22225e/audidata-0.0.3.tar.gz",
"platform": null,
"description": "# Audidata\n\nAudidata is a toolkit that allows users to easily load audio datasets. Audidata supports music, audio, and speech datasets. Audidata also provides samplers, tokenizers, and transforms. Users can also create their own datasets, samplers, and transforms based on Audidata.\n\n## 0. Installation\n\n### Method 1.\n\n```bash\npip install audidata\n````\n\n### Method 1. Download source code\n\n```bash\ngit clone https://github.com/AudioFans/audidata\ncd audidata\nexport PYTHONPATH=`pwd` # Export environment path so that users can import audidata anywhere in the terminal.\n```\n\n## 1. Example\n\nUsers must download the dataset manually. The datsets should be structured described in dataset files. Here is an example of loading GTZAN dataset.\n\n```python\nfrom audidata.datasets import GTZAN\n\nroot = \"/datasets/gtzan\"\ndataset = GTZAN(root=root, split=\"train\", test_fold=0, sr=16000)\nprint(dataset[0])\n```\n\nOutput:\n\n<pre>\n{'audio_path': '/datasets/gtzan/genres/blues/blues.00010.au', \n'audio': array([[ 0.11234417, 0.13617763, 0.10609552, ..., -0.06634186, -0.07007345, -0.07359146]], dtype=float32), \n'target': array([1., 0., 0., 0., 0., 0., 0., 0., 0., 0.], dtype=float32), \n'label': 'blues'}\n</pre>\n\nFor more examples please see [audidata/examples](https://github.com/AudioFans/audidata/tree/main/examples). For example, users can run the following example script to concatenate multiple datasets:\n\n```python\npython examples/test_concat_datasets.py\n```\n\nOutput:\n\n<pre>\n0 dict_keys(['dataset_name', 'audio_path', 'bass', 'drums', 'other', 'vocals', 'accompaniment', 'mixture'])\n1 dict_keys(['dataset_name', 'audio_path', 'audio', 'target', 'label'])\n2 dict_keys(['dataset_name', 'audio_path', 'bass', 'drums', 'other', 'vocals', 'accompaniment', 'mixture'])\n3 dict_keys(['dataset_name', 'audio_path', 'audio', 'target', 'label'])\n</pre>\n\n## Repo structure\n<pre>\naudidata\n\u251c\u2500\u2500 audidata\n\u2502 \u251c\u2500\u2500 collate\n\u2502 \u2502 \u251c\u2500\u2500 base.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 datasets\n\u2502 \u2502 \u251c\u2500\u2500 gtzan.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 io\n\u2502 \u2502 \u251c\u2500\u2500 audio.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 samplers\n\u2502 \u2502 \u251c\u2500\u2500 multi_datasets.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 tokenizers\n\u2502 \u2502 \u251c\u2500\u2500 base.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 transforms\n\u2502 \u2502 \u251c\u2500\u2500 midi.py\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u2514\u2500\u2500 utils.py\n\u251c\u2500\u2500 examples\n\u2502 \u251c\u2500\u2500 test_concat_datasets.py\n\u2502 \u2514\u2500\u2500 ...\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 README.md\n\u2514\u2500\u2500 pyproject.toml\n\n</pre>\n\n## License\n\nMIT\n",
"bugtrack_url": null,
"license": null,
"summary": "Audio dataloaders",
"version": "0.0.3",
"project_urls": {
"Homepage": "https://github.com/AudioFans/audidata"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "3f6837977502090be06ea7aabeb6f8b0d7697c462915a79b089743d3555658e6",
"md5": "4250dab9c1d58387af769dd9d39aa190",
"sha256": "a5f81ffe985e3410a218ef0ad20627a3e8d8ab884e0dbd5366bad00e996de32c"
},
"downloads": -1,
"filename": "audidata-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4250dab9c1d58387af769dd9d39aa190",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 82109,
"upload_time": "2025-02-05T16:20:20",
"upload_time_iso_8601": "2025-02-05T16:20:20.245674Z",
"url": "https://files.pythonhosted.org/packages/3f/68/37977502090be06ea7aabeb6f8b0d7697c462915a79b089743d3555658e6/audidata-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b3f78e049756ee564c275f0a56071288523d1015f343065fc094e1960b22225e",
"md5": "90310f6171483a0df0365a772273ce52",
"sha256": "ce919fed8407afd33de44e5fe7ead658a8a21c928b073c5a183b4cef6cecf83e"
},
"downloads": -1,
"filename": "audidata-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "90310f6171483a0df0365a772273ce52",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 34093,
"upload_time": "2025-02-05T16:20:22",
"upload_time_iso_8601": "2025-02-05T16:20:22.581062Z",
"url": "https://files.pythonhosted.org/packages/b3/f7/8e049756ee564c275f0a56071288523d1015f343065fc094e1960b22225e/audidata-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-05 16:20:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AudioFans",
"github_project": "audidata",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "audidata"
}