Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hide sponsored comments and video descriptions #649

Open
Youngblood50 opened this issue Feb 13, 2021 · 36 comments
Open

Hide sponsored comments and video descriptions #649

Youngblood50 opened this issue Feb 13, 2021 · 36 comments
Assignees
Labels
discussion enhancement New feature or request help wanted Extra attention is needed

Comments

@Youngblood50
Copy link

I don't know if this would be possible, just an idea :)

Basically, how I'd imagine how it could work is that you could, for example in the video description, mark the sponsored text, then right click and select sponsorblock to block this content. With comments, either do the same (i.e. mark the text) or add a button to block the comment.

Sorry if this has been already discussed, I searched for it but couldn't find anyone talking about this.

@Youngblood50 Youngblood50 changed the title (feature request) Block sponsored comments and video descriptions (feature request / idea) Block sponsored comments and video descriptions Feb 13, 2021
@ajayyy ajayyy changed the title (feature request / idea) Block sponsored comments and video descriptions Hide sponsored comments and video descriptions Feb 13, 2021
@ajayyy ajayyy added discussion enhancement New feature or request help wanted Extra attention is needed labels Feb 13, 2021
@chirag127
Copy link

i don't think comment and video description are very annoying. and if started hiding comments there will be no end of that. we should only focus on how we can increase the skip segments database like making a neural network to automatically mark redundant animation( which i think is possible)

@GermanAizek
Copy link

@whyiswhen @Youngblood50,
Number of phishing sites and just advertising will decrease, a very good idea. Hopefully the community will help add this feature.

@bbb651
Copy link

bbb651 commented Mar 1, 2021

Provided this feature is opt-in (there will always be false-positives), I think a system to automatically detect sponsored text and hide it is pretty doable, for example looking for key words (like "sponsor", "sponsored", /\d\d% off/g, name from list or sponsors, etc.) and hides the paragraph (separated by line-breaks). Maybe instead of hiding it completely, it'll replace it with gray text saying "sponsored message" that you can hover over and see the original if you wanted to.

@DRSDavidSoft
Copy link

@whyiswhen To me, the constant repeated "GET A 1000% OFF WITH CODE XXXX ON SITE YYYY" message is very annoying, as I always read the video description, and the pinned comments by the author.

So, I'd like to express my 👍 and interest for any features that would allow me and others to submit a regex, or part of the text, that SponsorBlock would block on all videos (or still, in the video that was submitted).

I understand that some or many users would not find this annoying, but personally, I do, and would like to help remove this stuff from the videos if it's possible.

@bbb651 Very good idea. As I understand that skipping for each segment in SponsorBlock is already an opt-in thing, e.g. it doesn't skip intros and end credits by default. It only makes sense that this feature would also be opt-in, if @ajayyy ever decides to implement it.

Again, personally, I'm very interested in this, and would like to opt-in, if this feature is implemented.

@Skyedra
Copy link

Skyedra commented Mar 29, 2021

I also think this is a great idea; these descriptions in the ad always bug me (especially if I'm digging through the description to find a non-sponsor link that's actually relevant to the video content)

@DetachHead
Copy link

DetachHead commented Jun 20, 2021

i'm going to try to add this functionality https://github.com/DetachHead/SponsorBlockServer/tree/description

@ajayyy
Copy link
Owner

ajayyy commented Jun 20, 2021

@DetachHead I'm not sure if something like this will work since descriptions change very often.

I guess it could include a hash of the description too?

@Skyedra
Copy link

Skyedra commented Jun 20, 2021

I think hash is a good idea. Maybe it could work like this:

  1. Contributing user edits description to create a clean (ad-free) description
  2. The server saves both the clean description and the hash of the original unmodified description
  3. Subsequently, the cleaned up description is shown by default to all opted-in users. However, at the bottom of the description field, one of the following is shown in small grey font:
    A. If text hash matches (unchanged), display "Sponsored content has been redacted from this description, click here to view original description"
    B. If text hash does not match (changed), display "[Newer description available] Showing a sponsor-redacted version of an old description, click here to view latest unredacted description"

This way, even if the text is changing constantly or an ad agency writes a bot to make superfluous text changes automatically, ads don't sneak in.

@DRSDavidSoft
Copy link

@sky-lake This is a good idea! Might I add:

  • The sponsor text should also be removed from pinned comments
  • If the pinned comment only contains sponsor text, and nothing else, it should be removed from the comments list

I also think in many cases a simple regular expression can also be used to remove most of the sponsor content, as they're simple copy-and-paste messages. It will not matter if the actual content changes (e.g. video author adds new text to video information), as long as the regex matches the sponsor text, it can be removed from the page.

@ajayyy
Copy link
Owner

ajayyy commented Jun 20, 2021

Contributing user edits description to create a clean (ad-free) description

I don't really like the idea of storing something like that due to it having more of a copyright/redistribution risk. I think it would be safer to just store either the parts that need to be removed or just indexes (most safe).

@Skyedra
Copy link

Skyedra commented Jun 21, 2021

Hmm, I suppose that's a fair concern. Indexes + hash might be good in that case. If the hash doesn't match, then maybe just don't display any description until users opt to see the latest unedited description.

@ajayyy
Copy link
Owner

ajayyy commented Jun 21, 2021

It's probably safe just to not hide anything if the hash mismatches. If we notice anyone is doing what you are saying to try to abuse it, we can implement hiding by default at that point.

@ajayyy ajayyy added help wanted Extra attention is needed and removed help wanted Extra attention is needed labels Jun 21, 2021
@ajayyy
Copy link
Owner

ajayyy commented Sep 22, 2021

length + hash + first and last 5 characters could work too. The extension could then search by regex, verify the hash, then hide. If multiple are found, pick the one with the right hash. Adding more to the start/end of the description will have no effect, since the hash is only for the hidden part of the text.

@DetachHead
Copy link

sounds good - btw i haven't really had time to work on this sorry

@Skyedra
Copy link

Skyedra commented Oct 22, 2021

I thought I might poke at this a little bit and try to help move it forward if I can. Taking DetachHead's work, I've continued it to have the basics of being able to get/post descriptions. Still pretty WIP at this point though (doesn't yet support voting or get by hash, etc).

@zephiii
Copy link

zephiii commented Jan 23, 2022

Here's a real description of a video I stumbled across just today.

image

Paid promotion, social promotion and product promotion before the actual description of the video.

@DRSDavidSoft
Copy link

@Zenphia That's not just one example, almost every sponsored video that I watch has the same kind of video description; the sponsored text content comes before the actual video description.

@gut1414
Copy link

gut1414 commented Feb 18, 2022

Sponsorblock should act as a blocker of ads or annoying elements on YouTube, it could replace the description and the first comment (at the very top) with a default button. Anyone interested in seeing the description or the first comment could click this button and unlock the item. Thanks to this button, anyone would no longer be bothered by the horrible sponsored description or the first sponsored comment, they would see a simple clickable button instead.

To overcome the lack of functionality of Sponsorblock on the description and the pinned comment, I use this following method (sort of DIY).

I use ublock origin to block the description and the first visible comment (which is often the pinned comment), and it works, I don't have those horrible sponsored descriptions anymore.

But, with this method, I block the description and the comment at the very top, on all videos without exceptions, and I have to deactivate my ad blocker and reload the video page on YouTube, in order to be able to see the description and the first comment if there are interesting things in it.

But then I often forget to turn my YouTube ad blocker back on to block the description and first comment again, and I see the sponsors again, a horrible experience for anyone bothered by ad pollution.

Do not forget that video creators do not hesitate to put the sponsor at the very top before the description of the video and do the same thing in their pinned comments, an abusive method.

It is an abusive method like placing the sponsor at the start of the video, which makes the person who does not want to see this video see the sponsor before the change of another page or another video . These abusive methods which, like abusive advertisements, led to the development of ad blockers and then Sponsorblock.

@ccuser44
Copy link

ccuser44 commented Mar 11, 2022

I very strongly disagree with this. Unlike video sponsors, sponsored comments are not an issue regarding time wasted. They dont waste your time, and at best are only a minor annoyance.

I don't see a single reason this should be introduced.

@DetachHead
Copy link

@ccuser44 that assumes the only reason people block sponsored segments is to avoid wasting time. i use sponsorblock for the same reason i use ublock: i despise ads. i don't care about time wasted, i'm watching youtube after all.

@DetachHead
Copy link

that said, i imagine this would be an optional feature so you don't have to enable it if you don't want to

@Skyedra
Copy link

Skyedra commented Mar 14, 2022

Comment ads are the same as banner ads -- they're annoying and distracting. People want to remove them for the same reason they install regular banner ad blockers.

If you don't want to use such a feature, just disable it in your user preferences. No one will force you to use it.

PS - please don't spam multiple replies in a row, use the edit button instead -- it generates e-mail notifs each time and is annoying.

@ajayyy
Copy link
Owner

ajayyy commented Mar 14, 2022

Please stick to constructive discussion on how to solve this issue, instead of just saying it's not something you care about

@Skyedra
Copy link

Skyedra commented Mar 16, 2022

I'm continuing to (slowly) poke at this... Very early WIP:

2022-03-16.04-23-20.mp4

1000 things still left to do (I have plans to let each string be categorized, plus gotta do client<->server communication, comments, some basic ui theming/cleanup, etc etc), but thought it'd be fun to share!

@DRSDavidSoft
Copy link

@Skyebold Wow, impressive! 👍🏻 This way, the selected text can be also removed from other videos with the same description (if the description text is repeated). Also, if the original video description somehow changes, it won't negatively affect it. Awesome stuff

@Skyedra
Copy link

Skyedra commented Mar 18, 2022

Thank you!

This way, the selected text can be also removed from other videos with the same description (if the description text is repeated).

Yes, something like that should be possible. It's been a while since I poked at the server implementation, but I think I set it up per-video to start with.

It would be interesting to consider how to re-use text redactions across multiple videos:

Channel-wide - I see as useful since I imagine many sponsored texts / links are the same from video to video. This would mean a lot higher rate of spam getting redacted I think.

My main concern for channel-wide redactions is if there might be cases when some text should be redacted from one video description, but not from another video description? Resolving that situation could be a bit overly complex since we would have to do some fancy interface of per-video voting combined with channel-wide voting to determine which redactions are legitimate, and that seems a bit confusing. But, it may also be that's such an edge case it's not worth worrying about, since there will be a feature to temporarily toggle redactions on/off if you need to see them.

A secondary question for tracking channel wide is how to get the channel ID for a given video. Maybe it can just derive it from the creator's URL in their channel name link ? (Can that ID in the URL change? If so, it'll nuke all the redactions any time it does). Or maybe there is a permanent ID hidden somewhere on the youtube page.

So tracking redactions per-video vs per-channel might be something good to discuss. I would be in favor of channel-wide if the implementation can be kept simple, otherwise per-video.

Globally across all of youtube would be problematic (even just technically, downloading the entire database doesn't seem very scalable, and the risk of false positives seems high). Plus changing referrer codes across different people would make this of limited use.

Also, if the original video description somehow changes, it won't negatively affect it.

Yep!

@mchangrh
Copy link
Contributor

channelID fetching

I have been working with a few PRs that integrate channelID fetching - #1312 has it as channelID in content.js

channelID works across youtube and invidious, and since this would probably have to be a different table anyways, in order to accommodate the text setting by channelID shouldn't be too much of a leap.

same link across videos

from my experience, there shouldn't be too many links that are exactly the same but should not be removed depending on the context - a link to their merch line is selfpromo even if the video is entirely about it, the only exception would be referral codes in a sponsor vs exclusive_access context

@Skyedra
Copy link

Skyedra commented May 17, 2022

channelID - Thanks for the tip, I will check it out

Same link - Yes, you're absolutely right. In the intervening time since my last post, I have been looking more closely at descriptions and realized that yes, there is a ton of re-use across channels. So I actually already went ahead and changed the way I do it on server side last month.

@ccuser44
Copy link

This should not be enabled by default

@gut1414
Copy link

gut1414 commented Jul 2, 2023

Sponsored descriptions and pinned comments are annoying, I'm glad if this blocking solution exist.

@erkinalp
Copy link

@Skyedra using a patch theory based solution (like darcs) instead of a hash based solution (like svn or git) could be a better approach.

@gut1414
Copy link

gut1414 commented Oct 29, 2023

I'm sad that nothing has been done to hide the sponsored portions of the descriptions and comments in the time this suggestion has been created. Especially since sponsorBlock works miracles in videos. It's a real visual pollution, which often hides the rest of the description and the pinned comment. And yet, another person had created a video, here, showing how they flag sponsored texts, to hide them. This proves that it is possible. In the meantime, I'm content with adblockers with the selection of elements to block, but which must be deactivated to see the description and the first comment that I blocked, and which must be reactivated afterwards, by reloading the page each time.

@Skyedra
Copy link

Skyedra commented Oct 30, 2023

Been awhile, but I recall when youtube changed their layout to not show the full video description, I had some difficulty finding where to grab the full video description from to scan/redact it.

That said, ever since youtube started making it hard to watch without ads, I've been using freetube, which shows the full description anyway (and has sponsorblock support!). So while I might poke at making a client-side version for freetube, I don't know that I would put a lot more effort into the default youtube client myself since I just don't use it anymore.

The existing client/server code may be useful for anyone who wants to go down the default youtube+sponsorblock path and finish it -- though, I kinda suspect freetube+sponsorblock is going to be the real path forward for people who hate ads.

@ajayyy
Copy link
Owner

ajayyy commented Jun 6, 2024

https://github.com/MagicJinn/Block-Sponsor-Comments

@DRSDavidSoft
Copy link

@ajayyy lol 😆

Meant to be used in combination with Sponsorblock: http://sponsor.ajay.app/ I fully endorse this extension being integrated/merged with any other application with or without credit (Looking at you, Sponsorblock ;P)

@5trote
Copy link

5trote commented Nov 24, 2024

Fully agree with this, since my screen is pretty big I just have the "Download Game here:" text at the top of the description staring at my face the whole time I have the video open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests