• YouTube is testing server-side ad injection to counter ad blockers, integrating ads directly into videos to make them indistinguishable from the main content.
  • This new method complicates ad blocking, including tools like SponsorBlock, which now face challenges in accurately identifying and skipping sponsored segments.
  • The feature is currently in testing and not widely rolled out, with YouTube encouraging users to subscribe to YouTube Premium for an ad-free experience.
  • @cley_faye
    link
    English
    86 months ago

    Ads should be properly labeled in most market, so it should be trivial to detect what segment is ad and what isn’t. The real question is, what to do, and if the server refuses to serve the remainder of the video before the ads duration, what will it be replaced with.

    • @[email protected]
      link
      fedilink
      English
      46 months ago

      Just catch everything in the background, play the full ad on mute, and when the ad segment is coming up in the stream you are actually watching, switch to the cached copy. Shouldn’t be too hard to program.

      • @[email protected]
        link
        fedilink
        English
        26 months ago

        How about replacing them with something nicer, like just showing “Take a moment to pause…” screen with audio muted/relaxing music background?

    • umami_wasabi
      link
      fedilink
      English
      26 months ago

      I doubt if they will refuse to serve as the stream still need to buffer. That’s the fundemental of streaming.

      Or I missed something?

      • @cley_faye
        link
        English
        36 months ago

        Streaming allow caching a bit ahead, yes. But the “a bit ahead” part does not mean you can get everything; a server could very well decide to not send more than a few seconds of buffer compared to the realtime play. So, if you’re at 00:00:20 in your video and an 30 second ad is present in the video stream, the server could decide to not send anything beyond the 00:00:55 tag until 30 seconds have elapsed, for example.

        It would be very annoying to code server side, and very annoying for people with spotty internet, but it’s very doable.