I suppose your mangle rule number 1 (the second rule) should read:
1 chain=prerouting connection-mark=voip_conn action=mark-packet
(i.e. marking the packets belonging to the voip connections, as you did further down with the other protocols).
If you can identify all VoIP traffic just by your source address, depends on your setup - but you'll know what you do.
Apart from that things look good for starters.
You could save one mangle rule, though: To mark the "rest", I'd say there's no need to connection-mark first - just mark ALL remaining packets directly.
So, replace rules 6 and 7 with just one rule:
6 chain=prerouting action=mark-packet new-packet-mark=other