code: func (d *Decoder) DecodeInto(in []byte, buffer []float32) ([]float32, error) {
  	if !d.HeadersRead() {
  		return nil, errors.New("vorbis: missing headers")
  	}
  	if len(buffer) < d.BufferSize() {
  		return nil, errors.New("vorbis: buffer too short")
  	}
  	return d.decodePacket(newBitReader(in), buffer)
  }
docs: // DecodeInto decodes a packet and stores the result in the given buffer.
  // The size of the buffer must be at least BufferSize().
  // The method will always return a slice of the buffer or nil.