Go - int16 切片到字节切片

Go - int16 slice to byte slice

我正在编写一个与 libalsa 交互的 Go 程序。我的 PCM 数据存储在 []int16 切片中,但要调用 libalsa,我需要将其存储在 []byte 切片中。

如何将 []int16 切片转换为 []byte 来完成此操作?

你可以试试这个:

package main

import "fmt"
import "bytes"
import "encoding/binary"

func main() {
    nums := [6]int16{2, 3, 5, 7, 11, 13}
    buf := new(bytes.Buffer)
    err := binary.Write(buf, binary.LittleEndian, nums)
    if(err==nil) {
        fmt.Printf("% x", buf.Bytes()) 
    }

}