Because it’s actually really hard to achieve technically. When ads are served outside the stream you can easily serve different ads to different viewers based on their profiles. When the ads are baked into the stream you can either
A) Create a whole bunch of different copies of the video asset with different ads baked in and then rotate these on a regular basis. Which would be expensive to update and store and limit the range of adverts that could be served to a particular user.
B) Dynamically create a stream on the users request, which while possible means standard CDN caching isn’t going to work so there’s a distribution challenge.
Or some other alternative they’ve come up with. I’d be really interest to know what their approach is here.
Honestly no idea why they didn’t just do that to begin with.
Because it’s actually really hard to achieve technically. When ads are served outside the stream you can easily serve different ads to different viewers based on their profiles. When the ads are baked into the stream you can either
A) Create a whole bunch of different copies of the video asset with different ads baked in and then rotate these on a regular basis. Which would be expensive to update and store and limit the range of adverts that could be served to a particular user.
B) Dynamically create a stream on the users request, which while possible means standard CDN caching isn’t going to work so there’s a distribution challenge.
Or some other alternative they’ve come up with. I’d be really interest to know what their approach is here.
They’re probably inserting the ads “on the fly”. It can be finicky depending on codec, but doable.
It’s easier and less resource hungry to deliver targeted ads like that.