• thejml@lemm.ee
    link
    fedilink
    English
    arrow-up
    12
    ·
    1 year ago

    Either that or merging the ad into the video stream itself. This would make it un-skippable, but would also be unblockable without stream processing (there are commercial skip options for ffmpeg and similar encoders, so not completely impossible, but much more work and more likely to mark real content as a commercial as well).

    • thingsiplay@kbin.social
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      or merging the ad into the video stream itself. This would make it un-skippable

      That’s not true. Besides the point that people can skip any video content manually anyway, I already use a Firefox addon called “SponsorBlock for YouTube - Skip sponsorships”, which is configurable and works for other sites as well. The skip points are community maintained, but with the help of AI it should be easy to detect ads automatically. The point is, there are already tools to help with skipping video encoded content.

      • lemmyvore@feddit.nl
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        There’s nothing to skip if they overlay small ads while the content is playing.

        On the bright side such small ads may be less annoying than full screen ads.

    • Car@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      19
      ·
      1 year ago

      Thankfully it seems that encoding ads into the video stream is still too expensive for them to implement.

      I’m assuming that asking CDNs to combine individualized ads with content and push the unique streams to hosts does not scale well.

      • jmcs@discuss.tchncs.de
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        If they go back to contextual ads instead of making the NSA look like reasonable people, they could pre-insert them like some podcasts do

      • blindsight@beehaw.org
        link
        fedilink
        arrow-up
        12
        ·
        1 year ago

        Since they target ads demographically and ads change frequently, that would be a mess… The encoding, storage, and tracking would be a Big problem.

        If they go this route, it would only make sense if they build a new video codec that allows for linearly splitting content at key frames so they can concatenate the ads with the video in a single file at runtime.

        Also, couldn’t ad detectors just start playback at the key frames?

        Even if it works, it would still be a Big Deal since re-encoding all of YouTube would be Hard. I guess they could just use the codec for all newly added material. Playback might suck on older devices, too; idk if they use h264 (that has dedicated hardware decoders)?

      • GissaMittJobb@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        I don’t think that inlining ads into the stream would be expensive, because of how adaptive streaming formats work. There are probably other reasons why they haven’t chosen this option yet.

        • Car@lemmy.dbzer0.com
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          This seems simple for one stream, but scale that up to how many unique streams that Youtube is servicing at any given second. 10k?

          Google doesn’t own all of the hardware involved in this video serving process. They push videos to their local CDNs, which then push the videos to the end users. If we’re configuring streams on the fly with advertisements, we need to push the ads to the CDNs pushing out the content. They may already be collocated, but they may not. We need to factor in additional processing which costs time and money.

          I can see this becoming an extremely ugly problem when you’re working with a decentralized service model like Youtube. Nothing is ever easy since they don’t own everything.

          • GissaMittJobb@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            So what you would do is to generate the manifest files (HLS/DASH/what have you) on the fly to include the segments with ads. Since adaptive streaming is based on manifests, that stitch together segments of video files that together make up the underlying content in different bitrates, you can essentially just push in a few segments of advertising in-between the segments representing the underlying content. This isn’t particularly hard to do, and you’d get the full benefit of the CDN for the segments, so there’s really no issue.

    • jet@hackertalks.com
      link
      fedilink
      English
      arrow-up
      8
      ·
      1 year ago

      Sponsor block demonstrates one approach to this. If everybody has the ad at the same time stamps, sponsor block would just work out of the box.

      If they got creative and introduced different time stamps for the advertisements for different people, then we could do something like MD5 hash of different video payloads, and look for the MD5 hash that isn’t distributed to everybody, mark that as an advertisement

      • aksdb@feddit.de
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        Theoretically they could deny serving byte ranges before the end-of-ad mark until those bytes have been served and a plausible time (the duration of the ad) has passed. Practically this is likely more expensive than what the ad revenue would yield.

        • GissaMittJobb@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          This would probably be unviable, since from a UX standpoint you want the first segments of the non-ad content to be preloaded when the ad ends.

          • aksdb@feddit.de
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            That will be irrelevant when the control freaks take over. Case in point: anti piracy ads in the good old DVD/BluRay days. Unskippable shit that ironically only punishes people who bought legitimate media.

        • jet@hackertalks.com
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 year ago

          Sure, but then you just need a youtube front running cache that preloads videos, or load multiple videos at the same time… i know i’m not the only person who watches youtube at 3x speed, so you could speed up past the ad, etc.

          • Amju Wolf@pawb.social
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            They could use stream encryption (DRM) to ensure you’re viewing the ads as expected and make it hard to capture and playback.

            • jet@hackertalks.com
              link
              fedilink
              English
              arrow-up
              2
              ·
              edit-2
              1 year ago

              Its a arms race, you could always just record the screen with a camera and edit it out as the ultimate.

              you could spin up a vm, and capture the video output

              you could use a graphics driver that lets you inspect the frame buffer, etc

              you could use the side channel attacks to get the decrypted video frames, heartbleed etc, etc etc