繁体   English   中英

我如何知道我的 WAV 数据在 WAV 文件中从哪里开始,以便我可以在它之前读取 XML?

[英]How do I know where my WAV data starts in a WAV file so that I can read the XML before it?

我有一些来自录音机的 WAV 音频文件,格式有点特殊。 这些文件有一个 header 包含 XML 数据,指示文件的开始和停止时间。 我曾尝试使用 XmlReader,但它在文件开头有一行数据,然后出现错误。

RIFF .. one line of binary data ..

<?xml version="1.0" encoding="utf-16"?>

<FileData>
  <StartTime>2019-09-16 15:27:35</StartTime>
  <StopTime>2019-09-16 15:28:32</StopTime>
</FileData>

...audio data ...

我正在构建一个小程序,它将能够从文件 header 中读取 XML 数据,然后整理出开始时间并将其设为我可以在程序中用作值的字符串。 例如,我稍后会在程序中将文件重命名为开始时间。 正如我所说,这些文件是 WAV,但首先在文件中添加了这个特殊的 XML 数据。

您的WAV 数据应以字节0x52 0x49 0x46 0x46 ( "RIFF" ) 开头。 因此,首先读取文件并查找0xA OR 0xD ,然后是上面的 4 个字节。 那应该是您的 WAV 数据的开始。 根据您的描述,WAV 数据开始之前的所有内容都应该是 XML 字符串。 您可以阅读它并将其加载到XmlDocumentXmlReader - 无论 API 最适合您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM