I am in the process of building a website for a DJ. Instead of reinventing the wheel, I thought I would look out there if there are any solution available. My requirements are:

* Ability to have own domain name & custom design
* Section for listening to DJ's song
* Section for photos
* Section for videos
* Usual CMS functionalities for managing static pages (personal bio)
* Self-hosted & PHP is a big plus
* Open source/proprietary free/paid doesn't matter

If you answer with a more generic CMS (i.e. WordPress), could you point out some extensions that would be helpful. I'm also open to web apps that don't fill every requirement, but explicit which of the requirements are not available.