Show HN: Video editor app that generates FFmpeg commands

(newbeelearn.com)

146 points | by pdyc 7 days ago ago

32 comments

  • pdyc 6 days ago

    Added support for audio as well both for adding audio files and playback of audio within video in preview. Now the app size is whooping 350KB.

  • nadermx 6 days ago

    This is marvelous. Any thoughts on open sourcing it?

    • pdyc 5 days ago

      no thoughts but seems like a headache cleaning up code and maintaining it. i will think about it this weekend.

      • j45 5 days ago

        It’s a neat project, something I might use if it was something I could host myself.. I think some ppl would help clean it up.

      • santa_boy 5 days ago

        this is clean ... would love to integrate into my side project if you open source this

      • hmcq6 5 days ago

        Am I tripping or is this Ember?

        would love to see the code either way, seems like an awesome NLE

  • stuaxo 6 days ago

    Wonderful. Finally an ffpeg wrapped I can get behind.

    I wonder what a gstreamer equivalent would be like.

  • factormeta 6 days ago

    Wow!! This is like the pgadmin4 of postgres!!!

    It is much much needed to make ffmepg on par with a video editor!

    • pdyc 6 days ago

      pgadmin is GOAT, i hope this tool lives upto expectation, i have some time today will probably add some more features like export setting and audio support to it.

  • Narciss 6 days ago

    I really love this. I find ffmpeg to be a bit of a pain to work with, but it's so very powerful. This tool might help me craft some cool flows in my app.

    • pdyc 6 days ago

      glad you liked it

  • alexliu518 6 days ago

    Very good application, but it seems that the video cannot be played after uploading

    • pdyc 6 days ago

      you mean in preview player or after encoding using ffmpeg video is unplayable? Can you give some more details about your browser, browser version, os, os version and pc/mobile, file, if its publically available that i can replicate. Any other info to debug would be helpful as well. Last but not the least i hope you have pressed play button and waited for some time like 2-3 seconds.

  • tehwebguy 6 days ago

    Have wanted this exact thing in the past!

  • jslpc 6 days ago

    This is neat.

    While only tangentially related, I dove into a rabbit hole not long ago trying to find the best ffmpeg GUI (that doesn't require Wine or a VM to run on macOS) and found some good stuff. Handbrake [1] is great and uses ffmpeg as part of its backend, but it gets somewhat limited when you start requiring more advanced things like vf chains, scripting/automation, obscure/legacy codec support, or specific hardware acceleration needs. I wanted to find something that gets (close to) as densely packed with features as ffmpeg from the command line, and here's what I found. I'm not going to list all their features and pros/cons, but just let others know about some of these as a starting point.

    I'm not affiliated with any of these programs (Handbrake and ffmpeg included) in any way, I just want to point others in the right direction if they come across this comment.

    StaxRip [2] - One of the most popular and complete options. Seems like one of the the go-tos on the VideoHelp [3] forums for video editing GUIs. Supports AviSynth+ and VapourSynth scripts among other advanced features.

    clever FFmpeg-GUI [4] - Another VideoHelp go-to. I'm not 100% sure if this supports AviSynth/VapourSynth, but it's pretty damn feature-complete as far as ffmpeg goes.

    Shutter Encoder [5] - Probably has the most intuitive UI of the bunch, it feels much closer to a Premiere Pro/Davinci Resolve type program rather than an ffmpeg wrapper, albeit those applications are much more robust for different tasks.

    Hybrid [6] - My favorite out of these, purely because it was easy enough to get running on macOS and didn't sacrifice many ffmpeg features. Also supports AviSynth/VapourSynth.

    Honestly, probably didn't even need to comment this; I wish I had more knowledge about these to share in-depth. If you're serious about video encoding, your best bet is to start learning how to use ffmpeg from the command line anyways, then maybe add AviSynth+/VapourSynth into the mix as you see fit, though those are a good deal more advanced than even ffmpeg. Just my two cents.

    [1] https://handbrake.fr/

    [2] https://github.com/staxrip/staxrip

    [3] https://www.videohelp.com/software/sections/video-encoders-h...

    [4] https://www.videohelp.com/software/clever-FFmpeg-GUI

    [5] https://www.shutterencoder.com/

    [6] https://www.videohelp.com/software/Hybrid

    • drewp 6 days ago

      Can you recommend a tool for dicing up 2h digitizations of VHS tapes? I want to play the 2h video, seek around easily, mark 'chapters' and give them filenames, then do a no-transcode rough cut extraction of each chapter into its own video.

      • wonger_ 5 days ago

        I've been working on a video editor for this use case: https://github.com/wong-justin/vic

        • jazzyjackson 5 days ago

          Interesting approach, i like the aesthetic. When you say 'add audio' is a big task , does this mean the videos after cutting up don't have audio, or just that the preview doesn't have audio? the latter wouldn't be a problem for the use case of slicing up home videos. I have the same task as parent, might have to make a weekend project out of it.

          • wonger_ 5 days ago

            Thanks :) The preview doesn't play audio. But the sliced output has audio.

            The UX should be a lot smoother once I get around to non-blocking inputs and the audio player. For now, futzing around with mpv or a fully-featured video editor might be the way to go.

      • numpad0 4 days ago

        Sounds like a task "easily" done with one massive painful line of `gst-launch-1.0 filesrc ... ! ... ! splitmuxsink`

      • j45 6 days ago

        Is it one continuous file at the moment?

        • drewp 5 days ago

          Yeah, I play a VHS tape and capture the whole thing. Maybe I should be using a scene detector to split files on camera cuts, which would be roughly correct for home movies (but not for TV shows).

      • pdyc 6 days ago

        u can do it with this command, it will just copy audio and video

        ffmpeg -i input.mp4 -ss 00:00:00 -to 0:30:00 -c:v copy -c:a copy chapter1.mkv

        u can just copy paste it 10 times in your text editor, than adjust ss, to times using any video player that can play vhs file.

        • drewp 5 days ago

          That's where I am now. I'd like to optimize out the retyping and duplication of time strings.

          I want the player ui (I'm using mpv) to have a command that:

          1. Remembers the last end time to use as this chapter's start time

          2. Gets the current time to use as chapter-end.

          3. Accepts the name (e.g. 'chapter1').

          4. Runs the ffmpeg copy command.

          Perhaps mpv+lua can already handle this. I see commands for setting a loop range and for calling a subprocess. Not sure how I'd input the chapter name. Maybe I'll have an LLM name the chapters for me :)

    • blooalien 5 days ago

      I've had great luck with HandbrakeCLI for scripted encoding tasks.

    • pdyc 6 days ago

      i needed this before starting the project but than i might not have started it at all :-)

  • prvt 6 days ago

    based

  • yodon 6 days ago

    Professional video UIs pretty much all use dark mode, so light mode UI reads as "non-professional" or "toy" in this space.

    I suspect flipping the UI from light to dark will significantly increase adoption.