io: add xcoder interfaces