• ours@lemmy.world
    link
    fedilink
    English
    arrow-up
    123
    arrow-down
    3
    ·
    7 months ago

    This must cost YouTube a fortune doing additional processing and reduced flexibility. They are going to hurt themselves and blockers will find a way.

    • Etterra@lemmy.world
      link
      fedilink
      English
      arrow-up
      49
      arrow-down
      4
      ·
      7 months ago

      There’s already extensions that somehow skip sponsorship sections, so it won’t even take that long.

      • daddy32@lemmy.world
        link
        fedilink
        English
        arrow-up
        85
        ·
        7 months ago

        That’s “crowdsourced”, i.e. manually done by volunteers on per-video basis.

        • AeroLemming@lemm.ee
          link
          fedilink
          English
          arrow-up
          9
          ·
          7 months ago

          It’s illegal to not identify an ad as an ad (unless you’re a movie maker, but that’s a different topic). All ad blockers need to do is read that indicator. That might not be super simple, but I have faith in the abilities of the brilliant people behind many ad-blocking technologies.

      • Björn Tantau@swg-empire.de
        link
        fedilink
        English
        arrow-up
        22
        ·
        7 months ago

        That’s actually hurt by this because it uses timestamps supplied by users to work. But now they are off because the ads are of variable length. We can just hope that YouTube keeps the ability to link to a specific timestamp because then it has to calculate the difference and that can be used by Sponsorblock and adblockers alike.

        • Veticia@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          But then those ads either need to be skippable or not skippable with some kind of metadata which can be used against it by injected scripts.

      • Thorry84@feddit.nl
        link
        fedilink
        English
        arrow-up
        11
        ·
        7 months ago

        The problem is those blocking extensions are based on timestamps. Those timestamps are added by the users, it’s a crowdsourced thing. But the ads a single user will see differ from what another user will see. It’s likely the length of the ads is different, which makes the whole timestamp thing a no go.

        Along with the timestamp, there needs to be a way to detect where the actual video begins. That way at least an offset can be applied and timestamps maintained, but it would introduce a certain level of error.

        The next issue would be to then advance the video to the place where the actual video begins. This can be very hard, as it would need to include some way of recognizing the right frame in the buffer. One requirement is that the starting frame is actually in the buffer (with ads more than a few seconds, this isn’t guaranteed). The add-on has access to this buffer (depending on the platform, this isn’t guaranteed). And there’s a reliable way to recognize the right frame, given the different encoding en quality setups.

        And this needs to be done cheap, so with as little as infrastructure as possible. A database of timestamps is very small and crowdsourcing those timestamps is relatively easy. But recognizing frames requires more data to be stored and crowdsourcing the right frame is a lot harder than a timestamp. If the infrastructure ends up being complex and big, someone needs to pay for that. I don’t know if donations alone would cut it. So you would need to play ads, which is exactly what you intend on not doing.

        I’m sure the very smart and creative people working on these things will find a way. But it won’t be easy, so I don’t expect a solution very soon.

        • AeroLemming@lemm.ee
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          You need more data to recognize frames, but not a lot more data. A hash for each quality setting would be sufficient as long as they don’t start fuzzing the videos, which would be very expensive on their part.

    • Max-P@lemmy.max-p.me
      link
      fedilink
      English
      arrow-up
      41
      ·
      7 months ago

      Not really. They can precompute those and inject it in an MP4 file so long as the settings match and it’s inserted right before an i-frame so that it doesn’t corrupt b-frames. They already reencode everything with their preferred settings, so they only need to encode the ads for those same settings they already do. Just needs to be spliced seamlessly.

      But YouTube uses DASH anyway, it’s like HLS, the stream is served in individual small chunks so it’s even easier because they just need to add chunks of ads where they can add mismatched video formats, for the same reason it’s able to seamlessly adjust the quality without any audio glitches.

      Ad blockers will find a way.

      • ours@lemmy.world
        link
        fedilink
        English
        arrow-up
        14
        arrow-down
        1
        ·
        7 months ago

        Re-encoding is one thing, but ads are more or less supposed to be dynamic based on user location and likely some other data to target them.

        Offloading that to the client made a lot of sense but now they have to do this server-side, they have very smart people working on making this as efficient as possible using tricks you’ve mentioned and more but it is still more effort than before. All for something that will likely be circumvented eventually.

        • 4am@lemm.ee
          link
          fedilink
          English
          arrow-up
          8
          ·
          7 months ago

          All of that targeting data lives on Google’s servers already. Your computer isn’t trying to figure out who you are and what you like each ad play, Google already knows who you are when your browser makes a request for a video. Everything you are talking about is already server-side.

          • ours@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            7 months ago

            The data is but the client gets the specific bits from a CDN. Now they need a server to stitch these server side and stream it to you.

    • scarabic@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 months ago

      Every bit of effort and resourcing they spend on this returns revenue directly. Which is more than they can probably say for a lot of things they do. And they’re smart enough to know that they can’t eliminate blocking, just make it harder and harder so that fewer and fewer people do it.