使用projectoxfordapi的python模块

projectoxford的Python项目详细描述


用于Project Oxfordapi的python客户端库。

微软牛津项目是一个人工智能工具的集合,可以作为在线服务提供。这个库提供了来自python的项目oxfordapi的简单使用。

目前只实现了语音识别、合成和{a2}api。

如果您使用的是此库的早期版本(仅提供vision api),请安装projectoxford<=0.2以继续使用该版本。

安装

要安装,请使用pip:

pip install projectoxford

这个图书馆处于发展的早期阶段。强烈建议将所有引用固定到正在使用的特定版本。

开始

要使用文本到语音或语音识别,您需要obtain a subscription key

fromprojectoxford.speechimportSpeechClientsc=SpeechClient("YOUR-KEY-GOES-HERE",gender='Male',locale='en-US')

您可以使用sc.say_to_wav创建包含合成语音的wave文件,或使用sc.say立即播放语音。

data=sc.say_to_wav("Hello. I have been written to a file.",filename="test.wav")sc.say("I am being read out loud, right now.")

您可以使用sc.recognize将wave文件中的语音转换为文本,或者不提供从用户的默认麦克风记录最多30秒的文件。

如果响应指示它对结果不具有高信心,则会引发LowConfidenceErrorargs[0]错误包含对文本的最佳猜测。如果根本无法确定结果,则引发ValueError

recognize_raw方法从服务返回json响应,其中包含的信息比recognize中提供的更多。

fromprojectoxford.speechimportLowConfidenceErrortext=sc.recognize('some_speech.wav')try:text=sc.recognize()exceptLowConfidenceErroraserr:text=err.args[0]json_data=sc.recognize_raw()

函数^ {t10} $和^ {t11} $可用于重写生成素^ {tt12} $和^ {tt13} $函数,以方便地转换现有代码。

print=sc.printinput=sc.inputprint("Welcome to my application.")name=input("What is your name?")

音频播放和录制由projectoxford.audio模块执行。目前,仅支持Windows,并且始终使用用户的默认设备。

默认情况下,record等待听到一些声音,然后录制到一秒钟的静音。使用quiet\u threshold参数调整灵敏度,而get\u quiet\u threshold函数可以通过记录短时间的静默来获取此值。

函数play获取一个文件名或wave文件的原始内容,并在返回之前播放整个声音。

fromprojectoxford.audioimportplay,recordwave_file_contents=record()play(wave_file_contents)# Record for 5 secondsdata=record(seconds=5,quiet_seconds=0,wait_for_sound=False)

使用help(record)查看其他参数。

贡献

随着时间的推移,我们希望在这个库中添加完整的项目oxfordapi。欢迎捐款。

许可证

这个项目牛津客户端库是在麻省理工学院的许可下发布的。有关详细信息,请参见许可证。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用Array和ArrayList做同样的事情?   用户界面使Java JScrollpane仅垂直滚动   查找字符串中最长的重复子字符串所需的算法Java函数?   java我想在listview中检索firebase数据   java如何使用Jsoup提取链接?   java 安卓。看法使用RTEditor时发生充气异常   maven为什么自动依赖是错误版本?(java.lang.ClassNotFoundException:org.junit.jupiter.api.MethodOrderContext)   使用apachespark进行java开发   java glDrawBuffers是否应该翻转IntBuffer?   java在添加回调之前完成CompletableFuture<T>   用Java构建搜索树   java将web应用程序部署到Heroku   active directory Java LDAP:属性为只读   启动Spring启动应用程序时未考虑java DB端口   使用Mockito的java模拟   C++从运行时运行java的过程。执行出口代码139   javascript使用脚本删除旧SonarQube项目   java代理每节点模型?   java无法在Android上通过Internet从PC服务器接收UDP数据   在bluemix:java上加载p12时发生ibm云错误。木卫一。IOException:数据不足