Android AudioRecord 初始化失败

2023-12-01

我在使用 Android 版 AudioRecord 时遇到问题。我已经在网上阅读了尽可能多的内容,但我似乎无法获得良好的初始化。我尝试过 Android 2.2 模拟器、1.5 模拟器和我的手机(运行 Froyo 的 HTC Incredible)。模拟器和我的手机初始化失败。

我尝试过8000、11025和44100的采样率,CHANNEL_IN_MONO/STEREO和CHANNEL_CONFIGURATION_MONO/STEREO的格式,8位和16位编码(8位使getMinBufferSize失败),以及MIC和DEFAULT的AudioSource。所有这些都会导致变量 test 在运行 get state 后变为 0(初始化失败)。

从我读到的所有内容看来,这应该正确初始化对象。我在 buflen 上尝试过乘数,使其范围从 512(函数的结果)到 102400,因为我听说 HTC 设备需要高于 8192 的值。

为了测试我的问题,我创建了一个新的小项目,尽可能简单地重现我的问题。我将所需的常量提取到本地整数中,然后运行构造函数并访问 getState 方法以检查它是否有效。

package com.example.audiorecordtest;

import android.app.Activity;
import android.os.Bundle;
import android.media.AudioFormat;
import android.media.AudioRecord;
import android.media.MediaRecorder;

public class audioRecordTest extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        int freq =8000;
        int chan = AudioFormat.CHANNEL_IN_MONO;
        int enc  = AudioFormat.ENCODING_PCM_16BIT;
        int src  = MediaRecorder.AudioSource.MIC;
        int buflen = AudioRecord.getMinBufferSize(freq, chan, enc);
        AudioRecord ar = new AudioRecord(src,freq,chan,enc,20*buflen);
        int test = ar.getState();
    }
}

我认为他的意思是你需要清单中的 RECORD_AUDIO 权限:

<uses-permission android:name="android.permission.RECORD_AUDIO" />

这对我有用。

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

Android AudioRecord 初始化失败 的相关文章

  • 现实世界中的 JavaCard 3?

    我目前正在从事我的文凭工作 部分工作包括开发JavaCard常规小程序SIM牌 第一个选项是使用JavaCard2 X API并使用APDU与小程序通信的命令 这可能非常棘手 因为我需要为 android 开发客户端应用程序 它将与这个小程
  • 更新语言时操作栏未更新

    我目前正在构建一个应用程序 允许人们在应用程序中更新语言 但是 当更改区域设置时 所有字符串都会更新 但操作栏中的字符串不会更新 对应于清单中的活动名称 仅当应用程序从头开始重新启动时才会考虑语言更改 在不强制应用程序重新启动的情况下更新所
  • 5.1 崩溃 - 任务描述的主要颜色应该是不透明的

    我已经在我的应用程序中实现了材料设计 它在 FATAL EXCEPTION main Process com test test PID 3195 java lang RuntimeException Unable to start act
  • 已将 APK 上传到 Play 商店,获得 0 个受支持的设备,但没有错误

    我正在尝试将我的应用程序的 Alpha 版本发布到 Play 商店 但我得到了 0 个受支持的设备 这令人沮丧 因为我没有看到该错误 该项目是一个新的样式 gradle API声明和版本在build gradle中定义 您可以在此处获取该应
  • Android API 列表

    我想获取 CellInfo 数据 但 cellinfo size 总是发生 模拟器中的 NullPointerException 细胞信息链接 http developer android com reference android tel
  • react-native-camera (android): takePictureAsync() 抛出错误

    从react native camera调用takePictureAsync 后 我收到此错误 framesToPop 1 nativeStackAndroid userInfo null message Preview is paused
  • 如何测试返回DataSource.Factory的Dao方法?

    转移后从SqliteOpenHelper to room在我的应用程序中 我尝试编写测试DAO class 我的 DAO 看起来像这样 Query SELECT FROM cards fun getAllCards List
  • eclipse 找不到我的 sdk 文件夹

    我已经在 Windows 7 上的 eclipse helios 上安装了 android sdk 和 adt 插件 但是 当我进入首选项时 我在定位 sdk 位置时遇到了问题 我的 SDK 位置是 C Program Files Andr
  • 如何解决Android中的NullPointerException错误?

    下面的代码在 Eclipse 的模拟器中运行顺利 但在 Android 手机和平板电脑上运行时出现问题 public class RingerActivity extends Activity Called when the activit
  • 丢弃对 OpenGL 中的程序性能有影响吗?

    我正在读书this http code google com p gdc2011 android opengl wiki TalkTranscript文章 作者写道 以下是如何通过两个简单的步骤在每个平台上编写高性能应用程序 遵循最佳实践
  • 谷歌分析崩溃报告仅显示堆栈跟踪的第一行

    我的应用程序使用 Google Analytics 来跟踪异常和崩溃 除其他外 我使用这个函数来获取堆栈跟踪 public static void sendErrorReportViaGoogleAnalytics Exception e
  • Google Play 将我的应用程序版本显示为“随设备而变化”

    我最近在 Google Play 商店更新了我的应用程序 在我的 Play 商店应用程序页面中 版本显示为因设备而异我没有上传多个 apk 而是使用单个 apk 更新了我的应用程序 那么为什么它显示版本为因设备而异 是否有任何设置可以删除此
  • 跨平台 IAP

    我已在 iOS 和 Android 中集成了应用内购买 自动续订订阅 两者都工作正常 我对使用跨平台验证 IAP 有一定的疑问 例如 当多个用户登录一个应用程序时 某一特定应用程序的订阅如何运作 例如 如果用户 A 有标准套餐并且从应用程序
  • 如何使用 Android Volley API?

    我正在考虑在我的下一个项目中实现 Android Volley 库 关于 Volley 的 Google IO 演示 http www youtube com watch v yhv8l9F44qo 但是 我还没有找到该库的任何重要的 AP
  • 当对话框打开时如何处理屏幕方向变化?

    我有一个 Android 应用程序 它已经在处理方向的更改 即有一个android configChanges orientation 在清单和onConfigurationChange 活动中的处理程序切换到适当的布局并准备它 我有一个横
  • ConstraintLayout 源代码位于哪里?

    哪里可以找到android的源代码ConstraintLayout 我在支持框架存储库甚至谷歌搜索中都找不到它 它的源代码在这里 https android googlesource com platform frameworks opt
  • 对特定路径使用 Intent.ACTION_PICK

    我正在尝试使用 Android 图库来选择图像 为此目的启动画廊很容易 Intent photoPickerIntent new Intent Intent ACTION PICK photoPickerIntent setType ima
  • 获取 Blob 图像并将该图像转换为 Bitmap 图像

    我正在从数据库中获取 blob 格式的图像 我想将其转换为位图图像 我用来将位图转换为 Blob 的代码放在下面 但是请告诉我如何反转它 ByteArrayOutputStream boas new ByteArrayOutputStrea
  • 从 SD 卡读取 pdf 文件

    我想阅读存储在 SD 卡中的 pdf 文件 我尝试使用此代码片段 File file new File Environment getExternalStorageDirectory vvveksperten ypc pdf Package
  • Android ACTION_MOVE阈值

    我正在编写一个应用程序 需要使用手指或最终使用手写笔在屏幕上书写 我有那部分工作 在 ACTION DOWN 时 开始绘制 在 ACTION MOVE 上 添加线段 在 ACTION UP 上 完成该行 问题是 在 ACTION DOWN

随机推荐

  • 线程“main”java.sql.SQLException中的异常:靠近“s”:语法错误

    我编写了一个程序 用单词列表填充数据库 问题是 每次我尝试运行代码时 它都会抛出 线程 main java sql SQLException中的异常 接近 s 语法错误 我意识到这个论坛上也有人提出了类似的问题 但在我的代码上下文中我无法纠
  • CardView突然变黑了

    我有一个问题CardView in the RecyclerView My CardView突然变黑了 我的RatingBar变成蓝色 我正在使用InfiniteRecyclerView但将其改为简单的RecyclerView没有影响 我可
  • 在Python中重新打开文件?

    假设我有这个简单的 python 脚本 file open C some text txt print file readlines print file readlines 运行时 第一个打印会打印包含文件文本的列表 而第二个打印会打印空
  • pheatmap 中缺少注释和颜色

    使用 pheatmap R 包 我需要制作带有自定义颜色集注释的热图 我使用以下代码 Make a matrix mat lt replicate 23 rnorm 23 colnames mat lt c 1 2 3plus3reseq
  • Material-UI Button 组件如何推断传递给“component” prop 的组件的 props?

    谁能解释一下 Material UI 如何扩展其 propsButton如果我在component prop interface MyLinkProps extends ButtonBaseProps someRandomProp stri
  • 使用字典将 xml 反序列化为对象

    这是我的班级结构 class DataItem public string Id get set public string Type get set private Dictionary
  • 前瞻和非捕获正则表达式

    我试图将 字符之前的电子邮件地址的本地部分与 LOCAL RE NOTQUOTED w alphanumeric and special chars but no dot at beginning w alphanumeric and sp
  • 传递类型参数进行实例化

    为什么 scala 编译器不挖掘这个 class Clazz class Foo C lt Clazz val foo new C class type required but C found error val a new C erro
  • 无法获取 PropertyInfo.SetValue() 来设置我的对象的值

    我已将下面的代码简化为一个基本示例 但我仍然无法获取要设置的值 执行 propertyInfo SetValue 时 它将在我的 Contact 对象的 setter 上命中断点 并且该值在 setter 中正确设置 但是 执行 SetVa
  • Java进程间互斥体

    我需要在 Java 中实现某种进程间互斥锁 我正在考虑使用本文中推荐的 FileLock APIthread 我基本上将使用一个虚拟文件并将其锁定在每个进程中 这是最好的方法吗 或者是标准 API 中内置的类似内容 我找不到 欲了解更多详情
  • 如何在 Android Studio 中对齐 XML 代码?

    Android Studio 中是否有任何功能可以通过 符号对齐所有 XML 属性 我找不到任何允许这样做的设置 Just another code format fanatic who likes code readability 下面的
  • 添加数据以返回 Symfony 控制器中的所有操作

    我在 Symfony 2 1 应用程序中有一个控制器 我们就这样称呼它吧FooController in the BarBundle 这个控制器有很多动作fooAction barAction bazAction还有一些 他们都有一些共同点
  • 使用终端而不是 Xcode 运行 C 脚本

    目前我正在我的 Mac 上使用 Xcode 开发几个 C 程序 然而有1个问题 我的学习要求我通过编码使用某种输入字段 例如 如果用户想要运行该程序 10 次或希望该程序创建 10 个答案 我使用 atoi argv 1 只是为了获取用户的
  • SQL DELETE 并 JOIN 另一个表作为 WHERE 条件

    我必须从中删除行guide category与 没有关系的guide表 死关系 这就是我想做的 但它当然行不通 DELETE FROM guide category AS pgc WHERE pgc id guide category IN
  • 使用 JQueryUI 一次打开多个工具提示

    我需要做类似的事情 document tooltip open 我需要这样做 因为我想在鼠标悬停时显示工具提示 但也想用一个复选框显示所有这些工具提示 这可能吗 你可以在 jsFiddle 中查看我想要的内容 http jsfiddle n
  • BMP 图像标题 - biXPelsPerMeter

    我已经阅读了很多有关 BMP 文件格式结构的内容 但我仍然无法理解字段 biXPelsPermeter 和 biYPelsPermeter 的真正含义是什么 我的意思是在实际中 它是如何使用的或者如何利用它 有什么例子或经验吗 多谢 双像素
  • 有谁能够让肥皂库与 NetSuite WSDL 一起使用吗?

    有谁能够让肥皂库与 NetSuite WSDL 一起使用吗 当我尝试创建客户端时出现此错误 from suds client import Client url http mssoapinterop org asmx simple asmx
  • 在 Node 服务器上运行 Matter.js

    我正在尝试运行一个在服务器上运行物理模拟的服务器 并让客户端通过 websockets socket io 连接到该服务器 我知道我可以使用 Matter js 与渲染分开计算引擎 所以我的问题是 如何将引擎数据发送给客户端 我有一个Gam
  • 如何根据用户的不同让我的机器人在不同的对话框中启动

    基本上 我希望使用 iframe 和 Bot Framework Web Chat 将我的机器人放在不同的页面上 根据用户打开机器人的页面 会调用不同的对话框 如果没有 Direct Line 这就像向 api messages 添加查询参
  • Android AudioRecord 初始化失败

    我在使用 Android 版 AudioRecord 时遇到问题 我已经在网上阅读了尽可能多的内容 但我似乎无法获得良好的初始化 我尝试过 Android 2 2 模拟器 1 5 模拟器和我的手机 运行 Froyo 的 HTC Incred