I have cable and subscribe to MLB.tv and they still blackout games because (I think) some local station bought exclusive broadcast rights.
MLB.tv is interesting because they generally don't have commercials. Oddly, I wish they did. When the broadcast pauses for commercials, my screen basically goes blank and the TV gets silent. I wish they would just switch to a whole stadium camera with crowd noise.
Only they don't. If you think about it...
whenever you want to stream from the web... you generally have to enter your TV provider credentials. So if you don't have cable, you can't stream a lot of those games.