Different media types have different configuration fields that they use. Each such field uses one column in media types table. And already now we have columns that are used exclusively for one of media types, while is left empty for other. The number of unused fields will increase even more, when new media types will be added.
As a solution would be to have separate tables for different media types.