I am assuming that your application doesnt do this, or you wouldnt be asking.
Since it doesnt, I would use the 802.1q vlans with 802.1p prioritization on your switch…assuming this is supported, and then have the switch map your 802.1p COS to DSCP or TOS. 🙂
Hmmm…There are switches that can map 802.1p COS to DSCP prior to hitting your router.
Unless you can do this at the actual application encapsulating the voip information. I dont know any other way to do this.
Sorry. Let me know if you find a resolution.