mdlayher / waveform

Go package capable of generating waveform images from audio streams. MIT Licensed.
MIT License
353 stars 28 forks source link

Compute method returns unknown format #13

Closed andrewyang17 closed 3 years ago

andrewyang17 commented 3 years ago

Hi, I'm trying to get []float64 from Compute() method of Waveform, but it returns an error of "audio: unknown format", is there anything that I did wrong?

myAgi := agi.New()
myAgi.Init(nil)

fd, err := syscall.Open("/dev/fd/3", syscall.O_RDWR, 0755)  // open file descriptor
if err != nil {
    myAgi.Verbose(err)
    return
}

buf := make([]byte, 1024)

for {
    n, err := syscall.Read(fd, buf)  // read streaming audio
    if n > 0 {
        br := bytes.NewReader(buf[:n])

        wav, err := waveform.New(br)
        if err != nil {
            myAgi.Verbose(err)
        }

        value, err := wav.Compute()
        if err != nil {
            myAgi.Verbose(err)  // got an error here
        }

        // futher proccesing with value
    }

    if err != nil {
        myAgi.Verbose(err)
        return
    }
}