I have used a program called iPhoto Library Manager (
http://www.fatcatsoftware.com/iplm/) for years and it has worked like a charm. The program handles all of the permission/subfolder aspects transparently. Our iPhoto library is stored in my wife's default location, but I have seamless read-write access to it. When I open iPhoto, I see the same thing she does, and I have complete control.
To answer your question about music, there are a couple of approaches. If you turn on Sharing in iTunes, and your wife's iTunes is set to look for shared libraries, she'll be able to have complete access to play anything in your iTunes library (as long as you have iTunes open). I believe she also has rights to copy files from your iTunes library into hers.
That's great for playback on a Mac, but what you can't do is sync an iPod/iPad/iPhone with someone else's shared library, so here's how I do it:
1) My iTunes library is our "primary" library, located in my Public folder (where other users have read-access).
2) In my wife's iTunes, library, I hit keystroke Apple-O to add content to her library, and navigated over to my iTunes Library in my public folder to select it. Once I did this, her iTunes library looked like mine.
3) The key thing is that under her iTunes Advanced Preferences, I ensure that "Copy content to iTunes library" is deselected. Otherwise, it would make a copy of my entire library on her side, and that would chew up a ton of disk space.
Note that I don't think it's entirely necessary to have the iTunes library in the Public folder. It could stay in the default location as long as you changes your music folder to have read-access by other users. I moved mine before I knew any better.
When I add new content to my library that my wife wants, we hit Apple-O from her side and add it to her library. This setup is kludgy, but a) both users can sync the music to iDevices and b) it doesn't require having two copies of everything. Note that unlike the iPhoto Library Manager solution, this is a static thing. You have to manually update the "satellite" library to keep it up to date with the main one.
I'm not in front of my Mac, so some of my notations may not be completely accurate.
Good Luck!