Jeff,
On a serial interface, you only need to put QOS on the outbound traffic. We have found something like the following to work well:
class-map match-all VoIP
match access-group 100
class-map match-all Video
match access-group 101
!
!
policy-map QOS-T1
class VoIP
priority 528
class Video
bandwidth 400
class class-default
fair-queue
!
access-list 100 permit ip any any dscp ef
access-list 100 permit ip any any precedence critical
access-list 101 permit ip any any dscp af41
access-list 101 permit ip any any precedence flash-override
Put the command "service-policy output QOS-T1" on the serial interfaces and set your bandwidth commands appropriately for the compression type you are using and the number of simultaneous calls. You may also want to look at classifying your call control traffic as well, although not as high as the actual voice traffic.
You'll want to use WRED on your ethernet side of the router, which is enabled through the use of the random-detect command.
Finally, pay close attention to the revision of IOS you are using. The config I showed is considered class-based weighted fair queuing (CBWFQ) and is only supported on newer code.
Hope this helps.