在 Android 中组合音频文件的最佳方式

2023-12-30

我正在开发录音应用程序,其中包括暂停/播放 option.

我尝试过两者媒体记录器 and 录音带

的情况下录音带,录制的音频消耗更大的大小,因此如果录制大小增加,例如:如果我录制 1 分钟的音频消耗 40 到 50MB通过将其转换为 来进行组合确实很痛苦。raw file and 发送到php服务器.

所以我尝试了媒体记录器, it 消耗更少的尺寸,但无法使用以前在音频记录中处理的方式进行组合。

下一步我尝试过安卓NDK- 甚至设置过程都非常痛苦。

现在我的问题是合并录制的音频文件的最佳方式是什么

  1. 使用 Android NDk
  2. 从音频中读取字节数据并组合 - 如果我使用它,则记录格式的标题会出现问题,比如 amr、wav 之类的。

另外,如果我尝试使用this https://stackoverflow.com/questions/653861/join-two-wav-files-from-java/653873#653873,我无法获取 javax.sound 包,所以我尝试使用插件,但没有运气。

请建议最好的方法来做到这一点。我也尝试了以下所有链接

音频链接1 http://code.google.com/p/krvarma-android-samples/source/browse/trunk/AudioRecorder.2/src/com/varma/samples/audiorecorder/RecorderActivity.java

音频链接2 https://stackoverflow.com/questions/6179709/audio-appending-using-randomaccessfile

音频链接3 https://stackoverflow.com/questions/6128440/is-there-pause-available-in-mediarecorder-class

音频链接4 https://stackoverflow.com/questions/6161231/merging-pcm-audio-files

为我提供好的教程或示例或链接。谢谢。


对于这样的事情,最好的选择是使用 NDK 开发本机 C++ 代码。

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

在 Android 中组合音频文件的最佳方式 的相关文章

  • 未找到 Gradle DSL 方法:“versionCode()”

    构建我的 Android 项目时遇到问题 我使用Grgit https github com ajoberstar grgit填写versionCode and versionName在 gradle 中 一切工作正常 直到我将 Andro
  • 合并两个位图图像(并排)

    任何人都可以帮助将两个位图图像合并为单个位图 在android中 并排 谢谢 尤瓦拉吉 您可以使用Canvas 查看这篇文章 http www jondev net articles Combining 2 Images in Androi
  • 如何改变android中menuItem的背景颜色?

    我正在以编程方式将菜单项添加到菜单中 我想在选择特定项目时添加背景颜色 如何为 menuItem 添加背景 您的回答将不胜感激 虽然其他答案提供了更改样式 这会影响all菜单项 据我了解 需要更改一个菜单项 我建议你使用android ac
  • OpenCV InRange 参数

    我在 Android 上使用 OpenCV 来实时查找特定颜色的圆圈 我的第一步是仅保留与我正在寻找的定义颜色相对应的像素 在本例中为红色或绿色 示例图像 https i stack imgur com CIozU jpg 为此 我正在使用
  • layout.xml 的用途是什么?

    人们为什么使用layout xml在他们的resources like
  • 下载图像并显示它

    应用程序的主要目的是下载和显示图像 但是当我尝试启动应用程序时它崩溃了 这是我的代码 private DownloadImageTask task protected void onCreate Bundle savedInstanceSt
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • 在 Android 上的测试用例之外运行 ExtractDecodeEditEncodeMuxTest

    我正在尝试添加在 Android 上提取 解码 编辑 编码和混合视频的功能 因此 我发现了一些非常有用的实现 它是Android CTS的一部分ExtractDecodeEditEncodeMuxTest https android goo
  • 如何在 Android 上的 HttpPost 中发送 unicode 字符

    我试图在我的应用程序中允许多语言支持 这会发出 HTTP post 来上传新消息 我需要做什么才能支持日语和其他非拉丁语语言 我的代码目前看起来像这样 note the msg string is a JSON message by the
  • Facebook LoginActivity 未正确显示

    我有一个使用 Facebook 登录的应用程序 我有 FacebookSDK 并且使用 com facebook LoginActivity 问题是 在 10 英寸平板电脑上 当显示软键盘时 活动无法正确显示 我使用的是 Samsung G
  • 手动启用时 Firebase Crashlytics 不报告崩溃

    Crashlytics 在没有选择加入报告的情况下也能正常工作 但一旦我根据规定设置了选择加入报告 它就会停止报告任何内容tutorial https firebase google com docs crashlytics customi
  • 如何从SurfaceView绘制到Canvas?

    我正在尝试做简单的画家 问题是Android看起来有三个独立的Canvas并给我它来顺序绘制 我用以下方式制作了用户界面SurfaceView 把霍尔德从中拿走 Override protected void onCreate Bundle
  • 模拟器:进程已完成,退出代码为 134(被信号 6:SIGABRT 中断)

    我最近刚刚开始在 Mac 上下载 Android Studio 版本 3 0 1 但收到以下错误 模拟器 进程已完成 退出代码为 134 被信号 6 SIGABRT 中断 我按照 Android Studio 教程操作并能够运行模拟器 但在
  • Android开发:未定义方法

    大家好 我是 Android 和 Eclipse 的新手 我刚刚遵循了developer android com 上的教程 现在我在添加操作栏 http developer android com training basics actio
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • 如何更改锁屏自定义文本(所有者信息)?

    我写了程序代码 String message This is test Settings System putString context getContentResolver Settings Secure LOCK PATTERN EN
  • 按名称查找视图

    是否可以通过名称而不是 id 来查找视图 findViewById R id someView 但我想做这样的事情 findViewByName someView 在处理 xml 时 您必须通过标识符查找视图 但是您可以使用以下方式查找标识
  • OpenGL ES 2.0 屏幕闪烁

    我面临着一个大问题 我正在使用带有 Android 4 0 3 的 Transformer tf101 选项卡 我的应用程序使用自定义 OpenGL ES 2 0 表面 我正在用纹理渲染多个平面 该纹理大约发生变化 每秒 20 次 并通过传
  • WebView 在某些设备上如果不长按则不会滚动

    我有一个 WebView 设置如下 the web view mWebView WebView findViewById R id webView push the url on to the web view mWebView loadU
  • Android应用程序kill事件捕获

    我想在我的应用程序被终止时执行一些操作 可以使用哪种方法来实现此目的 我正在开发 Android 5 0 这个问题的关键在于 您必须了解您的申请是否可以收到任何 当您的应用程序在任何情况下被终止时的额外回调 下面的答案是由德文连线 http

随机推荐

  • 在枚举期间添加和删除 ConcurrentBag 的元素

    当线程添加或删除 a 的元素时会发生什么ConcurrentBag
  • ngClass 的 ExpressionChangedAfterItHasBeenCheckedError

    我有两个锚标签 ul class switchNav li a href panel 1 a li li a href panel 2 a li ul ts hide
  • Electron-builder 无法将下载的内容移动到最终位置

    使用 Windows 10 Node v12 13 0 和 NPM v6 12 0 以及 Electron 当我运行 npm run package win 来构建我的 exe 时 我收到以下内容 我以前从未经历过类似的事情 EPERM 不
  • stringbuilder 与 string concat

    在我的项目中 我循环遍历数据视图结果 string html string empty DataView dV data DefaultView for int i 0 i lt dV Count i DataRowView rv dV i
  • 无法使用 Cypress.io 选择已通过浏览器扩展附加到 DOM 的元素

    我正在尝试使用 Cypress io 为我的 chrome firefox 扩展编写测试 在我的扩展内容脚本中 我将一个按钮附加到 DOM 的 body 元素 并尝试使用 cypress 单击该按钮 然而 在运行测试时 按钮被注入到测试运行
  • 生物识别认证实施

    我正在寻找有关使用指纹 touchID FaceId 从我们的移动应用程序进行替代身份验证的最佳实践 我们有以下架构 数据库 PostgreSQL 后端 net core 2 2 中的 REST API Clients Angular2 网
  • 如何强制线程严格按顺序工作?

    我正在编写一个多线程控制台应用程序 使用 WinAPI 的关键部分作为同步机制 我需要创建5个线程 每个线程都有自己的字符串由线程显示 线程应该按顺序一一输出它们的字符串 所以 我有线程函数 void thread routine void
  • iOS中滚动表格视图时如何隐藏导航栏和标签栏

    我在隐藏标签栏作为导航栏时遇到问题 我的要求是当我滚动表格视图时同时隐藏导航栏和选项卡栏 我的导航栏按要求正常工作 但选项卡栏没有响应相同 有没有人可以帮助我请整理一下 I m using NJKSCROLLFULLSCREEN for r
  • Windows 空间中的 java ProcessBuilder 在 *.exe 路径和参数中

    经常讨论 但这似乎是一个奇怪的边缘情况 在 windows cmd exe 中我成功运行 c Program Files myapp exe my arg sth with space and c Program Files myapp e
  • Python:仅在图像蒙版内执行模糊

    我有一个灰度图像和该图像中 ROI 的二值掩模 我想对灰度图像执行模糊操作 但仅限于蒙版的范围内 现在我正在模糊整个图像 而不仅仅是删除蒙版之外的项目 但我不希望蒙版之外的像素影响我的投资回报率 有没有办法在不构建自定义模糊函数的情况下做到
  • 无法将“String.Type”类型的值转换为预期的参数类型“String!”

    我正在使用用 Objective C 编写的 MDWamp 库 它具有以下类型的属性 property nonatomic strong void deferredWampCRASigningBlock NSString challange
  • 如何为 Docker 制作自己的基础镜像?

    根据Docker 文档 https docs docker com engine reference builder from 要构建您自己的映像 您必须始终使用FROM操作说明 显然 有很多图像可供选择Docker 索引 https hu
  • 如何在 Atom 中设置 jshint/jsxhint "esnext" 选项

    我正在使用 Atom 的linter react and linter jshint linter jsxhint 在我的 JSX 文件中 我不断收到警告 警告 导入 仅在 ES6 中可用 使用 esnext 选项 W119 这非常简单 我
  • C# 访问 EXCEL,将单元格格式设置为常规

    在 C 中操作 excel 单元格 通过 COM 对象 时 我应该使用 Value 还是 Value2 那是 sheet Cells row n col Value Hello world or sheet Cells row n col
  • 获取轴的纵横比

    有没有一种简单可靠的方法来确定当前纵横比axes当其方面设置为 auto 显而易见的是要检查的是ax get aspect 但这只是返回 auto 我可以将其设置为任意常数值ax set aspect aspect 之后返回相同的常量ax
  • 无法获取相机预览(调用相机),HTC Thunderbolt

    我是 Android 应用程序开发的新手 所以请任何答案都包含代码示例 我的问题是这样的 我必须开发一个相机应用程序 将 mjpeg 流式传输到服务器 现在我已经成功地为我的摩托罗拉 Atrix 创建了该应用程序 并且效果非常好 我的问题是
  • Play 的成功案例!框架? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Windows 7 x64 上的 Flash ocx“类未注册”

    我有一个在 32 位机器上开发的使用 Flash10c ocx 的 WPF 应用程序 我不必在我的开发机器上注册 ocx 我只需安装最新的闪存 添加引用并开始编码 在 64 位系统上测试时 我得到了旧的 类未注册 我认为这意味着我需要 re
  • 从线程更改 ui

    我知道有类似的问题 但我的问题略有不同 我有这样的代码 Thread t new Thread public void run while running if gpstracker canGetLocation double lon gp
  • 在 Android 中组合音频文件的最佳方式

    我正在开发录音应用程序 其中包括暂停 播放 option 我尝试过两者媒体记录器 and 录音带 的情况下录音带 录制的音频消耗更大的大小 因此如果录制大小增加 例如 如果我录制 1 分钟的音频消耗 40 到 50MB通过将其转换为 来进行