语音识别之获取语言数据(portaudio的平台搭建)

2023-11-13

          我们要进行语言识别,那么就要先构建好平台——portaudio!

          我们需要采集所需要的16KHZ频率,16比特的声音信号,我们就可以采用portaudio来实现这个功能。那么这个Portaudio怎么使用呢?请看!

          http://www.cnblogs.com/haibindev/archive/2011/12/07/2277366.html

          http://www.portaudio.com/

          http://blog.csdn.net/killmice/article/details/8674563

          其实还有别的方法,就是采用directshow:

          DirectShow

          http://edu.gamfe.com/tutor/d/42674.html

          http://blog.sina.com.cn/s/blog_4d8205e40100q4gw.html

         

         以下是具体步骤:http://portaudio.com/docs/v19-doxydocs/compile_windows.html  (其实这个教程写得就十分perfect了,我就把我做到遇到的问题说一下吧!我基本上遇到了所有的问题) 当然,还有一篇博客:http://blog.csdn.net/yanmy2012/article/details/8090287 写得也挺好!


1、安装directx:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=3021d52b-514e-41d3-ad02-438a3ba730ba  (如果安装不了的话,请把vs2012及更高版本的reditributed删除 )


2、安装

http://portaudio.com/docs/v19-doxydocs/compile_windows.html    这个是最好的!
http://blog.csdn.net/str999_cn/article/details/27326821

http://blog.sina.com.cn/s/blog_b8700d2f0102v0vw.html   不错的教程!

Open Project -> portaudio Properties and select "Configuration Properties" in the tree view.   这个就是改属性管理器的东西!

Without ASIO:


修改属性管理器进行一些配置设置:

Select "all configurations" in the "Configurations" combo box above. Select "All Platforms" in the "Platforms" combo box.

Now set a few options:

Required:

C/C++ -> Code Generation -> Runtime library = /MT

Optional:

C/C++ -> Optimization -> Omit frame pointers = Yes

Optional: C/C++ -> Code Generation -> Floating point model = fast

预处理定义:

Since the preprocessor definitions are different for each configuration and platform, you'll need to edit these individually for each configuration/platform combination that you want to modify using the "Configurations" and "Platforms" combo boxes.

To suppress PortAudio runtime debug console output, go to Project -> Properties -> Configuration Properties -> C/C++ -> Preprocessor. In the field 'Preprocessor Definitions', find PA_ENABLE_DEBUG_OUTPUT and remove it. The console will not output debug messages.

Also in the preprocessor definitions you need to explicitly define the native audio APIs you wish to use. For Windows the available API definitions are:

PA_USE_ASIO
PA_USE_DS (DirectSound)
PA_USE_WMME (MME)
PA_USE_WASAPI
PA_USE_WDMKS
PA_USE_SKELETON

For each of these, the value of 0 indicates that support for this API should not be included. The value 1 indicates that support for this API should be included. (PA_USE_SKELETON is not usually used, it is a code sample for developers wanting to support a new API).    

点开:


3、问题

http://music.columbia.edu/pipermail/portaudio/2009-June/009210.html   2019的问题!http://write.blog.csdn.net/postedit/44056277

函数依赖项的问题,主要是opencv之前没有配好,坑爹的!终于让我干掉你这个函数依赖项: http://www.cnblogs.com/cuteshongshong/articles/4056365.html

一定要在属性管理器那里去搞!

还要那个ASIO下不了记得把和它相关的去掉!

http://blog.csdn.net/tianyuan521521/article/details/43638051    无法打开文件“KSguid.lib” 这个库呢我的就是在:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib


http://www.rosoo.net/a/201011/10526.html     总得到后面错误的结果。在Win32环境中是需要WMME和DS的

最后终于看到:


后来我又试了x64,因为安装了IPP的缘故。结果是:

表面上是生成了dll结果去那个目录下没有发现,而且有那个warning,所以我就:(任选一种)

  • 在项目的C/C++->预处理器,预处理器定义那里加:            
     _CRT_SECURE_NO_DEPRECATE 
  • 在项目的stdafx.h中寻找#pragma once语句,在它的后面加入如下所示的宏定义: #define _CRT_SECURE_NO_DEPRECATE
  • 在项目的stdafx.h中寻找#pragma once语句,在它的后面加入如下所示的编译控制语句 : #pragma warning(disable:4996)

当然,这时候dll没有生成的问题没有解决,但具体解决办法请看:

        对于这个我要提特别说明,若在配置管理器哪那里设置了Release的,那么你的文件是在Debug那里找到portaudio_x64.lib和在Release底下找到portaudio_x64.dll。在下图中我还特别框出了x64,记得这里选x64,主要是为了配合后面IPP使用。这里的输出文件之前是没有的,我加进去了:$(Platform)\$(Configuration)/portaudio_x64.dll。要是找不到lib呢?请看:

http://zhidao.baidu.com/link?url=T0dN7yvaz81cjHihEkW36wVOINjH3lEkYmX5KPHNJFSXyPxYDRu-XBZT_GCYd08lflPsnUL-QMeZ4F

https://msdn.microsoft.com/zh-cn/library/67wc07b9UCYIv6iq



4、使用简介

具体在VS上怎么使用请参考我的下一篇博客:

http://blog.csdn.net/c602273091/article/details/44156707

1. 将portaudio/include下的头文件portaudio.h拷贝到当前工程目录下,并且包含进VS工程里。

2.将编译生成的portaudio_x86.dll,portaudio_x86.lib两个文件拷贝到工程目录下。

3.在工程的项目属性里设置:C/C++->常规->附加包含目录(如果第2步头文件已经拷贝到工程,此处不必再设置。)

4.链接器->输入->附加依赖项,输入portaudio_x86.lib。
http://blog.csdn.net/str999_cn/article/details/27368797


5、总结

在这里我就总结一下调用某个库的使用方法:直接看官方网站给的资料,比什么都清楚。还有就是在保持官方网站的步骤一致性之后遇到什么问题就去查什么问题!相信我,你不是第一个吃螃蟹的人!那么生成的dll和lib怎么用呢?

具体请看我的博客:

http://blog.csdn.net/c602273091/article/details/44156707


 


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

语音识别之获取语言数据(portaudio的平台搭建) 的相关文章

  • CCProxy和Proxifier使用教程

    CCProxy使用 xff08 服务端 xff09 xff1a CCProxy运行在需要配置为代理服务器的电脑上 1 点击设置 xff0c 按自己需要选择要开的服务 xff1a 2 点击高级 xff0c 取消勾选 34 禁止局域网外部用户
  • vnc使用教程,超实用的vnc使用教程

    在工作中 xff0c 难免会使用到vnc 小编也一样 很多小伙伴也问过我这个问题 xff0c 什么样的vnc使用教程能做到简单快捷 那大家知道vnc使用过程中 xff0c 是如何实现简单快捷的呢 接下来 我将会对vnc使用教程作一个简单介绍
  • Doxygen使用教程(个人总结)

    简介Doxygen 一 xff0e 什么是Doxygen Doxygen 是一个程序的文件产生工具 xff0c 可将程序中的特定批注转换成为说明文件 通常我们在写程序时 xff0c 或多或少都会写上批注 xff0c 但是对于其它人而言 xf
  • CMake+QT使用教程

    一 CMake入门 下面是使用 Qt 用 C 43 43 编写的控制台应用程序的典型文件 xff1a CMakeLists txt 1 构建一个控制台应用程序 span class token comment 指定应用程序所需的CMake最
  • Mininet使用教程

    注 xff1a 1 重要的链接 xff1a http mininet org walkthrough display startup options 2 IPv4与IPv6之间的地址转换 https www subnetonline com
  • ST-Link使用教程

    1 电脑安装软件 2 点击确定 3 下一步 4 下一步 5 下一步 6 下一步 7 下一步 8 等待安装完成 9 等待 10 完成安装 11 打开 ST Visual Programmer 12 选择芯片 13 选择芯片类型 xff08 S
  • cmake使用教程

    CMakeLists txt文档编写以及packsge xml文档介绍 CMakeLists txt文档一 cmake minimum required命令二 CMake中的编译类型三 cmake编译选项 xff08 与2对应 xff09
  • UWB使用教程

    前言 本篇文章主要对淘宝商家给的UWB资料进行整理 xff0c 方便大家快速入门 注重UWB定位模块的使用 xff0c 不解释具体的原理 实现功能 xff1a 搭建UWB基站使用上位机配置参数ROS接受UWB的定位信息修改IMU的STM32
  • Maven使用教程

    一 Maven介绍 我们在开发项目的过程中 xff0c 会使用一些开源框架 第三方的工具等等 xff0c 这些都是以jar包的方式被项目所引用 xff0c 并且有些jar包还会依赖其他的jar包 xff0c 我们同样需要添加到项目中 xff
  • quartus Ⅱ 12.1 使用教程(4) uart 测试

    开发板使用的是EP4CE15F23C8 xff0c 软件使用的是quartus 12 1 xff0c 工程实现的功能是使用uart进行回环测试 顶层 module uart test i clk i rst n rx tx input i
  • RealSense T265使用教程

    RealSense ROS 安装 https github com IntelRealSense realsense ros 安装教程 https www intelrealsense com get started tracking ca
  • git-cola使用教程_使用Git Cola轻松实现Git

    git cola使用教程 Git是一个Linux命令 xff0c 可帮助您管理工作的版本 它已被移植到BSD xff0c macOS xff0c Windows等 它是流行的代码托管服务的基础 xff0c 包括GitLab和NotABug等
  • Dockerfile使用教程

    第一 创建一个spring boot项目 第二 创建 xff1a Dockerfile文件 xff08 在项目根目录下 xff09 第三 复制粘贴 FROM java 8 设置基础镜像 FROM openjdk 8 jdk alpine 指
  • Postman 的使用教程(详细)

    Postman 使用教程 1 是什么 Postman 是一个接口测试工具软件 xff0c 可以帮助开发人员管理测试接口 官网 xff1a https www getpostman com 2 安装 建议通过官网下载安装 xff0c 不要去那
  • Jetson_Xavier_NX使用教程1(刷机)

    刷机教程 一 xff1a 准备 1 xff1a 准备需要一个tf卡 xff0c 容量最好大点 xff0c 我买的128G的 2 xff1a 还有两个软件一个是格式化卡的软件 xff0c 一个是将镜像文件写入的卡的软件 格式化卡的软件 写入镜
  • 基于VS2019配置opencv4.0

    文章目录 1 前言 2 不说废话 直接上图干净利落 2 1 创建新空白项目 2 2 添加一个主文件 2 3 配置opencv环境 2 4 链接器配置 2 5 将opencv添加到计算机环境中 2 6 文件复制 3 运行测试环境 1 前言 不
  • 爬虫访问中,如何解决网站限制IP的问题?

    爬虫访问中 如何解决网站限制IP的问题 多年爬虫经验的人告诉你 国内ADSL是王道 多申请些线路 分布在多个不同的电信区局 能跨省跨市 IP覆盖面越多越好 九州动态IP是一款动态IP转换器客户端 该提供国内26个省共百万数据级动态ip切换
  • Pyaudio、portaudio 和 mac 10.7.5

    我在正确安装 pyaudio 时遇到问题 我为该项目设置了一个 virtualenv 我首先尝试安装 portaudio sudo port install portaudio 返回 gt Cleaning portaudio gt Sca
  • 有关 Swift 中访问“typedef void PaStream;”的正确语法的任何帮助来自 C 文件?

    我编译并导入了一个名为 portaudio 的 dylib C 库 港音网站 http portaudio com 到 Xcode 6 1 Swift 项目中 所有函数 类型都可以访问 除了一个 typedef 无效 PaStream 我无
  • 将 PyAudio Stream 输入和输出设置为 True 时出现 IOError: [Errno Input Overflowed] -9981

    我尝试在我的 Mac 操作系统 10 7 2 上运行以下代码 PyAudio 文档中的示例 import pyaudio import sys chunk 1024 FORMAT pyaudio paInt16 CHANNELS 1 RAT

随机推荐