Neatbo.

修复 WAV 长度字段

仅修补已明确确认最终 PCM 数据的 RIFF 与 data 长度,保留所有现有采样及前置字节。

浏览器本地处理输入未完成长度的经典 PCM RIFF/WAVE输出原大小修复 WAV 与完整字节保留 JSON单个文件最多 100 MiB · 最多 1 个
  1. 1添加输入
  2. 2调整设置
  3. 3获取结果

工具输入和文件在当前浏览器处理,不会上传。

输入内容

切换工具时在当前标签页临时保留输入。刷新或关闭后清除,较大的结果可能需要重新生成。

⌘ / Ctrl + Enter 运行

或将文件拖到这里

文件留在当前设备,原始文件不会被覆盖。

单个文件最多 100 MiB · 最多 1 个

    处理选项

    先填写标记为必填的选项,其余可保留默认值。

    正在准备处理工具…

    开始之前

    选择未正常写完长度的经典 PCM WAV,明确确认首个 data 块为最终数据,且其余字节均为完整音频帧。仅修补两个长度字段,下载保持原大小的 WAV 和完整字节保留报告。

    如何使用

    1. 保留原录音,确认它符合明确支持的经典 PCM 格式。
    2. 选择文件,明确确认最终 data 与 EOF 音频;仅在有证据时指定末尾零填充。
    3. 运行修复,对照原件/产物长度、PCM SHA256 及两个修补跨度。
    4. 下载 repaired.wav 和完整 JSON,在实际目标播放器检查录音。

    支持范围与限制

    仅一份原文件,最多 100 MiB;原文件名最多 512 个 UTF-16 单元。最多 1,000 个前置块,包含 fmt;未知前置块及原填充字节按不透明原件保留。

    仅小端经典 RIFF/WAVE:tag 1 整数 PCM,8/16/24/32 位、1–8 声道、采样率 1–384,000 Hz。首个 data 前须恰有一个 fmt,长度为 16,或长度 18 且 cbSize=0;帧对齐及字节率须与这些字段一致。

    “最终数据”确认默认关闭,必须由用户明确声明,工具不会自动检测。帧对齐的尾部元数据可能像音频,无法在这里区分;缺失采样、错误采样率、空数据及不完整帧无法修复。

    “最后一个零为填充”默认关闭,仅当奇数长度 PCM 后确有一个末尾零填充时选择。不选择时末尾零仍是音频字节;工具不猜测它是采样还是填充。

    仅修补 RIFF 偏移 4 和真实 data 长度位置的两个 uint32LE。WAV 长度、前置块、PCM 和原填充字节均保持恒等。完整 JSON 记录原名、各 SHA256、格式、帧数、时长、全部前置块及两个修补跨度。

    完整 WAV 加 JSON 最多 102 MiB。原文件 100 MiB 和有界报告已使该输出上限受支配,不存在独立可达的受支持 102 MiB 输出。预览展示前 200 个前置块,每格最多 2,000 个 UTF-16 单元;完整记录在 JSON。

    拒绝 RIFX/RF64/BW64、扩展/浮点/压缩音频及非法块链。不解码、重建、播放、访问网络,也不保证所有播放器或 Windows 兼容。原名称及元数据保留,不是匿名化。

    操作示例

    示例输入

    unfinished.wav:86 字节、两个前置块、48,000 Hz 的六个双声道 16 位帧,原两长度均为零。
    示例参数
    {"confirmFinalData":true,"trailingZeroPad":false}

    示例输出

    RIFF 长度 78,data 长度 24;六帧 / 0.000125 秒;仅指定两字段变化。

    出现问题时

    拒绝时没有下载产物。修正明确的填充选择、格式或命名字节/结构问题后重跑原件;取消丢弃产物,相同选定字节可在新 Worker 恢复。

    常见问题

    能判断 data 之后帧对齐的内容是否为元数据吗?

    不能。用户必须确认首个 data 为最终块,其后字节均为完整 PCM。对齐的 LIST 等尾部元数据可能像采样;没有自动元数据检测或录音有效性承诺。

    会恢复丢失音频或修改采样吗?

    不会。仅修补两个长度字段,保留所有采样、前置块和填充字节。缺失或归零采样、错误采样率及不完整帧需另行恢复。

    为何末尾零填充必须明确选择?

    8 位零也可以是实际采样。关闭时保留为音频;开启时仅将奇数 PCM 后实际存在的一个末尾零作为填充。文件总长度不变。

    文档与延伸阅读

    相关工具