handle multiple media types