Show HN: I made a website that converts YT videos into step-by-step guides (stepify.tech)
Hey HN,
I've been working on this side project for the past month. It generates a step-by-step tutorial guide for YouTube videos that you can follow along without watching long videos. Best suited for tutorial videos but can work for other videos aswell. No BS. Just straight to the point.
The guides are generated from pure transcript so you don't have to worry about it being AI. It's my first project as a total beginner. Something I had to do inorder to get out of tutorial hell.
Please let me know if you have any suggestions or if you face any problems or bugs. I would try to fix them to the best of my abilities and as soon as possible.
I would appreciate your feedback on this. Let me know what you think!
134 comments
[ 4.1 ms ] story [ 216 ms ] thread“Seek feedback from stakeholders or viewers by encouraging questions and comments for further engagement.”
This is from a bathroom remodel video.
Whisper or other models can help with that too, but remember to preprocess to cut silence. The dataset tends to include ads in the captions, which results in hallucinated in from silence.
You could also add a transcript-evaluation step which checks whether this actually looks like a step-by-step video, but I'd consider skipping it for cost and efficiency. Trying to be helpful by evaluating whether the video is instructions or not is added complexity where bugs and strange behavior can creep in.
I tried entering a new video but I got a Heroku application error. Maybe it's a limits thing.
When I look at the Recent videos, a lot of them are not for instructions/tutorials. Perhaps people do not understand the purpose of this project. Maybe they are just testing it out with non-tutorial content.
Maybe you could add representative videos towards the top so that people would get a better sense of the use of this project?
I don't know why this isn't more popular here. It's a good idea. (Maybe it has already been implemented elsewhere?) Reading is much faster than watching a video for many instruction-based tasks. Good luck!
Can you tell me more about the video you entered? Did it have a transcript? How many hours long was it?
1. It took about ~45 seconds for the page to load once I put the URL in. You should have a loader on a page showing that the website is "doing something" while the AI transcribes.
2. It would be great to sync the chapters in the YT video with the guide details.
3. Even more advanced would be the specific items like "Drill holes, insert expansion bolts, and secure the inverter to the wall using nuts and washers." showed a timestamp and thumbnail with a link to the video part.
4. It would be great to have a checklist functionality (maybe this is the "pro version"). I often do something, get halfway and then need to scrub the YT video to find the specific place where he talks about the action item.
EDIT:
5. IMO iFixit has the best "guide" formatting: https://www.ifixit.com/Guide/How+to+Recover+Data+From+a+MacB... if you could somehow generate this by the video, that would be insanely useful.
I hope that didn’t wreck your compute costs
One question- On the backend, is it downloading each video CC (closed-caption) transcript and feeding that into a tuned prompt? What happens for videos where this is missing? Asking because I've noticed CC is occasionally unavailable for some YouTube videos.
If you cared to have a fallback, a potentially interesting experiment / solution for such cases is to download the video, extract the audio to a WAV file, then through the audio through Whisper [1] to generate the transcript. Using CPUa, it will still be incredibly intensive and slow, generally not much faster than real-time (e.g. a 5 minute clip will take on the order of ~5 minutes to complete transcription). However, with Whisper running on a fancy GPU it is insanely faster, between 100-200x faster, meaning even for long videos, generating the transcripts will complete in only a few seconds.
Great job @aka_sh!
[1] https://github.com/openai/whisper
p.s. Is there any chance you'd open source your code? Or do you plan to turn this into a business? The code itself is exactly a huge moat, and it'd be cool to see how you did this. Cheers.
p.p.s. stepify.tech app is currently crashing out to a heroku error page when I try to submit a YT link.
Keep up the good execution.
There is limited need to reinvent the wheel to process audio when other things can be solved.
I've had multiple instances where I had a simple issue with zero decent Google results, and a YouTube result with literally the exact question I had in the title. I had to sift through 12 minutes of "like and subscribe", a dude clicking around in various screens mumbling some stuff... I would have been very happy with a simple blog post
I haven't tried this yet but it would be helpful if each step included a link to the spot in the video where that step is shown, so that in case you need it it's easy to find.
I so appreciate these open source/access models allowing us to build these kinds of tools without having to pay and send our data to openai.
Whisper's is supposed to be better in some cases, but Google's probably works very well at scale.
1) Speed : the site is often showing heroku errors. Seems like you are running the entire processing in the request-response cycle. If not already done, please try to use a queueing system to perform async processing - and then let the user know when their video is ready to view as steps (probably via email or browser notifications). This will stop your site from crashing frequently and you'll be able to scale to many users very quickly.
2) Please add link-backs to the specific time in the video from where the step is shown.
Cheers!
Heroku just wants a bigger bill.
// I'm not really kidding! Because boy do I hate 15 minute videos with the one CLI command you need buried like a needle in a haystack. Seeing the nonsense distilled into a handful of straightforward steps is so refreshing. Awesome work!
Giving the 15 seconds up front and then explaining it in more and more detail can also be appreciated by users.
I'm curious if you noticed certain models worked better for summarizing and converting to steps. For example, in my projects I've found that Gemini outperforms "better" models like GPT for similar use cases, which I guess makes sense given Google's interest in summarization.
How are you managing costs and offering this for free?
https://stepify.tech/video/1-Rm0mgg2RI
Here's the video for reference:
https://www.youtube.com/watch?v=1-Rm0mgg2RI
1) record an SOP using Loom while you narrate, 2) grab a transcript of your narration, 3) feed transcript into ChatGPT to write list of instructions.
Was billed as a way to easily hand off processes to contractors or subordinates.
This seems like a cool riff on that. Neat.
That just means you have to worry about voice recognition errors instead.
Edit: although in this instance the LLM pretty heavily editorialises the transcript anyway...
Is there a way to request items that were submit get removed? Can you provide a way to contact you such as an email address? There wasn't one posted on your site.
It's just a suggestion, I mean right now anyone can submit anyone's videos without their consent or ownership verification. How do you plan to handle that? I'm sure there will be folks out there who wouldn't feel comfortable that a site will be scraping their video content attempting to generate a large network of pages on 1 domain with loads of SEO terms. It provides a conflict of interest with the original creators. This conflict of interest is around SEO competition, reducing views from original creators and then there's the other can of worms of any future plans to monetize your site through subscriptions, paid features or ads where you'd be profiting from the content of others without their consent.
I posted one of my videos just to see what would happen and then it created a permanently hosted page on your domain with an AI generated recap of the video. I didn't realize that was going to happen. There was no warning, label of how it works, TOS that I agreed to or options available to make it private and there's no option to delete it. I put in the URL, hit submit and that was it.
It's nothing personal and I hope you don't see this as a deterrent. I'm all for building cool things and generally openly share almost everything for free (I've been blogging and making videos for ~9 years and don't have a single ad on anything I ever posted) but the idea of having inaccurate AI generated content does rub me the wrong way.
> The guides are generated from pure transcript so you don't have to worry about it being AI.
You mentioned it's generated from pure transcripts but most of the phrases used aren't what was mentioned in the video. It looks like a paraphrased version of it but it's also missing all of the details that would allow someone to follow along.
Directly under the video on the page it says "This response is AI generated". One one hand you say it's not AI generated but then on the other hand it is.
That's why we have licenses and YouTube's default license ensures creators retain ownership of what they upload and are protected by copyright. The license allows YouTube to broadcast the content.
Why do some of you think it is not okay to put YouTube embeds on a website???
YouTube embeds are a different story, that is an official YouTube feature which allows folks to embed a YouTube video on a 3rd party website. I have no problem with that. YouTube even allows creators to enable or disable that on a per video basis. I keep it enabled because it's useful and promotes sharing of the original content as it was delivered.
I have a problem with a 3rd party site taking a video and making a derivative of it without the consent of the copyright owner. It's violating the license that the video was uploaded under. They even went as far as explicitly claiming copyright ownership on all content on their site (at the time of this comment their footer reads: "© 2024 Stepify - All rights reserved.").
I don't like making assumptions but look at how responsive the original poster of this thread was to most comments. They replied to a ton of people, but not this comment. They've also made an explicit decision not to include any way to remedy this issue or even contact them through their website. I'll let you draw your own conclusions from that.
I wouldn't have even minded as much if the generated text was good but in this case it was wildly inaccurate and missed all of the details that would have let you follow along without the video. The site's official tagline is "Get a step-by-step tutorial of any video to follow along". If someone sees the text generated they might infer a video was of poor quality because this site claims it can produce a step by step tutorial of ANY video to follow along. That sheds negative light on folks who created the original video.
> Only YouTube and the video owner will earn revenue from ads on embedded videos. The owner of the site where the video is embedded will not earn a share.
Furthermore, the YouTube creator can choose to not let their video be embedded if they wanted that.
Do you have a problem with every news website that has a video at the top, then an article describing what happens in the video? How would that violate the licensing? It's unrelated to licensing - they're using the official YouTube embed. YouTube manages the copyright of the embedded content and can even control whether or not the video can be viewed in your country, etc. based on such restrictions.
> look at how responsive the original poster of this thread was to most comments but they ignore this request
Irrelevant, but I think because it's obvious you're misunderstanding copyright, or because you wrote such a big paragraph with many separate points being made that it's a lot of work to reply to. The copyright in his footer is for his IP, it of course would not apply to the content inside a YouTube embed. And it's not IP theft to summarize a video in what is essentially a blog post.
This type of tool could help create much more meaningful blog or website type content to build a mailing list around the community.
The problem with this thought process is that the creator has been taken out of the equation without actually talking to them about it, and when that question gets raised, there just seems to be lots of pushback, likely in part because it touches on the primary complication of LLMs (that a whole bunch of copyrighted content is getting siphoned without considering the people who made that information).
In this particular case, this is literally taking the information from that content and presenting it in a format the creator did not agree to, lowering the potential value of the video to end users. It is much closer to violating the creator’s copyright than generative AI often is.
Instead of pushing back, we need to bring the creators into the discussion to ensure this is something they’re OK with.
The creator isn't taken out of the equation at all - their content is being promoted and they're getting ad revenue for views there (as agreed upon in the YouTube terms).
And for the YouTube creator who decided to give their video to YouTube, but doesn't want it shared on third-party sites, YouTube lets them disable embeds.
Putting a YouTube embed, summarizing a YouTube video - neither are "violating the creator's copyright" which they already gave to YouTube anyway.
The problem is 100% the use of LLMs to pull the content in an unsanctioned manner. Considering that YouTube has sanctioned methods to share this information, in the form of transcripts, this directly competes with something that the creators are already making in a not-as-good form.
Additionally, it makes the video less desirable. The embed does not matter; creators allow them for a reason. It is the conversion from video to text in a way that the creators did not ask for and likely do not want.
If the public facing web wasn't crawlable Google and many other things wouldn't be possible. What are you saying that YouTube should not be viewable unless someone is properly authed? Take it up with YouTube - they could require logins to view videos if they wanted but it would be a worse product.
When a user posts something on YouTube and checks "Allow embeds" they have not only given their video to YouTube but are totally cool with people sharing it around. Who are you - their lawyer? Even most YouTube creators do not share your opinion as I can see most are allowing embeds. The point of mentioning embeds is it's both:
1) Credit to the creator, including the revenue share which you were incorrect when you said it lowers their revenues - they still get the ad revenue from an embed
2) An indicator that the creator wants their content to be shared, since they have the option to disable them if they want and choose not to
The adjacent point you seem to be making is that nobody should be allowed to crawl information and present it as their own. But that's what a lot of the internet is. It's what a search engine is, it's the source of most online encyclopedias, news sites, and so-on.
It just doesn't logically follow that if somebody uploads a video to YouTube, that nobody is allowed to summarize it in text form. That's a very normal thing that is done online.
By using LLM he has created a method to literally outclass every video on YouTube. People will not watch the video, because what’s the point, all the information is already there, taken so fully as to likely not pass fair use claims.
Please stop throwing whataboutisms into this argument. You keep doing it, and they aren’t sticking. This is about this specific site, which takes the full content that people make (not a summary, enough so you can follow along without watching the video, which would go beyond fair use), strips out the ads, and puts them into a format the creator didn’t intend. It is not about embeds, it is not about Google, or aggregators, or scrapers. It is not promotional, and nor does it have any side benefits. It is just taking content that isn’t theirs and packaging it as a modest benefit to the end user.
This site is extremely unethical as is, with limited benefit to the people who actually made the content. No sidestepping or whataboutisms will change that.
YouTube channels routinely analyze each other for content and doing it as well “in their own way”
Packaging content in a different way is similar to repurposing content for different social media platforms.
Heck some people share other peoples content on different platforms.
This site is putting a particular lens on a video and sharing the perspective it generates for those who like it.
If it became a product for video creators to generate content for a better description they might never need the site.
When you upload a video to YouTube, you are licensing Google to redistribute a copy of your content at their whims. The uploader agrees to give Google "a worldwide, non-exclusive, royalty-free, sublicensable and transferable license to use, reproduce, distribute, prepare derivative works of, display, and perform" your video.
The video you upload to YouTube isn't yours anymore. You can pretend it is, and play around with it like a little paper doll for all it's worth. You don't own it anymore though, and your right to judge where it is and belongs is stripped the moment you click "Upload".
The outcome is not competing with the source video. Anyone's who's interested in the topic would likely still choose which video they want to delve into further.
Sometimes you want to listen without having to watch.
Other times you want to read a summary to see if it’s worth watching instead of lighting 20 minutes of your life on fire that you’ll never get back.
Time is the ultimate currency and it’s not so bad to consider how to protect it by using it with the length of time you’re choosing to invest.
The email list in that case would belong to whomever owned the site.
Still, a lot of creating is based on other creation.
It’s a reality that this form of a video is akin to taking written notes for it. Maybe what’s upsetting is it’s quite decent at it, perhaps reflecting the work of the developer to get it there. It’s not an easy feat.
Taking notes can’t be illegal and a copyright violation. Neither does expecting people to watch an entire video to recall something make a lot of sense.
If this product provided embeddable summaries for video creators to put into their descriptions it could be pretty useful too to some.
It feels like there is some kind of attachment to video because of how laborious. Making videos easier to create is an area I’m engaged in. It is about to become much easier, and not from the LLM or generative video side.
The process of editing videos is in the stone ages and quite laborious. Lots of opportunity to improve there, and once they become easier those who were able to create before as an advantage will have to make sure their videos are even better.
In the comment you're replying to (mine), I literally wrote:
> YouTube embeds are a different story, that is an official YouTube feature which allows folks to embed a YouTube video on a 3rd party website. I have no problem with that. YouTube even allows creators to enable or disable that on a per video basis. I keep it enabled because it's useful and promotes sharing of the original content as it was delivered.
In your comment you've written things like "Furthermore, the YouTube creator can choose to not let their video be embedded if they wanted that." which implies you haven't read the comment I wrote because I mentioned that. I'm also not in disagreement that embedding is generally useful and I support it fully.
That makes me think you might have replied to the wrong person?
You're implying the embed is being used unethically or in an illegal way that violates copyright - it's not.
> That's why we have licenses and YouTube's default license ensures creators retain ownership of what they upload
Not true: YouTube manages copyright themselves and can even control which countries the video can be viewed in etc. And the rights are given up by the creator when they agree to YouTube's terms which grants YouTube a:
which of course includes their site embed.> I have no problem with that. YouTube even allows creators to enable or disable that on a per video basis. I keep it enabled because it's useful and promotes sharing of the original content as it was delivered
If your problem is the fact that the video is summarized in a blog post, tutorial, article, etc. then I still disagree, and maintain that it doesn't violate any copyright - the purpose of the YouTube embed is to display the content on another website.
> The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
Hugs all around - I'd take it as a positive feedback. Congrats on the launch!