如何将 SourceDataLine 的内容写入文件?

2023-12-14

我正在修改一个播放音频数据的应用程序,以将数据写入文件。正如当前实现的那样,字节数组是动态填充的,每次填充时,该缓冲区的内容都会写入 SourceDataLine 中。我基本上想将该缓冲区写入指定格式的文件中。

我已读完这个官方教程并遇到了用于将音频数据写入文件的代码片段:

File fileOut = new File(someNewPathName);
AudioFileFormat.Type fileType = fileFormat.getType();
if (AudioSystem.isFileTypeSupported(fileType, 
    audioInputStream)) {
  AudioSystem.write(audioInputStream, fileType, fileOut);
}

我从 API 文档中看到,我可以使用 TargetDataLine 构造 AudioInputStream,但在我的例子中,我有一个 SourceDataLine。我不知道如何将字节数组中的数据获取到 TargetDataLine 中,因为它实现了 read() 方法而不是 write()。该文档和其他文档中 AudioInputStream 的其他用途将其视为一种阅读方式from一个文件,所以我对它与 AudioSystem.write() 的使用有点困惑。

那么,如何从 SourceDataLine 或直接从缓冲区获取数据到 TargetDataLine 或 AudioInputStream 中,以便将其写出到文件中?


  1. Use the byte[]建立一个ByteArrayInputStream
  2. 提供 BAIS 至AudioSystem.getAudioInputStream(InputStream)
  3. 使用 AISAudioSystem.write(..)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 SourceDataLine 的内容写入文件? 的相关文章

  • 无法禁用 Firestore 中的离线数据

    从我的数据中删除数据后Firestore Database 这需要我的Android app一段时间后才意识到数据已被删除 我认为这是由于自动数据缓存而发生的 我的应用程序与离线使用无关 我想禁用此功能 我已将其添加到我的自定义中Appli
  • 无法执行目标 org.codehaus.mojo:exec-maven-plugin:1.5.0:exec

    三周前 我完成了一个网络应用程序的工作 一切都运行没有问题 现在 三周后 没有任何更改 我想再次运行该应用程序 但这次我收到以下错误消息 An error occurred while parsing the server response
  • 使用 ScriptEngine 从 JavaScript 调用 Java 方法

    我正在使用 ScriptEngine 运行 JavaScript 我希望 JavaScript 脚本能够调用 myFunction 其中 myFunction 是我的给定类中的一个方法 我知道可以将 importPackage 用于标准 J
  • 如何使用 Jsoup 获取包含非 ASCII 字符(ą、ś ...)的 URL?

    我正在使用 jsoup 解析一些波兰网站 但我对 URL 中的 等特殊字符有问题example com k t读起来像example com k 每个没有这个特殊字符的查询都可以完美运行 我努力了Document doc Jsoup par
  • 如何注入“运行时”依赖项,例如登录用户,该依赖项在应用程序启动时不可用?

    我只是不明白这个 我在我的 java GWT 应用程序中使用 Gin 来进行 DI 登录屏幕集成到完整的应用程序窗口中 用户登录后 我想将用户对象注入到我创建的其他类 例如 GUI Presenters 中 因此我相信存在某种运行时依赖性
  • 获取文本文件中行的字节偏移量?

    我有一个文本文件 例如 one two three four five 我需要获取文件中每一行的偏移量 我如何在 Java 中做到这一点 我搜索了一些 I O 库 如 BufferedReader 和 RandomAccessFile 但我
  • 将 Swing 集成到简单的文本冒险游戏中

    我对 Java 中的一些中级概念相当陌生 最近 我制作了一款名为 DazzleQuest 的文本冒险游戏 它完全在开发者控制台 终端中运行 它涉及到我的朋友作为角色 所以我想向他们展示它 并通过将命令行的功能和控制台的输出转移到一个简单的
  • rmi类找不到异常

    我使用 java rmi 编写了一个简单的项目并导出到可执行 jar 文件 当我尝试运行它时 有时会出现异常 有时会起作用 当我指定 Djava rmi server codebase file serverClasses 时 它似乎没有正
  • JAVA 签名对象 - 没有安装的提供程序支持此密钥:sun.security.rsa.RSAPrivateCrtKeyImpl

    我想使用密钥工具和以下命令创建的一对 RSA 密钥对我创建的文件进行签名 keytool genkeypair alias key keyalg RSA keysize 2048 sigalg SHA256withRSA validity
  • Java TCP Echo 服务器 - 广播

    我有一个简单的回显服务器 我希望当连接的用户向服务器键入任何内容时 所有其他客户端和该客户端都会收到消息 MOD 它现在不会发送给所有客户端 但它应该发送 而且我只是不知道我的代码出了什么问题 所以现在它只会将消息 MOD 发送给发送消息的
  • 具有多个字符串的列表视图

    我正在尝试创建一个包含多个字符串的列表视图 现在我有一个可以实现的功能 while i lt 10 GETS DATA FROM WEBPAGE ETC a DATAFROMWEBPAGE1 b DATAFROMWEBPAGE2 c DAT
  • 在字节数组上进行右位旋转/循环移位的最快方法是什么

    如果我有数组 01101111 11110000 00001111 111 240 15 移位 1 位的结果是 10110111 11111000 00000111 183 248 7 数组大小不固定 移位范围为 1 到 7 含 目前我有以
  • CXF 增加连接池大小而不更改 http.maxConnections

    最近我被要求将 CXF 配置为与我们旧的 XFire 服务相同的参数 这些参数之一是Keep Alive timeout 60 max 20 然而 我做了一些研究 看来 CXF 使用 JVMHttpURLConnection引擎盖下的对象
  • 如何根据受保护的 String doInBackground 方法中 AsyncTask 的结果调用 Toast.makeText() ?

    我从 AsyncTask 中的数据库中获取数据 如果它为空 我想吐司一个警告文本 我在 AsyncTask 中尝试过 但我了解到它不是在工作线程中调用的 这是我的 doInBackground 方法 protected String doI
  • 枚举

    我试图拥有一组扩展通用接口的枚举 例如 interface Fooable void someCommonMethod enum E1 implements Fooable some enumuerations and a definiti
  • 如何在 Android 应用程序退出之前进行一些清理?

    当我的 Android 应用程序终止时 是否有某种 onTerminate 方法可以进行一些清理 我想清除一些 SharedPreferences 我有一个活动 它保持几个数字的运行平均值 并将其存储在 SharedPreference 中
  • fscanf 和 EOF 中的否定扫描集

    我的文件中有一个以逗号分隔的字符串列表 姓名 1 姓名 2 姓名 3 我想跳过所有逗号来阅读这些名字 我写了以下循环 while true if fscanf file my string 1 break 然而 它总是比预期多执行一次 给定
  • AudioQueueNewInput 回调延迟

    无论我提供的缓冲区大小如何 提供给 AudioQueueNewInput 的回调都会以大致相同的时间间隔发生 例如 如果您有 0 05 秒的缓冲区并以 44k 录制 则回调将在大约 0 09 秒时首次调用 然后在 0 001 秒 之后立即发
  • Java Media API:java media api 下载

    我在哪里可以找到javax media jar 文件 在sun站点它下载一个安装程序 有没有可用的java媒体jar 没有 javax media 具体是 jar 文件 该包位于 jmf jar 文件中 您需要运行安装程序并取出 jar 或
  • 确保 MAVEN_HOME 设置正确

    这里是 Java 和 Maven 菜鸟 使用 OSX 10 8 并使用 HomeBrew 安装 Maven 1 如果我说which mvn我会得到这个 usr local bin mvn 2 如果我说echo MAVEN HOME我不会得到

随机推荐

  • html select(下拉)控制asp.net中的选定索引更改事件

    当值更改时 我试图将后端代码放入我的 html 选择控件 下拉列表 中 以触发后端方法 但我找不到该事件 我尝试了这样的方法
  • 从在 gitlab CI 中不起作用的资源读取文件

    我在使用以下命令在 gitlab CI 上运行测试时遇到错误 gradlew clean test 我正在使用测试容器来运行我的测试 https www testcontainers org modules docker compose 这
  • 在Java中将PDF转换为Word [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 Java 可以将 PDF 转换为 Word 吗 我不是在谈论解析 PDF 文档 然后将其再次自定义渲染到 Word 我想要一个可以直接转换它的Jav
  • 在 Visual Studio 设计器中找不到自定义字体的 C# 文件

    我对 C 比较陌生 所以我的 WinForms 项目中几乎有一个包含自定义字体的文件夹 该字体在启动应用程序时工作得非常好 但在 Visual Studio 本身的实际设计器中 无法加载自定义控件 因为我在设计器中使用的路径不同 这是我用来
  • 如何从 png 图像的一行获取 x y 坐标并在闪亮的应用程序中使用它

    这是对此的后续问题在闪亮的应用程序中使用 sliderInput 为区域着色 假设我有这个图像 我如何将 ismirsehregal 的解决方案应用于这张图片 我想我必须把食道的x和y放到代码中 但我不知道如何获取食道的x和y 图中绿色 代
  • 需要一个 API 来检测 iPhone 何时插入

    我正在为 Mac 制作一个应用程序 我需要一个 API 来检测 iPhone 何时插入 谢谢 编辑 具体来说 我需要一个 API 来检测 iPhone 何时插入 Mac 上的 USB 端口 我没有完整的答案 但实现您想要的功能的程序是 US
  • C++:switch 语句在右大括号之前缺少分号

    为了未来读者的利益和我自己的理智 我想绝对清楚地表明 switch没有a的语句default案例 由于涵盖了所有案例 或顺序if elseif else最后的 else 不应执行任何操作 不得省略 并包含对此效果的注释 请参见示例 然而 每
  • 在 Oracle SQL 中处理日期

    我在使用 SQL 方面非常陌生 我尝试做的是仅使用月份和年份选择 waterUsage 和 electrcityUsage 并选择上一年的 waterUsage 和 electrcityUsage 然而 我似乎无法找出使用日期来完成这项工作
  • Swift:iOS 12.2 应用程序启动时崩溃

    更新 Xcode 和 swift 5 后 在 iOS 12 2 上启动模拟器后 我的应用程序在启动时崩溃 但在早期版本的 ios 如 12 0 中 应用程序可以正常工作 我在真实设备 ios 12 0 1 上启动应用程序并且应用程序正常工作
  • UITextView 应该检测链接,但否则应该将触摸传播到下面的视图

    我有一个文本视图 我想在其中检测链接 但是当触摸点处没有链接时 它应该将触摸传播到下面的视图 目前没有 它将包含在表格视图单元格中 如果用户点击链接 它应该进行交互 它可以工作 但是当点击另一个点时 它应该选择表格视图单元格 我需要文本不可
  • 如何使用win32com从word文档中按颜色获取文本?

    我有一个包含几个表格的word文档 每张桌子有两种颜色 黑色和红色 我想按颜色从 Word 文档表中的单元格中获取文本 我找到了一个方法 但我认为效率很低 以下代码从单词表单元格中获取文本 并用它的颜色打印每个单词 import os sy
  • 由于 .NET 运行时中的内部错误,该进程被终止

    我正在使用 WPF 不知何故今天我得到了这个新的崩溃信息 Description The process was terminated due to an internal error in the NET Runtime at IP 6A
  • 阻止 AlertDialog 在单击肯定按钮时关闭

    我正在尝试设置一个自定义 AlertDialog 它有 2 个按钮 取消按钮和肯定按钮 我需要做到这一点 以便单击肯定按钮后 我可以更改文本 而不关闭对话框 大致流程是肯定按钮会显示 发送 单击后它将更改为 发送 然后代码将向我们的服务器发
  • Android - 在外部应用程序中打开pdf

    我的应用程序资产目录中有一个 pdf 文件 我想使用外部应用程序打开该文件 因此编写了我的内容提供程序 我正在尝试使其工作 但没有任何结果 这是代码 内容提供商 package package name import java io Fil
  • Nuget ITfoxtec SAML 和 Angular

    我对 nuget 示例中描述的功能和我的案例 特别是 core 和 Angular 中描述的功能有疑问 我有一个带有 angular4 的前端 所有请求都通过那里 我用它重定向到 Idp 表格 他再次打电话给我 将断言传递给我 如何使用 A
  • 如何将字节数组转换为变体

    如何将字节数组转换为 Variant 我有一个 WebService 应该接收一个字节数组 但它只接受 VARIANT 类型的变量 我想知道如何转换以便将其作为 Web 服务的参数传递 谢谢 根据评论线索 您需要创建一个SAFEARRAY字
  • 当前的 Ruby 方法是通过 super 调用的吗?

    在运行时的方法中 有没有办法知道该方法是否已被调用super在子类中 例如 module SuperDetector def via super what goes here end end class Foo include SuperD
  • 如何使用 ng2-charts 在圆环图上设置切口?

    我需要一些帮助来了解如何使用 ng2 charts 在我的圆环图上设置配置选项 特别是 我想在图表上设置剪切属性 我已经阅读了所有文档图表js and ng2 图表 但遗憾的是没有找到可行的解决方案 控制台抛出的错误是 输入 选项 切口 数
  • std::future 可以比 std::promise 更长久吗?

    铿锵声线程消毒剂在以下代码中报告数据争用 include
  • 如何将 SourceDataLine 的内容写入文件?

    我正在修改一个播放音频数据的应用程序 以将数据写入文件 正如当前实现的那样 字节数组是动态填充的 每次填充时 该缓冲区的内容都会写入 SourceDataLine 中 我基本上想将该缓冲区写入指定格式的文件中 我已读完这个官方教程并遇到了用