Hacker News new | ask | show | jobs
by wonger_ 764 days ago
Nice, seems like a good learning project. Black screen on mobile was disappointing, but oh well.

I've thought about video editing in the browser before. I understand there's a memory limit, something like 5GB iirc. Have you experienced that yet?

2 comments

You don't need to keep the video files in memory, it's enough to have the javascript File object and then you can read the packets you need on the fly. This way the app's memory usage should be okay.

This is what I did in my similar project (vidmix.app) and seems to be what OP's project is doing, except that they also copy the file to indexedDB to keep it around after the browser tab is closed.

hmm yeah you will probably get black screen when its still loading, it is pretty big because of ffmpeg, probably about 50-80mb to load, ive noticed it myself but its usually couple of seconds, thats error on my end because im handling that loading not right because it should show loading indicator but its not ... but it wont work on mobile anyways, i need to fix problem with drag and drop because its simply not working, i dont exacly remember what was the memory limit, but it depends on the browser, i havent experienced the memory limit yet btw
Ah yep! I just didn't wait long enough. Very cool. Seems like it took a lot of work. And it seems better than other browser-based video editors I've seen in the past, so kudos.

TIL about the webcodecs API to get frames of video and chunks of audio: https://caniuse.com/?search=webcodecs

https://developer.chrome.com/docs/web-platform/best-practice...

yeah sorry for that long loading and not properly showing indicator, it took long time for me to develop especially because I was trying to learn as much so I usually tried doing something myself for weeks and then finally thinking that was idiot move and using library, webcodecs API is super cool, im hoping they will also add muxing and demuxing to api, though I like ffmpeg because im using it more than just muxing and demuxing in this project
Make your loader indicate progress or something. Show what you will be able to do after it is finished loading... do something useful with that time. I thought you got hugged so I backed out after a few seconds.
yeah i will, sorry for that, i thought im handling it correctly but im not, and i was deceived becuase mine was already downloaded and cached so it no longer loaded for that long ...