Ultimately, all we care about is getting from byte -> Copycat data API. The current split of the interfaces makes it easy to reuse existing serializers, but you still have to implement a new class.
It will be simpler, both conceptually and by requiring fewer configs, to combine both these steps into a single API. This also allows certain formats to preserve more information across these (e.g. for primitive types in schema, which otherwise could lose certain schema information).