Kinomap Trainer is a subscription based iPhone/iPad app (price above is per month) that lets you ride through a whole library of user submitted videos.
By using ANT+, bluetooth, speed and cadence or heart-rate sensors on your bike trainer it projects your position (automatically calibrated by elevation and effort) onto your chosen training video.
You can race against other competitors marked on the map, the current ride POV position or even invite up to three other internet training partners to join you, complete with live chat.
HRM, speed, cadence and times are stored for review, you can upload your own videos to train with for free or you can download videos to use outside of internet coverage.
Settings and screen are easily programmable, post workout feedback is usefully rich and the whole system looks really promising. Unfortunately, the library is currently dominated by short, stop-start or just plain dull user videos that are more likely to frustrate than inspire.
Hopefully the video quality will improve as more users join, but Kinomap could do themselves a massive favour by adding some decent footage rather than solely relying on user generated content.