Add EncodeOpts to specify options when encoding
Add DecoderOpts to specify options when decoding