[HN Gopher] Show HN: A video editing SDK that runs in the browser
___________________________________________________________________
Show HN: A video editing SDK that runs in the browser
Hello HN, Video content is more popular than ever, but the toolkit
for creating such content is a bit behind. You usually have to rely
on a server for rendering whenever you want to create a video
editing project in the browser. This means uploading content to a
server, coding complex filters and effects, and more. My friend
and I spent a year developing an SDK that handles all these
complexities and offers an easy-to-use interface for developers.
The SDK works entirely in the browser, manages memory efficiently
so it can run even on a 7-year-old Android device, supports GLSL
effects and transitions, handles captions, and much more. We also
created a custom video editor UI interface using the SDK to
showcase its speed and flexibility. You can see the video editor
embedded on our landing page: https://rendley.com. As for the tech
stack, the SDK was built using TypeScript, Pixi.js, C++, FFmpeg
WASM, and WebCodecs. The UI interface was created using Stencil.js
and MobX. The SDK is called Rendley SDK and it is live on npm:
https://www.npmjs.com/package/@rendley/sdk To get started, follow
this guide: https://docs.rendley.com/installation If you want to
embed the pre-made interface, follow this guide, it's literally a
few lines of code: https://docs.rendley.com/video-editor If you
have any questions about the product or any feedback, feel free to
write them below, and I'll be more than happy to answer them.
Author : bgrigore
Score : 85 points
Date : 2024-07-30 13:15 UTC (9 hours ago)
(HTM) web link (rendley.com)
(TXT) w3m dump (rendley.com)
| ComputerGuru wrote:
| I've been using the ffmpeg wasm library directly for a couple of
| years now and it's working OK in production though it has a
| number of critical issues that don't show up except in heavy
| testing with a wide variety of inputs and outputs.
|
| Note that a lot of the ffmpeg code is not memory safe and some of
| the file/codec plugins contain memory errors. An out-of-bounds
| read or write will bring down the entire wasm subsystem (and
| does). You have to manually figure out which codecs are actually
| safe to use in the browser, vs which ones are merely exposed by
| the ffmpeg wasm builds.
| bgrigore wrote:
| Yes, you are absolutely correct. It's not sufficient to only
| use ffmpeg.wasm and pass string arguments. There have been many
| use cases where we needed to use libav to implement
| workarounds.
| jonplackett wrote:
| Are there any patent issues with mp4 you had to worry about?
| jitl wrote:
| What is the pricing? I scrolled to the pricing section, but it
| doesn't actually say the price for any of the plans. I'm using an
| iPhone 15 Pro Max. I'm not going to fork over my email address to
| see a price.
| bgrigore wrote:
| The pricing isn't displayed on the website because there isn't
| a one-size-fits-all model. However, you can still try it for
| free, and the website allows you to create a free license.
| burnte wrote:
| > The pricing isn't displayed on the website because there
| isn't a one-size-fits-all model
|
| So how about listing the different sizes for people to see?
| jahewson wrote:
| This is really something you only do if you have a sales
| team. If you're doing sales-led growth then you're probably
| not going to benefit from Show HN and Product Hunt,
| unfortunately (with those being product-led growth). If
| you've not decided which of those two growth models you're
| using I'd recommend choosing - you can only do one well. You
| need a sales team or a price.
| jonplackett wrote:
| What makes you guys so special compared to every website I've
| ever been to of every startup of any size that you can just
| have no pricing and think people will use your product.
|
| I was excited to try this but I'm not getting started with
| something even for 5 minutes without knowing what I'm getting
| myself in for.
| nikshepsvn wrote:
| this 100%, i was going to add this to a product and pay for
| it, but having to go through a conversation, justify my use
| is low, negotiate the price etc. makes me triple-think
| using you guys. the product is awesome but you are killing
| growth with this pricing
| jonplackett wrote:
| Also - if you aren't going to show pricing. Maybe don't
| have a page called 'pricing' ?
| elintknower wrote:
| Is this using ffmpeg wasm?
| bgrigore wrote:
| Yes, it's ffmpeg.wasm with some modifications. We also
| implemented some of the functionality using libav directly.
| samradelie wrote:
| did you use WORKER_FS to get around the 4GB limit? Years ago
| I was playing with this and encountered issues with large
| files.
| jonplackett wrote:
| How are you dealing with mp4 encode patents. Is there any
| issue with those? I remember that being a problem at some
| point. Someone correct me if this is no longer an issue.
| FireInsight wrote:
| Can't log in; user already exists.
| bgrigore wrote:
| I have responded to your support ticket. Please let us know if
| you would like any further actions to be taken.
| sberder wrote:
| I'm wondering about the claim of open source when there are no
| public repositories in your github account...
| bgrigore wrote:
| Yes, there are none at the moment, however, we plan on open-
| sourcing filters, effects, transitions, and components needed
| to build UI interfaces faster.
| strongpigeon wrote:
| The product looks pretty good, but it feels a bit "bait-and-
| switch"-y to put "Open Source" on the landing page when it
| really isn't.
| truckerbill wrote:
| What are you using Pixi.js for in this case? Good luck with the
| launch!
| bgrigore wrote:
| Thanks! We are using Pixi.js to create the composition on the
| WebGL canvas
| justusm wrote:
| This is really cool - I'm currently building something similar
| (open source) with Revideo
| (https://github.com/redotvideo/revideo) - we also build on top of
| the webcodecs API, the only part of the export that is still done
| on the server is audio processing.
|
| It seems pretty unconventional to offer an sdk where people have
| to enter a license key, but I understand that it's hard to
| monetize differently when one of your key features is that you
| want to enable client-side rendering (not saying that this is bad
| - I relate to the challenge since we are offering a cloud
| rendering service and at some point when webcodecs is supported
| in all browsers, it might make sense to run revideo purely on a
| client device as well).
| bgrigore wrote:
| Thanks! I checked out revideo a while ago, and you guys are
| doing a fantastic job!
|
| I don't think it's unconventional for SDKs to require a license
| key. It's a common practice for many products.
|
| To address the use case where WebCodecs is not available, we've
| implemented a rendering mechanism based on FFmpeg. Although
| it's slower, it does the job (It's not enabled in the current
| version of the package)
|
| Cloud rendering is a great approach for certain scenarios, and
| we also plan to support that option in the future.
| justusm wrote:
| Thanks a lot, really appreciate it! Re pricing: this might be
| my own ignorance then.
|
| I will definitely follow you guys, I'm curious how rendley
| will develop :) Good luck!
| nikshepsvn wrote:
| how does revideo compare/differ to remotion?
| justusm wrote:
| Hey! I'm pasting a slightly modified comment from our
| previous Show HN
| (https://news.ycombinator.com/item?id=40646741), where I
| explained this in detail:
|
| Revideo is different to Remotion.dev in a couple of ways:
| First, we use generator functions to describe the flow of
| animations - every yield within the generator function
| corresponds to a frame in the video. As a result, our API is
| very imperative (animations described at the start of the
| function appear in the start of the video, animations
| described at the end appear at the end). Remotion's React-
| based approach is rather declarative - it gives you a frame
| number and lets you describe what your video should look like
| as a function of the frame number. Personally, we find our
| "procedural" API a bit more intuitive and easier to write
| than the declarative approach, but we might obviously be
| biased here.
|
| Secondly, we render to the HTML canvas instead of the DOM.
| Both have advantages and disadvantages: Rendering to the DOM
| lets you define animations using CSS, which most programmers
| are already familiar with. On the other hand, an advantage of
| using the HTML canvas is that it should allow you to render
| entirely in the browser rather than using server-side
| rendering, as you can simply capture the current canvas using
| canvas.toBlob(). We have not yet implemented this for
| Revideo, but people in our Discord server have made good
| progress towards it. Also, capturing the frame for videos is
| a bit faster than screenshotting it (as Remotion does), so
| our rendering speeds are faster than Remotion's.
|
| Thirdly, we're MIT licensed while Remotion is not FOSS (if
| your company has more than three employees, you need to
| purchase a company license to use Remotion). This was one of
| our original motivations to build our own video editing
| framework while we were building video products.
| jonplackett wrote:
| Pricing page... with no bloody pricing?
|
| Now I've also logged in to see if I get pricing. Still no
| pricing. Seriously guys. This is just silly.
| nikshepsvn wrote:
| please take this as feedback and add pricing, this is silly
| thih9 wrote:
| Same. In my case - I will not log in ("By continuing, you
| agree to our Terms of Service and Privacy Policy.") unless I
| can check the price.
| jonplackett wrote:
| Update:
|
| Thank you for your interest in Rendley SDK! We don't have a
| one-size-fits-all price that applies to all companies, but if
| we were to average the costs, our pricing would be around
| $5,000 per year for the SDK, Video Editor interface, and a
| growing package of filters, effects, and transitions.
| nikshepsvn wrote:
| same, extremely disappointed. they are losing out on so much
| traffic with that pricing. I hope we get more competition in
| this space as AI makes producing code easier. I don't want to
| implement an editor from scratch but I also don't wanna fork
| over $5k/yr minimum
| nikshepsvn wrote:
| please make pricing transparent, you are killing growth by having
| users email you to use your product
| Andrews54757 wrote:
| The "get in touch" button on blog.rendley.com leads to a 404
| page: https://rendley.com/try-for-free
| kevingadd wrote:
| Is your license compatible with FFmpeg's LGPL? The license on the
| NPM package looks weird so I'm curious whether it's compatible.
| dtonon wrote:
| Forced to sign up with GitHub or Google? No, thanks.
___________________________________________________________________
(page generated 2024-07-30 23:00 UTC)