If it still works for notifications then it's probably software.
I realise this is obvious, but have you checked your sound settings? It is possible to set different volumes for notifications, calls and music, so possibly these have got messed up - a couple of them set to zero rather than the whole phone put into silent mode (which you would see in the notification bar).
There are also volume control apps such as Audiomanager which give finer control over volume settings, so it may be worth installing one as a test.
If that isn't it, it might be worth registering so that you can post in the main forum, which will make it easier to discuss and try out suggestions.
Good luck!