Audio BigEndian/LittleEndian和波表示

Audio BigEndian/LittleEndian和波表示,audio,Audio,有人能告诉我为什么big-endian/little-endian会影响音频信号的波形表示吗 音频信号可以看作是一个流。如果你用BigEndian编写而用LittleEndian读取,你在读取流时会收到垃圾。例如,如果你在音频数据中使用16位样本,BigEndian和LittleEndian处理器会将它们以不同的方式存储在内存中(或从音频文件读写时) e、 g 十六进制数0x1234表示的样本在大端结构中存储为0x12 0x34,但在小端结构中存储为0x34 0x12。类比: 如果一个陌生人在网

有人能告诉我为什么big-endian/little-endian会影响音频信号的波形表示吗

音频信号可以看作是一个流。如果你用BigEndian编写而用LittleEndian读取,你在读取流时会收到垃圾。

例如,如果你在音频数据中使用16位样本,BigEndian和LittleEndian处理器会将它们以不同的方式存储在内存中(或从音频文件读写时)

e、 g

十六进制数0x1234表示的样本在大端结构中存储为
0x12 0x34
,但在小端结构中存储为
0x34 0x12

类比:

如果一个陌生人在网上告诉你日期“10/11”,那么你不能确定他们是指11月10日还是10月11日,所以你需要知道这个人使用了什么格式来获得正确的日期


二进制数据也是如此。一些计算机/库/模块坚持两个字节0和1(按顺序)表示256的16位值,其他计算机/库/模块则认为它是值1。因此,当您与某人(麦克风、音频数据文件、互联网流)交谈时,您需要知道他们如何表示值,以便将其转换为您的计算机使用的表示形式。

那么,我是否认为应该先进行转换?从BigEndian到LittleEndian和viceversa?取决于文件格式,您可能必须。。。请注意,您应该使用标准的跨平台转换函数(
ntohl
,例如,在C中,Java肯定有类似的方法)。