Pull upload logic up from DurationedMedia -> Media