java中字节数组到短数组然后再返回

2023-12-08

我在获取存储在字节数组中的音频数据、将其转换为大端短数组、对其进行编码,然后将其更改回字节数组时遇到一些问题。这是我所拥有的。原始音频数据存储在audioBytes2中。我使用相同的格式进行解码,并在 cos 函数上加上减号。不幸的是,更改字节和短数据类型是不可协商的。

    short[] audioData = null;
    int nlengthInSamples = audioBytes2.length / 2;
    audioData = new short[nlengthInSamples];

    for (int i = 0; i < nlengthInSamples; i++) {
       short MSB = (short) audioBytes2[2*i+1];
       short LSB = (short) audioBytes2[2*i];
       audioData[i] = (short) (MSB << 8 | (255 & LSB));
    }

    int i = 0;
    while (i < audioData.length) {
        audioData[i] = (short)(audioData[i] + (short)5*Math.cos(2*Math.PI*i/(((Number)EncodeBox.getValue()).intValue())));
        i++;
    }

    short x = 0;
    i = 0;
    while (i < audioData.length) {
        x = audioData[i];
        audioBytes2[2*i+1] = (byte)(x >>> 0);
        audioBytes2[2*i] = (byte)(x >>> 8);
        i++;
    }

我已经做了我能想到的一切来使其工作,但我最接近的是让它工作所有其他编码/解码,我不知道为什么。谢谢你的帮助。


我还建议您尝试 ByteBuffer。

byte[] bytes = {};
short[] shorts = new short[bytes.length/2];
// to turn bytes to shorts as either big endian or little endian. 
ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).asShortBuffer().get(shorts);

// to turn shorts back to bytes.
byte[] bytes2 = new byte[shortsA.length * 2];
ByteBuffer.wrap(bytes2).order(ByteOrder.LITTLE_ENDIAN).asShortBuffer().put(shortsA);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中字节数组到短数组然后再返回 的相关文章

  • 如何在数据库中对 (Java) 枚举进行建模(使用 SQL92)

    您好 我正在使用名为 性别 的列对实体进行建模 在应用程序代码中 性别应该是一个 Java 枚举类型 有 2 个值 男性和女性 知道作为数据类型的枚举不是通用 SQL 语言 92 的一部分 您将如何建模它 数据模型必须是可移植的 以便由多个
  • java中队列的实现

    在 Java 中实现队列是一个非常常见的面试问题 我在网上冲浪 看到了许多实现 他们做了一些奇特的事情 比如实现队列接口和编写自己的addLast and removeFirst 方法 我的问题是我不能使用LinkedList 类并使用其预
  • 代码编译期间遇到警告消息“使用或覆盖已弃用的 API”

    我编译了我的程序并收到以下错误 我该如何解决呢 Note ClientThreadClients java uses or overrides a deprecated API Note Recompile with Xlint depre
  • 更改 JTextPane 的大小

    我是Java新手 刚刚在StackOverflow中找到了这段代码 ResizeTextArea https stackoverflow com questions 9370561 enabling scroll bars when jte
  • JavaFx 中装饰且不可移动的舞台

    我想在 JavaFx 中创建一个装饰舞台 它也将不可移动 我正在从另一个控制器类创建这个阶段 我能够创造和展示舞台 但它是自由移动的 我怎样才能创建这个 非常感谢帮助和建议 我把打开新关卡的方法贴出来 private void addRec
  • 如何使用 Spring MVC 和 Thymeleaf 添加静态文件

    我的问题是如何添加 CSS 和图像文件等静态文件 以便我可以使用它们 我正在使用 Spring MVC 和 Thymeleaf 我查看了有关此主题的各种帖子 但它们对我没有帮助 所以我才来问 根据这些帖子 我将 CSS 和图像文件放在res
  • 如何在命令提示符中检查 JAVA_OPTS 值?

    我们的应用程序部署 JBoss 服务器然后抛出错误 PermGen space 然后在 jboss bat 和配置文件中设置 permgen 变量中的 java OPTS JAVA OPTs 中是否有值 assige 如何检查 如何在命令提
  • 如何将txt文件添加到你的android项目中? [复制]

    这个问题在这里已经有答案了 我的Android studio版本是1 5 1 显然这个 never 版本没有 txt 文件的 asset 文件夹 您打算如何将这些文件包含到您的项目中 以及如何进一步使用您内部的应用程序 谢谢你的建议 Pro
  • Kerberos 缓存票证

    我使用的是 Windows 7 64 位 我创建了一个简单的应用程序来对实现 PrivilegedAction 的类的 run 方法中的文件进行计数 以下是我的 jaas conf 文件 CountFiles com sun securit
  • Java 类:匿名类、嵌套类、私有类

    有人能解释一下Java中匿名类 嵌套类和私有类之间的区别吗 我想知道与每个相关的运行时成本以及每个编译器的方法 这样我就可以掌握哪个最适合用于例如性能 编译器优化的潜力 内存使用以及其他 Java 编码人员的普遍可接受性 我所说的匿名类是指
  • 在多模块项目中访问绑定适配器

    我有一个多模块项目 其中应用程序模块包含我的绑定适配器 而我的功能模块取决于我的应用程序模块 因为它是动态功能模块 应用程序 包含绑定适配器 gt 动态功能模块 存在布局的地方 我在所有模块中启用了数据绑定和 kapt 我无法成功构建应用程
  • 膨胀类片段 InflateException 二进制 XML 文件时出错

    我正在使用 Material Design 和 NavigationDrawer 布局等设计我的第一个应用程序 但我遇到了一个问题 该应用程序非常简单 它只显示文本 并且基于 Android Studio 中提供的模板 尝试启动我的应用程序
  • 在 netBeans 中运行程序时,字体看起来非常奇怪

    我在我的新 MacBook M1 上设置了 netBeans 和 SceneBuilder 除了运行程序时的字体外 一切正常 它看起来像这样 我不知道为什么 按钮应显示 Click me 标签应显示 Hello 我收到的错误消息是 M rz
  • setKeyListener 将覆盖 setInputType 并更改键盘

    大家好 我在两个设备之间遇到问题 在实践中使用InputType和KeyListener我正在操纵一个EditText让它从数字键盘接收逗号和数字 有关更多背景信息 请检查我之前的question https stackoverflow c
  • 如何使用 Hibernate Session.doWork(...) 进行保存点/嵌套事务?

    我正在使用 JavaEE JPA 托管事务与 Oracle DB 和 Hibernate 并且需要实现某种嵌套事务 据我所知 此类事情不受开箱即用的支持 但我应该能够为此目的使用保存点 正如建议的https stackoverflow co
  • 包含当月所有日期的 PHP 数组 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在尝试并且仍然想知道如何获得一个
  • 无法在 BlackBerry Playbook 上设置音量

    我在更改黑莓游戏书的音量时遇到问题 首先 我将 Android 应用程序重新打包到 Palybook 应用程序 我需要使用搜索栏更改黑莓剧本的音量 并在搜索监听器中设置音频管理器音量 这是代码 audioManager AudioManag
  • 当我在 Java 中输入 IP 时无法连接到我的服务器

    好的 我正在尝试学习 Java 客户端 服务器的内容 并且正在浏览教程代码 如下所示 当我将 localhost 更改为我的 IP 时 它会停止工作 请帮忙 编辑 127 0 0 1 似乎也可以工作 但不是我的真实IP Copyright
  • 在多线程环境中,Collections.sort 方法有时会抛出 ConcurrentModificationException。列表没有进行结构性修改

    package CollectionsTS import java util ArrayList import java util Collections import java util HashSet import java util
  • RecyclerView 不调用 onCreateViewHolder 或 onBindView

    没有收到任何错误 所有数据似乎都有效 由于某种原因 没有调用与视图相关的方法 我已确定以下事项 getItemCount 是唯一被调用的适配器方法 并且返回一个正整数值 我知道这将是你们将要查看的区域 构造函数正在被调用 成员变量有效 Pa

随机推荐

  • 如何在 Android Studio 0.5.1 上导入模块?

    我刚刚将 Android Studio 更新到 0 5 1 我需要将 Facebook SDK 导入到我的项目中 下列的脸书的指南 我应该 使用 Command 向下箭头打开 项目结构 对话框 在 OS X 上 选择左侧导航栏下的模块 单击
  • Android:http登录没有达到预期的效果

    我似乎无法让登录页面正常工作 它一直告诉我我的用户名 密码不正确 而我显然知道它们不正确 所以我开始调试并弹出 log v 我发现了一些有趣的东西 查找显示 class LogMeIn extends AsyncTask
  • MySQL统计最近7天的数据

    我有以下架构 表票 Field Type Null Key Default Extra id int 10 NO PRI NULL auto increme
  • 如何使用 cbt 从 BigTable 中删除带有前缀键的行范围

    看起来我可以用 cbt 读取带有前缀键的行 cbt project someproject instance someinstance read sometable prefix abc 但是如何使用 cbt 命令删除上述命令选择的那些行呢
  • JSONObject 包含转义字符

    我正在构建一个模拟器来将 JSON 数据发布到我正在运行的服务 JSON 应如下所示 sensor id SENSOR1 name SENSOR type Temperature value 100 12 lastDateValue Dat
  • Bash 测试运算符 [[ ... -eq ... ]] 中的错误或功能?

    有人可以解释一下以下之间的区别 VAR 1xyz VAR eq VAR 2 gt dev null echo Yes VAR VAR is an integer echo No VAR VAR is NOT an integer No VA
  • Jwt 策略后 ExecutionContext 中用户丢失

    目前我已经实现了 jwt 防护 它工作得很好 使用 Passport jwt 正在验证颁发的令牌 我可以通过 Request 通过 req user 查看用户 在实现基于角色的身份验证作为已经工作的附加组件后出现问题JWT 的守卫 我遵循了
  • 将 ERRORLEVEL 重置为零的最简单方法是什么?

    我有一个为 C 项目运行一些命令的构建后事件 最后一个命令有时会导致 ERRORLEVEL 值不等于 0 然后构建失败 我想附加一行额外的命令以始终将 ERRORLEVEL 值设置为零 最方便的方法是什么 如果你使用exit b 0你可以返
  • 在多个子图行中绘制条形图

    我有一个简单的长格式数据集 我想从中生成条形图 数据框如下所示 data Year 2019 2019 2019 2020 2020 2020 2021 2021 2021 Month diff 0 1 2 0 1 2 0 1 2 data
  • 在开发阶段在 Android 上测试 google 登录

    Google 登录始终返回未登录状态 使用 Android studio 在设备上推送应用程序时总是失败 但是 当我安装签名的应用程序时 它可以工作 当我们仍在开发应用程序时 如何使谷歌登录正常工作 在开发时 您可能正在使用调试密钥存储 获
  • h2o.glm lambda 搜索似乎没有迭代所有 lambda

    请考虑以下基本的可重现示例 library h2o h2o init data iris iris hex as h2o iris iris hex mod h2o glm y Sepal Length x setdiff colnames
  • ASP.NET单元测试Windows7/IIS7

    今天花了几个小时尝试针对 ASP NET 项目编写一些单元测试 这是 Visual Studio 2010 将 Windows 7 企业版与 IIS7 结合使用 我采取的步骤是 向解决方案添加了新的测试项目 打开一个类文件作为网站的一部分
  • 如何高效、快速地用 JButton 完全填充 JFrame?

    因此 我正在努力用 Java 重新创建扫雷游戏 现在我需要将 JFrame 上的所有按钮放置在网格中 我的代码如下 import javax swing import java util ArrayList import java awt
  • 如何编辑Streamlit AgGrid行的单元格?

    我已经创建了AgGrid通过从 csv 文件加载数据 我通过外部按钮逐行添加行 但是当我尝试编辑我添加的行时 它消失了 如果您能帮助我找出错误所在 我将不胜感激 代码如下 import pandas as pd import streaml
  • React 事件处理函数无需使用 bind() 即可工作

    我正在学习 React 并且遇到了事件处理程序 在React中 建议将函数绑定到this 然后将其用作事件处理程序 但是 我没有绑定它 但仍然得到所需的输出 下面是我的代码 import React Component from react
  • 使用 Java 卡钱包

    我是一个java卡初学者 从示例中复制了下面的代码 不知何故 我已经知道部分代码是如何工作的 但还是对下面的事情感到困惑 ownerpin 的工作方式以及设置 pin 的方式和时间 如何进行信用和借记工作 我了解平衡是如何运作的 这方面还不
  • 如何在一个应用程序中获取多个图标来启动不同的活动?

    我有一个包含两个活动的应用程序 我希望能够在启动器中显示两个图标 每个图标在应用程序中启动相应的活动 具体来说 我想要一个图标来启动我的主应用程序 另一个图标来启动我的设置活动 这可能吗 这是我到目前为止所尝试过的
  • 复制到输出目录复制文件夹结构但只想复制文件

    我有一个 VS2008 我想将某些文件从目录复制到我的 bin 文件夹 我已经设置了文件 位于 common browserhawk 到 复制到输出目录 但是 它也会复制文件夹结构 文件被复制到 bin common browserhawk
  • 如何对重复标签进行分组,以便在 Chart.js 中创建没有重复的标签

    我似乎无法解决这个问题 我的唱片公司给我发回列表 在我的例子中 我希望只有 HOME40 HOME60 和 PRO 作为标签 但不幸的是它返回了它们的串联 我还想改变颜色 如果产品是HOME40那么颜色必须是绿色 如果是PRO那么颜色必须是
  • java中字节数组到短数组然后再返回

    我在获取存储在字节数组中的音频数据 将其转换为大端短数组 对其进行编码 然后将其更改回字节数组时遇到一些问题 这是我所拥有的 原始音频数据存储在audioBytes2中 我使用相同的格式进行解码 并在 cos 函数上加上减号 不幸的是 更改