I had the same issue but fixed it. All my volumes was set to 100% and still it was very soft.
What you needd to have a look at, is alsamixer. it is a program you have to run in a new terminal window. set the main volume to about 75%. If you set it higher than this you will loose quality. let your amp do the rest.
You can set every thing from there. Gain, bass trebble etc etc etc...
You'll actually get the best audio quality with all the controls at 100% and your amp turned down, as otherwise you are not maximising the SNR ratio of the DAC. With a 24-bit soundcard this should not ever really be a problem but with a 16-bit soundcard this is an issue.
The problem I have had is that the system keeps overwriting my alsamixer settings. I saved a snapshot with alsactl and then wrote a script which runs and reloads the config every 2 seconds. A hack, but I couldn't find any other solution.