[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)