The OMEMO killer feature is that it can deal with clients that are offline. Unfortunately it needs access to cryptographic state stored on a server to do that. So it can't be used in a generic way like OTR. In the case of OMEMO it uses a generic XMPP persistent data feature to store that state. So OMEMO causes a requirement for a particular feature enabled on the server ... which is slightly tacky in the XMPP world.