# wavesurfer
## Usage
``` bash
$ pip install wavesurfer
```
- display wave file
``` python
from wavesurfer import display
display("data/test_16k.wav")
```
- display waveform
``` python
import torchaudio
from wavesurfer import display
waveform, rate = torchaudio.load("data/test_16k.wav")
display(waveform, rate, enable_minimap=True, enable_spectrogram=True)
```

- display streaming waveform
``` python
import time
import torchaudio
from wavesurfer import display
def audio_generator():
waveform, rate = torchaudio.load("data/test_16k.wav")
chunk_size_s = 0.3
chunk_size = int(chunk_size_s * rate)
for i in range(0, waveform.size(1), chunk_size):
time.sleep(0.1) # RTF: 0.1/0.3 < 1
yield waveform[:, i:i + chunk_size]
display(audio_generator(), rate=16000)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/pengzhendong/wavesurfer",
"name": "wavesurfer",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Zhendong Peng",
"author_email": "pzd17@tsinghua.org.cn",
"download_url": null,
"platform": null,
"description": "# wavesurfer\n\n## Usage\n\n``` bash\n$ pip install wavesurfer\n```\n\n- display wave file\n\n``` python\nfrom wavesurfer import display\n\ndisplay(\"data/test_16k.wav\")\n```\n\n- display waveform\n\n``` python\nimport torchaudio\nfrom wavesurfer import display\n\nwaveform, rate = torchaudio.load(\"data/test_16k.wav\")\ndisplay(waveform, rate, enable_minimap=True, enable_spectrogram=True)\n```\n\n\n\n- display streaming waveform\n\n``` python\nimport time\nimport torchaudio\nfrom wavesurfer import display\n\ndef audio_generator():\n waveform, rate = torchaudio.load(\"data/test_16k.wav\")\n chunk_size_s = 0.3\n chunk_size = int(chunk_size_s * rate)\n for i in range(0, waveform.size(1), chunk_size):\n time.sleep(0.1) # RTF: 0.1/0.3 < 1\n yield waveform[:, i:i + chunk_size]\n\ndisplay(audio_generator(), rate=16000)\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "wavesurfer",
"version": "0.1.8",
"project_urls": {
"Homepage": "https://github.com/pengzhendong/wavesurfer"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3f0b62a8aeda23263e41f0a8d6c6397ef7376f4648a351ee00b4607088081468",
"md5": "8e824258103c2197e290e217ebee3f00",
"sha256": "3fc6e800e9174aaeeb9f99fc72a5a49f44643711746fc9cca7aa20b232e3dda0"
},
"downloads": -1,
"filename": "wavesurfer-0.1.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8e824258103c2197e290e217ebee3f00",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 69512,
"upload_time": "2025-01-21T03:44:53",
"upload_time_iso_8601": "2025-01-21T03:44:53.102099Z",
"url": "https://files.pythonhosted.org/packages/3f/0b/62a8aeda23263e41f0a8d6c6397ef7376f4648a351ee00b4607088081468/wavesurfer-0.1.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-21 03:44:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pengzhendong",
"github_project": "wavesurfer",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "jinja2",
"specs": []
},
{
"name": "lhotse",
"specs": []
},
{
"name": "numpy",
"specs": []
}
],
"lcname": "wavesurfer"
}