Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Cool! I recently wrote my own user script to do the same thing. It's going to be very hard to patch or detect this, as updating video element props don't trigger DOM updates. They would have to either do lots of JS prototype trickery or check for playback rate when doing adblock detection. One thing to keep in mind here though since you're doing DOM lookups every time anything on the page changes, is that there could be some small overhead in page render time, and also that using fixed CSS classes means any small change to page code could break the checks. In case it's a problem in the future, checking .innerText is a hacky way to workaround it.


One can simply "videoElement.addEventListener('ratechange', callback);" to be notified the ad was sped up.

I mean the client can then undo this, as it can any JS the page offers, but there's nothing harder about detecting playbackRate changes vs something which causes a DOM update.


Can't an extension filter that event out?


Sure, that's what the 2nd line is referring to.


They could refuse to deliver the main video content until the minimum ad time has passed?


Watching a blank screen is still a huge quality of life win.


Exactly what happens on Twitch (that or a low quality version of the stream) if you use the few anti-ads that still work. And I don't mind that, if I do, I usually stop watching and move to something else... especially because their ads are even more annoying than YouTube, often multiple consecutive 30 seconds ads, unskippable. I do not know who watches these, especially when they cut something happening live.


I've never been a big consumer of Twitch, in part because I don't understand how they can decide that now you're going to forcefully miss the next minute of content.

In TV movies or YouTube, the actual content gets paused so that at least makes sense, it's just an interruption. But in Twitch it's like if they put ads in the middle of a football game! Imagine being interrupted for ads and back to players celebrating a goal.

Another thing Twitch does badly is to put ads on my face not even 30 seconds after joining a channel. Psychologically it feels like I haven't had time to get invested in the content, so it's not worth it to put up with the ads, and it makes me move somewhere else or close the tab.


On Twitch, the content creators can decide when to play an ad. They usually apologize for "having to do so", but they preferably do it at boring times in a match.


I'm using uBlock Origin and haven't seen an ad on twitch other than for a day or two about a year ago, in years. (Daily Twitch watcher)


You might be in a country/region in which advertisers don't buy ads. But for quite some time now uBlock Origin isn't enough to block ads. Also if you are subbed/Twitch Prime to a streamer or have Twitch Turbo it might spare you a lot of ads too.


I have never paid a penny to Twitch, nor been given a gifted sub. So it's no that :) I know for sure my country has ads, as occasionally I load twitch app on my phone and it's unbearable.


There must be something different about how some of us are using uBlock Origin then - none o that applies to me, yet I only very rarely get ads for a day or so. I'm not even logged in to Twitch.


I have never seen any ad on Twitch either and I am a very irregular user as well.

My guess is they don't show ads to guests before they reach a certain amount of frequent visits.


I'd say the low quality version of the stream is far better than the purple screen.


You might be interested in https://github.com/pixeltris/TwitchAdSolutions. A combination of its vaft uBlock script and using a VPN connected to somewhere in Austria has kept me pretty much ad-free for years.


Indeed, this is one possible end game, if we cannot block the ads from our computers, we can at least block them from our ears and eyeballs.

I view ads as a reminder to myself that I should maybe be doing something else with my time. I would love an ad blocker that blanked my entire computer screen for the duration of any ad, it would be a great chance to breathe and stop doom scrolling.


I would definitely pay $100+ for an HDMI dongle that would black-out/mute cable TV commercials for my parents.


Someone someday will build an extension that will replace ads with "AI" generated video to fill in the blank.


You could also just have a system that predicts which videos you are going to watch next / soon, and preloads them in the background, so that the minimum-ad time will have already passed by the time you are giving them any attention?

That seems a lot simpler to do?


True, but what if they start encoding the ads into the stream?


something like below extension. Relies on crowd (end users submitting time ranges) to skip unwanted parts

https://chromewebstore.google.com/detail/sponsorblock-for-yo...


That wouldn't work for dynamically injected ads that could be at different timestamps and have different lengths for each user.


Some sort of checksumming to detect segments differing between users would probably be doable.


I think you under estimated the cost of your solution, the cost must not excess the profit from the ad.

You need hard work on the encoder to do that (at least to segment video, because re-encoding dynamically is obviously not an option). Not profitable for Google.


Aren't there codecs that don't carry state across keyframes? Wouldn't it then be trivial to split a video at a keyframe and insert new content?


Sounds like it would be just as trivial to detect the split at the decoder level.


Why? How would you determine if the content that comes after the split is an ad? What if YouTube has 1000s of versions of the same ad, of which they insert one after the split?


Shazam-style audio fingerprinting can help.


The same applies for regular ads on websites. If the ad is delivery alongside the content, it can’t be blocked. But the industry doesn’t want this. They want cheap delivery of extremely targeted and tracked pushing of micro optimised advertising. That’s a reason to ad block alone. If a digital newspaper had the same ad for everyone on their website, with no tracking, I would be ok not to ad block it. That isn’t the creepy ad business I am inclined to block.


Arms race towards people running their own private YouTube instances which pre-fetch subscriptions and recommendations to skip ads. If the video hasn't been downloaded already it pretends to play the ad in the background while waiting. A minor inconvenience, but hardly the end of the world.


Yes it's TiVo for Youtube. And this...THIS...is the real use case for desktop AI: Detecting ads and automatically skipping them.

Funny how the AI barons never mention how AI can empower normies against them.


Same happened to me at a software conference. Ask a bunch of presenters about "When was the last time you put the User before yourself?

Crickets man. Crickets.


!


Be even easier if they provided an MRSS feed! I wonder if a popular channel on YT started making their content available in an easy to parse format like MRSS if they'd notice a significant loss in YT viewers in favor of it. Of course, they'd then lose the ad share, so probably not a thing that will happen.

How fast would YT issue a C&D if someone created an app that did this for you so that you just entered in the channels you follow, and then it would just check every so often for new content?


Shout-out Nebula, an alternative YT/creator platform which has no ads or sponsor segments. It's a monthly subscription but fairly cheap, and it gives you access to all videos on the platform (unlike patreon which is for a single creator). The monthly subscription cost is then split between all creators on the platform.

It's not a 1-1 alternative to YT as creators have to opt in, so most (imo low effort) videos/creators won't be on there. It's fantastic for any tech/engineering/history/news though, high quality/effort vids with no bullshit.

Note: I have no vested interest in Nebula, I'm just a user that's happy to support good creators and a platform that's actively opposed to advertising.

If this counts as an ad/spam - let me know and I'll delete this comment.


You're describing Freetube. I use YouTube daily without an account, ads, or algorithms.


https://freetube.io

Happy user here as well.


That link didn't work for me but the github repo is here: https://github.com/FreeTubeApp



How reliable is it? I used one of these apps from the F-Droid store (can't remember if it was this or NewPipe) but reliability was poor.


It's desktop aplication.

How unrealible NewPipe was for you?


Unreliable enough to say "screw this" and use the regular app and set up pi-hole


Pi-hole is not able to block ads on YouTube entirely. They are not DNS based.


My god, we've re-invented the VCR.


It will be a VCR of VCR


Sounds like a podcast app, but for video. A mix of yt-dl and some checks for specific channel updates.

Horrifying amounts of local storage required though.


Storage is also horrifyingly cheap these days. Was just looking at recertified enterprise HDDs – can get a 20TB drive for $200. Wish I had some more spare change lying around!


similar comment made on another post

https://news.ycombinator.com/item?id=38306613


And then Google will sue the owners of any such instances for DMCA violation.

Your contract with the network when you get the show is you're going to watch the spots.


And then Kevin McLeod triggers the no-DRM provision of CC-BY and rugpulls every creator on the platform.


This. For some corporate training sites they do this, which makes watching at 2x useless since you just have wait silently… but if you’re me, you get distracted, go do something else and then come back a month later when the nag email tells you you need to do the training.


I don't think I've ever completed a training course on time, only after getting "urgent: 7 days to complete".

I've got severe ADHD so these types of assessments are near impossible due to the slow dialogue and forced wait time. Though most of these courses give you multiple (or unlimited) attempts, so I'll screenshot each slide + wrong answers and brute force until I'm done. At least I can get other stuff done in the meantime.


What I do instead is attempt to reverse engineer what JavaScript function I need to call or web request is needed to make it think I competed the test/videos.

A common easy way is to just re-enable the “next” button. Even if it takes me longer than just doing legitimately, I find it more educational.


I was annoyed when a government security training exercise ranked "send the data using a trusted courier" as more secure than encrypting the data, and marked my answer incorrect.

My manager was impressed when I scored 110%.


That's probably a bad idea from a legal point of view.


The approach of trying to know what exactly the user does in their browser on their own computer and from that information to conclude whether something in front of the computer happened (the learning) is nonsensical at best and crime at worst (when done without consent or secretly). Allow the user to give deliberate signals by marking parts as done and if necessary analyze the datetimes of those signals.


But the OP is talking about training their work assigned them. Which is presumably done on company hardware.

You have no expectation of privacy on company hardware, they are allowed to do anything they want to do with the signal you provide them...


What expectations I have, is my own business. I definitely don't agree with being mistreated by an employer and it would probably make me look for another job, if an employer did that kind of thing.


'Expectation of privacy' is a legal term. It doesn't have much to do with your personal expectations.

In any case, what I meant is that actively lying and deceiving about whether you did the compliance training (or any other employer ordered training) can probably get you into hot water.


I do the same


Just give me a nice PDF I can read in half an hour instead of 5 hours of training that insults my intelligence by making me wait for the audio to finish. At Walmart back in the day, I spent the first couple days doing training in the back - the dullest thing I've ever done. But turning on closed captions and listening to my own music instead of their audio made it tolerable.


Unfortunately, this is - like so many stupid things - governmentally-driven.

In some US States (e.g., California), there are requirements on how many hours of training on topic X must be done every year. So if you finish faster, they literally, legally, have to feed you more crap until the hours of training have been met.


This has already happend to me, probably unintentionally. Something in Cromite "broke" the ads and just showed a black screen before the video started.

It was fine. I had no problem with it.


I had something similar happen. I'm fine with a blank screen and waiting 5-30sec. I don't want intrusive ads before during and after a 5 min video on water heater maintenance.


I've seen a few ads on Youtube that I actually appreciated watching. Quiet background music, a useful product, respectful presentation, text with no spoken words, and done quickly.

However, the vast majority are the exact opposite. Loud music, shouting, uncomfortable sound effects, a long playtime, and to top it off, either advertising an outright scam or else a product that I have no interest in whatsoever. Sometimes I have to rip my headphones off to protect my ears. Not to mention the timing -- ads between movements in a classical symphony, or else right during a passage itself.

It's a good reminder that while I've enjoyed Youtube for many years, I also have a CD collection I can listen to instead.


The worst was when Google was turning a blind eye to advertisers putting entire TV episodes and music videos in ads. It was infuriating to have something playing in the other room only to realize what should've been a 2 minute ad break somehow has been going on for 10 minutes.


The next will be downloading the videos in background, stripping the ads, and watching them later.


Well really they could include a hash with each frame of video data, timestamp when clients have started watching and only allow sending the next x frames once y time has passed.

Really, they should just get rid of all ads and force everyone to pay a subscription, because apparently that's what everyone wants. Oh no, wait, they want neither; people want Youtube for free without ads.

Sure, YT could make less profit and therefore serve fewer ads/lower premium price, but in order to convince them to do that, humans would actually have to work together and boycott it to send a message, and as we all know that ain't ever gonna happen.


I'm OK with this. Better than ads.


Making this work would likely mean that the CDN edge servers become much more stateful and the costs of operating that might outweigh the additional revenue.


Not really. IIRC they already used signed URLs. They just need to add a not-before field to the URL.


They could just patch Chrome to make "updating video element props trigger DOM updates".


And you could build chromium and remove just that


Good thing alternative engines exist


True, but they also have a lot of sway over what other engines do


Yandex…For the Win…




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: