我正在使用java,尝试使用AudioFormat类。我有以下代码:
AudioFormat Baseformat = input.getFormat();
AudioFormat Finalformat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED,
Baseformat.getSampleRate(),
16, Baseformat.getChannels(), Baseformat.getChannels()*2,
Baseformat.getSampleRate(),false);
AudioInputStream stream1 = AudioSystem.getAudioInputStream(
Finalformat, input);
numBytesRead = stream1.read(audioBytes)
其中audioBytes是存储数据字节的数组。我需要知道这些字节是如何组织的。在Finalformat中,我指定PCM enconding,立体声和每个样本16位。这意味着在给定的时刻有2个样本(每个通道1个),每个样本有2个字节。这些字节是如何排列的?
如果audioBytes = AABBCCDD,哪个字节属于每个通道,每个样本的字节顺序是多少?我正在寻找的解释的一个例子是:AA BB是左声道; AA是低位字节。
感谢所有阅读此内容的人。
答案 0 :(得分:2)
AudioFormat构造函数中的最后一个false
表示很少的字节序字节顺序(true将是大端字节序)。使用您的代码和AA BB示例,AA将是低位字节。如果将true传递给构造函数,则BB将是低位字节。