let defaule encode be auto detect