use promise in media
Merge remote-tracking branch 'origin/release-147' into release-147