rename encoder to recorder
add not decodable recorder and decodable encoder