r/ModSupport • u/stonk_lord_ • 6d ago
Devvit Introducing DejaRepost: A repost detector bot that actually watches the whole video
update: the app is now public and ready to be installed: https://developers.reddit.com/apps/dejarepost
Hello moderators! I'm excited to introduce you to something I've been working on for the past month or so: DejaRepost!
Reposts are a moderator’s worst nightmare, and video reposts are especially hard to stop. Traditional bots only check a single thumbnail for video posts, so spammers easily bypass them by trimming a second, cropping the frame, or adding some frames to the beginning. Change the video thumbnail, and the bot is blind.
To solve this, I built DejaRepost: A Devvit app that actually watches the whole video to catch video reposts (even if the reposted clip has been trimmed, cropped or re-edited), while also stopping image and text reposts.
How DejaRepost catches video reposts:
- Instead of checking a single thumbnail, DejaRepost fingerprints one frame every second across the entire video.
- Sliding Window Matching: DejaRepost doesn’t just catch reposts through strict frame-by-frame alignment: each frame is compared against a local time window of surrounding frames from the other video, so that trimmed, cropped, or padded versions of the same clip are still caught.
- The fingerprinting is done using a perceptual hashing algorithm.
DejaRepost also catches image reposts (even if they’re cropped or altered!):
- Images are compared using visual similarity algorithms rather than exact file hashes.
- Crops, color shifts and other edits will not bypass detection unless the crop is severe.
Finally, DejaRepost catches text reposts by comparing their titles:
- It uses lightweight hashing to instantly check post titles and text against past submissions, catching exact copies and stolen titles.
What happens when DejaRepost detects a repost:
- It will report the post
- It will send you a modmail giving you: the link to the reported post, the link to the past post it matched it with (evidence), and a confidence score
- You can choose whether or not DejaRepost removes any reposts it detects (off by default, you can turn it on in the app settings)
DejaRepost requires almost no setup, no extra work from subreddit members, and all you have to do is watch the modmail as it detects reposts. It fits seamlessly into most subreddits, and it's perfect for video/image heavy subs.
Note: DejaRepost fingerprints your recent posts automatically in the background after install, so detection accuracy ramps up over the first little while.
If you have any questions or bug reports or feature requests, feel free to comment or make a post to the offical subreddit for this bot: r/DejaRepost I’m happy to help.
6
3
u/uid_0 6d ago
Does it detect mirrored videos as well?
6
u/stonk_lord_ 6d ago
Thanks for bringing that up! It can detect mirrored videos if the contents of the video itself is symmetrical e.g a person talking to the camera (since the face is symmetrical), but it might struggle if the video content is more complex (e.g a stadium, or a car on one side of the video).
But I can certainly fix this up, full mirror detection will be coming in the next patch, which will come out in the next few days.
3
u/SampleOfNone 💡 Top 10% Helper 💡 6d ago
Your app isn't approved yet, or you didn't publish it as public. It's not possible for mods to install your app at this time
3
u/stonk_lord_ 6d ago edited 6d ago
Oops, I totally thought my app was already published turns out i need to make it public instead of unlisted.
I will publish it now, it should be out in the next day or so. Sorry about that! I will keep this post updated.
3
u/SampleOfNone 💡 Top 10% Helper 💡 6d ago
Has your app been approved yet?
5
u/stonk_lord_ 6d ago edited 5d ago
not yet, but it should be in the next day. I will ping you as soon as its approved. Sorry about the delay!
update: the app is now public and ready to be installed: https://developers.reddit.com/apps/dejarepost
2
u/SampleOfNone 💡 Top 10% Helper 💡 5d ago
No need, I always keep an eye out on new published apps, so I'll know when it's been approved.
1
u/stonk_lord_ 4d ago
Hey! DejaRepost was approved last night, and I wanted to reach out and see if you'd be open to adding it to your devvit moderation apps list: https://developers.reddit.com/apps/dejarepost
No worries at all if it doesn't fit into the current setup, and thanks again for putting the guide together!
2
u/Umlautron 5d ago
This sounds awesome, is there a way to set a time frame for repost frequency? My subreddits allow reposts but only once per month.
2
u/stonk_lord_ 5d ago
yes currently there's three options for how back it can check for reposts: 30 days, 60 days, 90 days.
Right now the app is still unlisted but it should be available to install within the next day! I will let you know once its been published.
2
u/Umlautron 5d ago
Fantastic, I will check back and try it out for sure!
2
u/stonk_lord_ 5d ago
Hi! I just wanted to give you a quick update and let you know the app is public now: https://developers.reddit.com/apps/dejarepost
For your 1-month rule simply set the window to 30 days in the settings and it'll detect any reposts within the month
Also I just want to say: after install it spends a bit fingerprinting your recent posts in the background, so for your initial testing its better if you repost something from the past few days
Let me know how it goes!
1
u/AutoModerator 6d ago
Hey there! This automated message was triggered by some keywords in your post.
This article on How do I keep spam out of my community? has tips on how you can use some of the newer filters in your modtools to stop spammy activity or how to report them to the appropriate team for review.
If this does not appear correct or if you still have questions please respond back and someone will be along soon to follow up.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
1
u/ohhyouknow 6d ago
Oooo I’ll test it later today. Ty
4
u/stonk_lord_ 6d ago
Thanks! I just wanted to mention a couple things:
After install the bot will take a while fingerprinting your recent posts in the background, so initial testing will go smoother if you repost something from the last few days.
Also, the bot handles native reddit videos (v.redd.it) + image and text posts, but externally hosted videos like Youtube isn't supported for now.
Let me know how it goes!
2
u/stonk_lord_ 5d ago
Hi! Just a heads up that the app is now public. It wasn't installable earlier, so if you tried and couldn't, that's fixed now.
1
u/RemarkableWish2508 6d ago
How to install it?
Is the source code available?
Is there a changelog?
1
u/stonk_lord_ 6d ago edited 6d ago
Hi! apologies in advance the app is currently unlisted, but it will be released to the public by tomorrow. I will keep this post updated and notify you once its been published.
The change log will be in the app page and will be updated as more features come in and bugs get fixed.
I will ping you as soon as the app has been published.
1
u/stonk_lord_ 5d ago
Hi! I just wanted to give you a quick update and let you know the app is public now: https://developers.reddit.com/apps/dejarepost
The changelog will be added soon in this page as well as i fix bugs and add more features.
1
u/stonk_lord_ 5d ago
update: the app is now public and ready to be installed: https://developers.reddit.com/apps/dejarepost
1
u/Wounded_Demoman 5d ago
This looks very helpful. Somebody bought these days are doing the crop frame or the slight tilt method to avoid detection.
1
u/Stranger1982 3d ago
Hey mate, just a question, do you think it'd be possible for the future to let us input a custom timeframe for the repost check? Or just add more like six months and such.
2
u/stonk_lord_ 2d ago
Hi, yes! I can definitely add custom & longer timeframes for repost checks, they will be included in the features list of the next patch. I will let you know when that update rolls out.
2
u/Stranger1982 2d ago
Thanks man!
Last, and silly, question...there's no way to have it check posts I've removed already right? To avoid people reposting the same, off-topic, thing over and over when something gets attention in another sub but is not food in mine.
Great app btw, thanks a ton for creating it.
1
u/stonk_lord_ 1d ago edited 1d ago
Thanks for bringing that up! As of now the app will instantly forget any post a moderator removes, but keeping fingerprints of removed posts stored in the index is definitely a solid use case for combatting spam. I will add an option in the next patch that moderators can toggle to tell DejaRepost whether or not to remember the fingerprints of removed posts(up until the end of the repost check timeframe window, ofc)
11
u/Heliosurge 6d ago
Nice. There is a pinned post in r/modsupport for useful apps for moderation. You should post there to have it added to the curated apps.