However things are a bit different with TV. First, they do lose viewers when the ads become obnoxious, so they avoid that. Users are allowed to leave the room while ads are playing, they are never forced to "click to continue" or wait 20 seconds.
Actually, that's not quite true. Firstly, broadcasters turn up the volume during ad breaks. That way you still hear the ads, even though you're out of the room.
They have a much larger audience too and generate less per viewer than the typical ad-based web site expects to get per reader.
That's completely untrue. Revenue is way higher on TV than web/mobile, when measured on a media consumption basis. Mobile figures are completely in the toilet - is's a factor of 16 difference. Here's a link to KPCB's Mary Meeker's State of the Internet report if you're interested in a more in-depth analysis: http://www.kpcb.com/file/kpcb-internet-trends-2012. Slide 17 is the relevant one.
The problem (as far as I can see it, anyway) is that more and more snake oil is being applied in digital advertising, *trying* to work out your interests, whereas the advertisers overlook the blindingly obvious matter of context.
I'm currently here on slashdot, which means that I'm probably going to be quite receptive to tech advertisements. When I'm reading a cooking blog, I'll probably be quite receptive to food advertisements. But start pushing me food ads on Slashdot, and tech ads on food blogs, and you'll creep me out. I switch interests on a momentary basis, but give you all the clues in the content I'm consuming. The only targeting information you need is to turn global into local. i.e. where in the world I am.
Full disclosure: We're actually building an ad platform, but from the perspective of the developer and the end user. We come from TV and Videogames backgrounds, so are in a somewhat OK position to try to understand and address some of the (many) shortcomings of existing ad solutions.