I agree that there should be a more general input type.  https://github.com/mixxxdj/mixxx/blob/master/src/mixxx.cpp#L289 is the relevant location in the startup code.  The todo is marked for @rryan, but I could work on this myself.