{"id":13618676,"url":"https://github.com/tyiannak/paura","last_synced_at":"2025-09-02T04:04:22.638Z","repository":{"id":12249001,"uuid":"67373479","full_name":"tyiannak/paura","owner":"tyiannak","description":"Python AUdio Recording and Analysis (paura)","archived":false,"fork":false,"pushed_at":"2023-07-06T21:55:58.000Z","size":15575,"stargazers_count":224,"open_issues_count":9,"forks_count":41,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-09-02T04:03:35.856Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tyiannak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-04T23:27:48.000Z","updated_at":"2025-08-16T23:31:59.000Z","dependencies_parsed_at":"2024-10-31T13:02:33.634Z","dependency_job_id":"c963f34f-a335-4860-8a3e-76931756ea78","html_url":"https://github.com/tyiannak/paura","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tyiannak/paura","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyiannak%2Fpaura","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyiannak%2Fpaura/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyiannak%2Fpaura/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyiannak%2Fpaura/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tyiannak","download_url":"https://codeload.github.com/tyiannak/paura/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyiannak%2Fpaura/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273227971,"owners_count":25067691,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T21:00:28.776Z","updated_at":"2025-09-02T04:04:22.605Z","avatar_url":"https://github.com/tyiannak.png","language":"Python","funding_links":[],"categories":["Analysis and Visualization","Python"],"sub_categories":[],"readme":"\n# pAura: Python AUdio Recording and Analysis\n\n## News\n * [2021-08-06] [deep-audio-features](https://github.com/tyiannak/deep_audio_features) deep audio classification and feature extraction using CNNs and Pytorch \n * [2020-06-05] Read [this article titled \"Basic Audio Handling\"](https://medium.com/behavioral-signals-ai/basic-audio-handling-d4cc9c70d64d)\n * [2020-06-05] Read [this article titled \"Intro to Audio Analysis: Recognizing Sounds Using Machine Learning\"](https://medium.com/behavioral-signals-ai/intro-to-audio-analysis-recognizing-sounds-using-machine-learning-20fd646a0ec5)\n * [2020/06/01] `paura_lite.py` added: a very simple command-line recorder and real-time visualization\n * [2020/01/02] python3 support added  \n\n## General\n - ```paura.py``` is a Python tool for recording and analyzing sounds in an online \nand continuous manner. `paura` uses pySound (based on portaudio), so it can \nboth be used in Linux and MacOs environments. \n - `paura_lite.py` is a very simple command-line recorder and real-time visualization\n  \n## Installation\nBefore downloading this library and setting up the pip requirements, please \nconsider the following:\n\n### Requirements for Linux\n * Install [pyAudioAnalysis](https://github.com/tyiannak/pyAudioAnalysis/).\n * Install portaudio: `sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0`\n * Install opencv for python: `sudo apt-get install python-opencv`\n * sudo apt-get install gnuplot (required only for `paura_lite.py`)\n\n### Requirements for MacOs\n * Install [pyAudioAnalysis](https://github.com/tyiannak/pyAudioAnalysis/).\n * Install portaudio: `brew install portaudio`\n * Install pysound and opencv for python: `pip3 install pyaudio opencv-python`\n * brew install gnuplot (required only for `paura_lite.py`)\n\n## Execution and outputs for `paura.py`\n\n### Execution example\nThe following command records audio data using blocks of 1sec (segments). \n\n```\n python3 paura.py --blocksize 1.0 --spectrogram --chromagram --record_segments --record_all\n```\n\n### Output\nFor each segment, the script:\n1) Visualizes the spectrogram, chromagram  along with the raw samples (waveform)\n2) Applies a simple audio classifier that distinguishes between 4 classes namely\n silence, speech, music and other sounds.\n\n### Output format\n\nThe predictions are printed in the console in the form of timestamp \n(segment starting point in seconds, counting from the recording starting time), \nclass label (silence, music, speech or other), and prediction confidence, e.g.\n```\n...\n12.71\tother\t0.52\n13.63\tspeech\t0.30\n14.66\tother\t0.43\n15.68\tmusic\t0.92\n16.70\tspeech\t0.30\n...\n```\n\nAlso, the waveform, spectrograms and chromagrams are visualized in dedicated \nplots. \n\nIf the `--record_segments` flag is provided, \neach segment is saved in a folder named by the starting timestamp of the \nrecording session, and has a filename indicated by its relative timestamp from \nthe recording starting time, e.g. for the above example:\n```\n⇒ ls -1 2020_01_28_12:37AM_segments \n...\n0012.71_other.wav\n0013.63_speech.wav\n0014.66_other.wav\n0015.68_music.wav\n0016.70_speech.wav\n...\n```\n\nFinally, if `--record_all` is provided, the whole recording is saved in a \nsinge audio file. Not to be used for very long recordings (many hours), due to \nmemory issues. In the above example, the overall audio recording is stored in \n`2020_01_26_11:16PM.wav`\n\n## Execution and outputs for `paura_lite.py`\nThis script takes no arguments and just records sounds, \nwhile visualizing each segment's spectrogram in the console.\n```\npython3 paura_lite.py\n```\n\nSample output (for one of the recorded windows).\n```\n0 Hz     ███▊\n100 Hz   █████████▉\n200 Hz   █████▎\n300 Hz   ███████▋\n400 Hz   ███████████▌\n500 Hz   ████▊\n600 Hz   █████▍\n700 Hz   ██████▉\n800 Hz   ████\n900 Hz   ██▋\n1000 Hz  █████▍\n1100 Hz  ███\n1200 Hz  ███▉\n1300 Hz  ██████\n1400 Hz  ██████▌\n1500 Hz  █████████\n1600 Hz  ██████████████\n1700 Hz  ██████▌\n1800 Hz  ████\n1900 Hz  █▋\n2000 Hz  █▌\n2100 Hz  ██▏\n2200 Hz  ███▊\n2300 Hz  ████████▎\n2400 Hz  ████████████▌\n2500 Hz  █████▉\n2600 Hz  ████▊\n2700 Hz  ██▉\n2800 Hz  ██▏\n2900 Hz  ███▎\n3000 Hz  █████▎\n3100 Hz  ███\n3200 Hz  ██▎\n3300 Hz  ██▊\n3400 Hz  ███▋\n3500 Hz  ██▏\n3600 Hz  █▌\n3700 Hz  █▊\n3800 Hz  █▍\n3900 Hz  █▋\n\n```\n\nA demo video of `paura_lite.py` is also available in the following video:\n\n[![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/YEi9AmA-07s/0.jpg)](https://www.youtube.com/watch?v=YEi9AmA-07s)\n\n## Ongoing work\nExport selected features and mid-term representations\n\n## Author\n\u003cimg src=\"https://tyiannak.github.io/files/3.JPG\" align=\"left\" height=\"100\"/\u003e\n\n[Theodoros Giannakopoulos](https://tyiannak.github.io),\nPrincipal Researcher of Multimodal Machine Learning at the [Multimedia Analysis Group of the Computational Intelligence Lab (MagCIL)](https://labs-repos.iit.demokritos.gr/MagCIL/index.html) of the Institute of Informatics and Telecommunications, of the National Center for Scientific Research \"Demokritos\"\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyiannak%2Fpaura","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftyiannak%2Fpaura","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyiannak%2Fpaura/lists"}