Of the three, I like Austin the best. In fact, it's still my favorite city in Texas. I think living in a few other, less interesting places in Texas gives me an appreciation for what Austin offers that isn't available elsewhere. Plenty of live music whenever you want it. Beautiful hill country access. Nice lake and riverfront areas in which to play/explore. The Austin Record Convention. Nightlife along 6th Street and adjacent areas, South Congress, Guadalupe, etc. Waterloo Records (I really appreciate this store!!).
Houston has very little personality to me, overall. I've got relatives that live there, and friends, and enjoy visiting them, but never really find enough things of interest to do while there. I guess there's the Johnson Space Center, which is nice, but probably not worth repeat visits. And the Natural Science Museum (and attached Butterfly Center) is well done, if you've got time and you're looking for something to do. But I can't imagine either of those things drawing in out of city/state visitors by themselves. Galveston is a 45 min/1 hr drive south, if you want beach.
San Antonio is a nice, colorful city, with a fun downtown area. Good Mexican food to be found all over, plenty of small mom & pop places. The Riverwalk is interesting, despite being touristy. And the Alamo is worth a visit, obviously. Up the road in New Braunfels are the Guadalupe and Comal Rivers, both of which you can tube down, for a nice lazy day.
I guess it depends on what you want to do in your spare time. If it's a variety of live music choices, Austin would be my pick.