func NewEncoder(w io.Writer) *Encoder {
	e := &Encoder{
		lgf:          C.lame_init(),
		output:       bufio.NewWriter(w),
		initialized:  false,
		closed:       false,
		inremainder:  nil,
		outremainder: nil,
	}
	runtime.SetFinalizer(e, finalize)
	return e
}
NewEncoder creates a new encoder
package lame
import "C"
import (
	"bufio"
	"io"
	"runtime"
	"unsafe"
)
type Encoder struct {
	lgf          lameglobal
	output       *bufio.Writer
	closed       bool
	initialized  bool
	inremainder  []byte
	outremainder []byte
}