YouTube is currently experimenting with server-side ad injection. This means that the ad is being added directly into the video stream.
This breaks sponsorblock since now all timestamps are offset by the ad times.
For now, I set up the server to detect when someone is submitting from a browser wit...
YouTube is currently experimenting with server-side ad injection. This means that the ad is being added directly into the video stream.
This breaks sponsorblock since now all timestamps are offset by the ad times.
For now, I set up the server to detect when someone is submitting from a browser with this happening and rejecting the submission to prevent the database from getting filled with incorrect submissions.
Support a federated open source peertube instance instead of proprietary centralized paywalled garbage like Nebula. Just because the shittification isn't there yet doesn't mean it won't be as soon as it gets a bit more popular.
I really like the idea of Nebula, but the way they market themselves as "creator owned" without being an actual workers cooperative seems deceitful (still much better than YouTube, though!)
Almost certainly not, although fair disclaimer, I don't actually know. Ads need to be tailored to the user when delivered, so it's likely the YouTube frontend requesting the next chunk of video to be an ad instead of the next chunk of video from blob storage. yt-dlp likely just requests successive chunks straight from blob storage, passing this.
If YouTube served ads by saying "point to an ad chunk next" in their blob storage, 1. Everyone would see the same ad and 2. Premium users would still see ads.
To patch this, YouTube really needs to stop serving video chunks directly from storage, but I forget the reason they haven't done that already.
(Technical note; I'm assuming blob storage chunks contain 1-2 seconds of video and metadata pointing to the next one, like a linked list. I'm not sure if this is how YouTube works, but many video platforms do this)
Ads need to be tailored to the user when delivered
It does not. If you install a new browser and open YouTube the first time, they'll be able to show ads to you
They could be tailored based on other factors too, like country, region, or even household by the IP
I think the backend could just generate the ad ridden video feed for the specific user. Most probably it would be very resource intensive, but I can only hope so.. but then I also don't know much about HLS and other fragmented streams so it might not be a performance problem at all.
like a linked list
I think the full list of chunks is (currently) known beforehand. That's how yt-dlp can download on multiple threads, but also how it can show the number of total fragments relatively quickly on the progress bar
yeah that makes sense. i was thinking maybe youtube had servers to decide what chunks clients would get, maybe by looking at whether or not they are premium users first. but anyway youtube still needs a way to differentiate between ad chunks and video chunks, otherwise we would just be able to skip 10 seconds through all the ads. surely that can be exploited somehow.
I'll buy premium when they finally manage to either prevent adblocking entirely or make it sufficiently inconvenient. Stopping using YouTube is not an option for me and neither is watching ads. YouTube (along with porn) is the internet for me. If I'm not viewing either content, I'm probably not on my computer.
Hell, I don't even blame them. I can't morally justify blocking ads and viewing their content for free. I do it because it's easy and I get away with it. I don't believe in ads-based business model and that basically leaves subscribtion as the only viable alternative. Not paying and still using the service isn't exactly practicing what I preach.
I can't morally justify blocking ads and viewing their content for free.
I can't morally justify anything they are doing, and have been doing for many many years already. Yet I use their public services because they are unavoidable. But I would never give money to such a company.
I'd get premium if they weren't so insistent on bundling in bullshit I don't want or care about to justify the high price. I put up with enough of that from cable TV. I'll pay when there's an ad-free tier that doesn't do anything else and is a reasonable price for "the service that's free with ads, but without ads". If there was a per-device premium tier that I could throw on my Roku, and all my family members could have premium when they stream from there, I'd pay for that. I'd pay for family tier if it didn't have the dumb single-household rule which screws over truckers and those who travel for a living.
Google has options they could take to convince consumers to pay to not see ads, but there's no creativity left there, no effort to court the market or adapt the service and prices to what potential customers need and are willing to pay. And it's because they believe they are the market, and want to keep it that way.
I'm pretty lucky not liking most YouTube style content these days, so don't consume too much of it like I used to. Lot of the creators feel like AI with the same phrase of if you are new to the channel like and subscribe and ring the notification bell...blah blah blah. And then drag out info that can be said in a minute into a 10 minute long ramble for the algorithm.
YouTube these days is more for music or checking out a part of a game I'm stuck on these days from a creator with like 1 sub putting up a 10 second long clip that gets straight to the point. Those guys are the heroes over the 5+ minute long uploads of the same content in comparison that has you have to dig into the comments to find where to skip to.
I'm not giving google a dime, they take enough from me that I should be paid to use their shit. I'll just download what I want to watch, it's not really much of inconvenience.
I wonder how that will interoperate with timestamps provided by users in comments or by the video creator themselves. Maybe those can be used to detect inserted ads.
The server must have to send some metadata to the client telling when it's running an ad because there are other things that need to happen client side during that like adjusting of the time or making the ad clickable
I'm kinda surprised they haven't done this already. Twitch has been doing this for a while now, and the only reliable way around it is to use a proxy in a country that Twitch doesn't run ads in.
Video length is incredibly important to The Algorithm and a LOT of content creators time their videos to the second. Taking away control of that (even if the end result ins the exact same length) is going to ruffle a lot of feathers and lead to a lot of people who want to "be a champion for the viewers who should like, comment, and subscribe and use my referral code for war thunder" as a result.
Oh, it's been pretty crap for a while now. I constantly see viewers complain about AIDS ads and even content creators feel poorly about them.
Looking at https://twitchtracker.com/statistics shows a relatively flat viewership base. Since January, they've seen a decrease of close to 15% viewers and concurrent channels. It appears that they had a large increase in viewers and channels in 2020, probably due to Covid, and since then they have been in decline.
Even when you don't know the language, you can judge if something is an ad just by an overly excited tone of voice. I wonder if someone has tried writing an ad detection algorithm already. It would still be a lot heavier on resources than SponsorBlock.
I guess my AMD Bulldozer TV PC is gonna have to go in the ewaste bin though. Its already stretched to its limit running Linux Mint, Firefox, uBlock Origin and Sponsorblock as it is
I miss the times when ads were just annoying gifs on the left or right side of a web page. Then they evolved, abusing javascript, to become pop ups that hid the URL bar and opened 3 dozen different pop ups while you didn't close the mother popup. Then they started clickjacking: that close ad button? Just opens another ad. Ad infinitum.
Now, effectively editing the video to add an ad somewhere instead of serving it as a side file. The advertising industry as a whole feels like the absolute worst villains at a personal level, because they want to target you individually.
It was inevitable (and is arguably the "logical" extension of sponsor segments).
As for what it will do to timestamps: The same thing it does to timestamps in podcasts. Some podcast players have a special way to tag the timestamp to adjust with the inserted ads but NOBODY hosts with those. So they are rendered useless.
On the youtube side? They could potentially be auto-adjusted because youtube will know how many ads were inserted . But considering the goal of this is to serve ads...
The last time Google pulled out all the stops to fight ad blockers, I had to update uBlock Origin every now and then until the whole thing passed. That's all.
So I'm not worried. But I am amused that they keep making ads more obnoxious, which pushes more people to use ad blockers. I didn't even use sponsorblock until a particularly egregious bit of native advertising. They could probably gain ground by just making ads less irritating, but they absolutely will not.
it would require government intervention. Where a regulation must declare that ads must clearly be labelled as ads, so that adjustments can be made by detecting when is the ad segment happening.
This one might be harder, if YT just sends the ad like it was part of the video file, generating it on the fly, it's a lot harder to detect, and probably not too hard for them to do, but breaking timestamps is pretty bad for some types of videos, like tutorials.
See Flash websites ripping each other off for five years on either side of Youtube's introduction.
See Bittorrent moving more video than Netflix until like 2012.
See twenty years of web-based P2P experiments. Weirdos with fat hard drives (hi) will always be happy to seed.
Or - crazy thought - services could cost money. It would not take much. Youtube's not getting ten bucks each time you watch a video. Bandwidth and storage keep getting cheaper. Nor are they paying for content, unlike Netflix and so on, and those fuckers are also considering ads.
At least it should still work with the hard coded sponsor spots that are actually part of the videos (like the "brought to you by Manscaped" or whatever).
Only if the ads are a fixed length and always in the same place for each playback of the same video.
Inserting ads of various lengths in varying places throughout the video will alter all the time stamps for every playback.
The 5th minute of the video might happen 5min after starting playback, or it could be 5min+a 2min ad break after starting. This could change from playback to playback; so basing ad/sponsor blocking on timestamps becomes entirely useless.
How does a client know when to block the user from fast forwarding to prevent them from skipping over the ad? Could something like sponsorblock detect that to know where the ads are placed?
SB would need to adapt to detecting the ads being shown instead of relying on timestamps. This should be possible in theory, since when ads are displayed there will be some ways that the client is informed that SB could pick up on.
Different users would see unique ads. So your ad could be 12 seconds long while my ad is 30 seconds long. A timestamp based skip would no longer work universally.
That's what SponsorBlock already does. It however doesn't detect the sponsor but instead it jumps over a part of the video marked with timestamp but with different people seeing different lenght ads, these timestamps no-longer match.
Switch to 3rd party clients like pipe-viewer (doesn't need api key), it's less likely (though I suppose not impossible) google would roll this out against 3rd party clients as they can't track you for targeted ads.
To people thinking of joining Nebula because their marketing team/shills are currently spamming this thread, see peertube (federated like lemmy, open source)
To people thinking of joining Nebula because their marketing team/shills are currently spamming this thread, see peertube (federated like lemmy, open source)
Peertube is fine, but like lemmy (but worse), there's barely anything there. Nebula at least got creators from YouTube to make ad-free versions for Nebula. If the channels that a person are subscribed to don't exist in Peertube, that's not an appealing alternative for them.
If they are injecting ads into the actual video stream; it won't matter what client you use. You request the next video chunk for playback and get served a chunk filled with advertising video instead. The clients won't be able to tell the difference unless they start analyzing the actual video frames. That's an entirely server-side decision that clients can't bypass.
While I think federated services are a good idea in theory, the unfortunate reality is that they're also privacy and GDPR minefields that nobody has figured out how to make legal yet.
Yeah Firefox + Ublock Origin. It buffers for me indefinitely and the only way to fix it is to skip ahead 10 or so seconds. If I then go back 10 seconds it starts buffering again.