Why would apps use Lightning over an on-chain TX? I'm trying to understand software orientated payment use-cases for Lightning payments.

Given a web app that accepted BTC payments charged in Satoshi for a service - watching videos for example; why might it be advantageous to use LN to continually generate new invoices (per second of viewing time), instead of simply timing the overall viewing time and invoicing once at the end via a standard on-chain TX?

The only advantage I see atm is a hedge against on-chain fee prices, by opening a "long running" channel.
I think these are two questions. 

1.) Why charge with lightning in real time instead of once? I guess the main reason would be the convenience for the consumer. It is much nicer if I don't continue to watch the video that I don't have to pay the full price. 

2.) Why using lightning instead of an on chain transaction? I guess the main reason is that on chain transactions are slow and with the higher adoption of bitcoin also more expensive. This means that it will just be cheeper and faster to accept payments via the lightning network which goes in the direction of the guess you made. There is another advantage which is that your lightning channel can be reused over and over again.