AiffData.java 文件源码

java
阅读 22 收藏 0 点赞 0 评论 0

项目:code404 作者:
/**
 * Convert the audio bytes into the stream
 * 
 * @param format The audio format being decoded
 * @param audio_bytes The audio byts
 * @param two_bytes_data True if we using double byte data
 * @return The byte bufer of data
 */
private static ByteBuffer convertAudioBytes(AudioFormat format, byte[] audio_bytes, boolean two_bytes_data) {
    ByteBuffer dest = ByteBuffer.allocateDirect(audio_bytes.length);
    dest.order(ByteOrder.nativeOrder());
    ByteBuffer src = ByteBuffer.wrap(audio_bytes);
    src.order(ByteOrder.BIG_ENDIAN);
    if (two_bytes_data) {
        ShortBuffer dest_short = dest.asShortBuffer();
        ShortBuffer src_short = src.asShortBuffer();
        while (src_short.hasRemaining())
            dest_short.put(src_short.get());
    } else {
        while (src.hasRemaining()) {
            byte b = src.get();
            if (format.getEncoding() == Encoding.PCM_SIGNED) {
                b = (byte) (b + 127);
            }
            dest.put(b);
        }
    }
    dest.rewind();
    return dest;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号