{ "info": { "author": "Yihui Xiong", "author_email": "yihui.xiong@hotmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "Voice Engine\n============\n\n[![Build Status](https://travis-ci.org/voice-engine/voice-engine.svg?branch=master)](https://travis-ci.org/voice-engine/voice-engine)\n[![](https://img.shields.io/pypi/v/voice-engine.svg)](https://pypi.python.org/pypi/voice-engine)\n\n\nThe library is used to create voice interface applications.\nIt includes building blocks such as KWS (keyword spotting), DOA (Direction Of Arrival). There are also elements to measure RMS (dBFS or dB(A)).\n\n\n### Requirements\n+ pyaudio\n+ numpy\n+ snowboy\n\n\n### Installation\nInstall pyaudio, numpy and snowboy, use virtualenv a virtual python environment.\n\n```\nsudo apt install python-pyaudio python-numpy python-virtualenv\nsudo apt-get install swig python-dev libatlas-base-dev build-essential make\ngit clone --depth 1 https://github.com/Kitt-AI/snowboy.git\ncd snowboy\nvirtualenv --system-site-packages env\nsource env/bin/activate\npython setup.py build\npython setup.py bdist_wheel\npip install dist/snowboy*.whl\ncd ..\ngit clone https://github.com/voice-engine/voice-engine.git\ncd voice-engine\npython setup.py bdist_wheel\npip install dist/*.whl\n```\n\n### Get started\nTo record audio and search keyword \"snowboy\", see also [`kws_snowboy.py`](voice_engine/kws_snowboy.py)\n\n```python\nimport time\nfrom voice_engine.kws import KWS\nfrom voice_engine.source import Source\n\nsrc = Source()\nkws = KWS()\nsrc.link(kws)\n\ndef on_detected(keyword):\n print('found {}'.format(keyword))\nkws.on_detected = on_detected\n\nkws.start()\nsrc.start()\nwhile True:\n try:\n time.sleep(1)\n except KeyboardInterrupt:\n break\nkws.stop()\nsrc.stop()\n```\n\n### Building blocks\nThe library uses gstreamer-like [elements](voice_engine/element.py) which can be linked together as an audio pipeline.\nOne element can connect to more than one other elements.\n\nThe topology can be:\n```\nSource --> ChannelPicker --> KWS Source --> ChannelPicker --> KWS --> Alexa\n | /\\\n V / \\\n DOA Alexa Google Asissitant \n\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/voice-engine/voice-engine", "keywords": "voice doa beamforming kws", "license": "GNU General Public License v3", "maintainer": "", "maintainer_email": "", "name": "voice_engine", "package_url": "https://pypi.org/project/voice_engine/", "platform": "", "project_url": "https://pypi.org/project/voice_engine/", "project_urls": { "Homepage": "https://github.com/voice-engine/voice-engine" }, "release_url": "https://pypi.org/project/voice_engine/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "Voice engine to build voice enabled applications", "version": "0.1.3" }, "last_serial": 4100171, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "96b04426389c058e48b7ad7b9d834fb1", "sha256": "69023f82e33d13534063c5422c04c42347e64afe708dab57b970dd8eba78c4fb" }, "downloads": -1, "filename": "voice_engine-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "96b04426389c058e48b7ad7b9d834fb1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8169, "upload_time": "2017-08-30T10:26:57", "url": "https://files.pythonhosted.org/packages/8c/1d/1407a1ae91aab7247821b80e90274d18bed009c398fcc5e28f21716ffef8/voice_engine-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5fff82ad7a4f8dcb90f6cecfcdeb0c54", "sha256": "469bd0960a0fb4f92c83d52d42dd00d694016d5e39bcd1a579ba4aadcc04dcb9" }, "downloads": -1, "filename": "voice-engine-0.0.1.tar.gz", "has_sig": false, "md5_digest": "5fff82ad7a4f8dcb90f6cecfcdeb0c54", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 437917, "upload_time": "2017-08-30T10:26:59", "url": "https://files.pythonhosted.org/packages/d1/8b/7b5e80367875ae53f505a74418566b6edfa377c2d8baac9724916b0df8f9/voice-engine-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "ac241aef5ddf70091d5adad59c01dde3", "sha256": "2fc957852032a7f34b75cdc4e490aaa7907d19594b337c86ada8b0627a00351f" }, "downloads": -1, "filename": "voice_engine-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ac241aef5ddf70091d5adad59c01dde3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8216, "upload_time": "2017-08-31T11:14:59", "url": "https://files.pythonhosted.org/packages/ce/b1/35239ffc22b0002d9a2e5b9afc2fa937023dc9c3b10c9efde35c86726997/voice_engine-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "948b561e2e8ce24ce0f81a8a1d71afd0", "sha256": "2c9e15ec1e6902135f3a65450978a3008e5f2ce471c561a2f37e40c344f3f864" }, "downloads": -1, "filename": "voice-engine-0.0.2.tar.gz", "has_sig": false, "md5_digest": "948b561e2e8ce24ce0f81a8a1d71afd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 437977, "upload_time": "2017-08-31T11:15:02", "url": "https://files.pythonhosted.org/packages/90/b8/39724194ea49991d01f0ffc5de6fd2a4a13c50d3a1243c741bedecee2324/voice-engine-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "93efd2886c9ce0404c6ad5d047cf07bc", "sha256": "8043672d845e2a5e51a418538463857a52d0678d8382d85e4863a9bb58031897" }, "downloads": -1, "filename": "voice_engine-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "93efd2886c9ce0404c6ad5d047cf07bc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10825, "upload_time": "2017-09-18T08:06:49", "url": "https://files.pythonhosted.org/packages/ec/62/0e3f1968fd79e4db4567b100d506c19bd693f93b08de3e066331fe83206e/voice_engine-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2138f623fea125635b7939a40e8f4aa0", "sha256": "da4b404ffa512e2bd14093ca8f59ac55fbaa47f1e0fa5f9bb19540deb008fc51" }, "downloads": -1, "filename": "voice-engine-0.0.3.tar.gz", "has_sig": false, "md5_digest": "2138f623fea125635b7939a40e8f4aa0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 438736, "upload_time": "2017-09-18T08:06:50", "url": "https://files.pythonhosted.org/packages/ec/57/cac763124629deb1e36b3fb8060adbb8e46011ce2d9a6638cf1db37f34b0/voice-engine-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "974077d65276f1420cdf490a674bab67", "sha256": "4a9fda2dff0bde78b6ecb9b509d95f221dd49d00c65b5eda20ef75701042121a" }, "downloads": -1, "filename": "voice_engine-0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "974077d65276f1420cdf490a674bab67", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11786, "upload_time": "2018-03-06T08:47:35", "url": "https://files.pythonhosted.org/packages/8b/96/89abec124a4580503303efcaa38f1db53d48f878c962c5684730086d20e7/voice_engine-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "01a16e38bf34eaa7fc96867cca3f7633", "sha256": "4b2893161ac3090e9a4b77e09f6c05ca24db977dcdcf665129423ee8536c88db" }, "downloads": -1, "filename": "voice-engine-0.0.4.tar.gz", "has_sig": false, "md5_digest": "01a16e38bf34eaa7fc96867cca3f7633", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 439998, "upload_time": "2018-03-06T08:47:36", "url": "https://files.pythonhosted.org/packages/c5/42/1ac692e6ad7b8ca3a7ae2228c04b08933c8389859f2180d52cc09588e963/voice-engine-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "c57a0f567dadc132211b4cbd5b0e632f", "sha256": "0c700f7ef3cea4fa89b5577f4b18700314df2e84c9f0ad053d7cdeaeebddc51e" }, "downloads": -1, "filename": "voice_engine-0.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c57a0f567dadc132211b4cbd5b0e632f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14650, "upload_time": "2018-04-25T08:25:38", "url": "https://files.pythonhosted.org/packages/d2/e4/2bb82f0899244d136d1b0553d23ab48a2febd910410bd3fcb73e32d5021e/voice_engine-0.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d8dc836c281ab6865b8695ac29d567e", "sha256": "deec2b252e0901e0453b02abfdadd8d4651bb47368b5d4e56554ef722ef6f07a" }, "downloads": -1, "filename": "voice-engine-0.0.5.tar.gz", "has_sig": false, "md5_digest": "8d8dc836c281ab6865b8695ac29d567e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 441367, "upload_time": "2018-04-25T08:25:39", "url": "https://files.pythonhosted.org/packages/20/ab/ed62d6bc0876d66bd399b7b37a046353df7f2c1afb365efec32af1ef07a2/voice-engine-0.0.5.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "f9a685823ec83411c124a08ac5da09d2", "sha256": "6a326293885059cbc581d3a06fd1a21be9f642688c96af5e0df7f4c695b714b7" }, "downloads": -1, "filename": "voice_engine-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f9a685823ec83411c124a08ac5da09d2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15782, "upload_time": "2018-05-24T10:28:46", "url": "https://files.pythonhosted.org/packages/64/45/22ad9bc57ea53c851dd78a917f82b96eac4d879875e17c3d4e561e0d28e1/voice_engine-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "beafacb46b326a958a3034cf04ef93df", "sha256": "72b810d129cdf7f44a0755ffd11a77aaf890a9a5bd654898195ce7935d38a7e0" }, "downloads": -1, "filename": "voice-engine-0.1.0.tar.gz", "has_sig": false, "md5_digest": "beafacb46b326a958a3034cf04ef93df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 441851, "upload_time": "2018-05-24T10:28:48", "url": "https://files.pythonhosted.org/packages/ea/f6/41253e97147c93644a6471ef3e9e556084a734a93dabe764feb9893e32b7/voice-engine-0.1.0.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "8b4b21f51d73e3d1b61438462bf10a93", "sha256": "1007171b630c51888f5b2329571d94f57bab7db7f9d4d64679c9501676606f7e" }, "downloads": -1, "filename": "voice_engine-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8b4b21f51d73e3d1b61438462bf10a93", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17570, "upload_time": "2018-07-10T07:29:42", "url": "https://files.pythonhosted.org/packages/13/e5/d55fcd281bcd436620815b0ceb3f5b0109df32aa15532dee6e29ab73ec36/voice_engine-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb998dc2dbbfe2746e5c871df0b7b5ed", "sha256": "49049798133e42b5b3e9b977ae287683cae9bd376048aaa1ae5e37e6b757abcf" }, "downloads": -1, "filename": "voice-engine-0.1.2.tar.gz", "has_sig": false, "md5_digest": "cb998dc2dbbfe2746e5c871df0b7b5ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 443103, "upload_time": "2018-07-10T07:29:44", "url": "https://files.pythonhosted.org/packages/b1/fd/ac867579be4798d292bf6d4b8d0a0a5df974dac71a5d9a7fc6a4ba4986de/voice-engine-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "e78e6a53824cd10656b79e80004177a1", "sha256": "aed60895b793aa898114f58168bcae7055ceaad8eae44ae00e085488fef75ab7" }, "downloads": -1, "filename": "voice_engine-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e78e6a53824cd10656b79e80004177a1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18698, "upload_time": "2018-07-25T11:08:31", "url": "https://files.pythonhosted.org/packages/0a/20/4588f8cc40000a2bab3c51edf5efe705c766a008617304b1a87dbd8c165d/voice_engine-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6998f3649842fc4a5d776602d755ed2", "sha256": "01cf84e21457452b7ab9df40b377333cc74d144d5069165cbfed2c77f75eab3f" }, "downloads": -1, "filename": "voice-engine-0.1.3.tar.gz", "has_sig": false, "md5_digest": "d6998f3649842fc4a5d776602d755ed2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 443437, "upload_time": "2018-07-25T11:08:33", "url": "https://files.pythonhosted.org/packages/b5/2b/2299457faefa003f8fe19f5e9339f47f92453cd2f5811893d6bd40e13557/voice-engine-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e78e6a53824cd10656b79e80004177a1", "sha256": "aed60895b793aa898114f58168bcae7055ceaad8eae44ae00e085488fef75ab7" }, "downloads": -1, "filename": "voice_engine-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e78e6a53824cd10656b79e80004177a1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18698, "upload_time": "2018-07-25T11:08:31", "url": "https://files.pythonhosted.org/packages/0a/20/4588f8cc40000a2bab3c51edf5efe705c766a008617304b1a87dbd8c165d/voice_engine-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6998f3649842fc4a5d776602d755ed2", "sha256": "01cf84e21457452b7ab9df40b377333cc74d144d5069165cbfed2c77f75eab3f" }, "downloads": -1, "filename": "voice-engine-0.1.3.tar.gz", "has_sig": false, "md5_digest": "d6998f3649842fc4a5d776602d755ed2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 443437, "upload_time": "2018-07-25T11:08:33", "url": "https://files.pythonhosted.org/packages/b5/2b/2299457faefa003f8fe19f5e9339f47f92453cd2f5811893d6bd40e13557/voice-engine-0.1.3.tar.gz" } ] }