TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Video Transcoder on the browser using WASM

129 pointsby cryogenicplanetover 4 years ago

8 comments

cryogenicplanetover 4 years ago
Hello HN<p>Modfy is a purely browser-based privacy-first video tool capable of performing tasks like converting, compression, etc without uploading your files.<p>I thought it would be cool to process video in the browser using Web Assembly and FFmpeg<p>The project is also open source and based on <a href="https:&#x2F;&#x2F;github.com&#x2F;ffmpegwasm&#x2F;ffmpeg.wasm" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ffmpegwasm&#x2F;ffmpeg.wasm</a><p>Let me know what you think!
评论 #24589757 未加载
评论 #24589047 未加载
评论 #24590830 未加载
评论 #24592764 未加载
kevincoxover 4 years ago
This is a real cool tool and I would love to see more simple tools client-side only. However I have serious concerns about the performance. When developing a solver (<a href="https:&#x2F;&#x2F;ricochetrobots.kevincox.ca&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ricochetrobots.kevincox.ca&#x2F;</a>) I found that compared to the native performance running it in WASM was ~2x slower. (Running it on a phone compared to a laptop was another ~2x). However I doubt the native compiler was using large amounts of SIMD. IIUC video encoding often will use a large amount of SIMD instructions so I would expect the slowdown to be worse.<p>On the other hand SIMD support in WASM is in progress: <a href="https:&#x2F;&#x2F;www.chromestatus.com&#x2F;feature&#x2F;6533147810332672" rel="nofollow">https:&#x2F;&#x2F;www.chromestatus.com&#x2F;feature&#x2F;6533147810332672</a> (preview available on chromium)
评论 #24589284 未加载
评论 #24589219 未加载
评论 #24595279 未加载
TorchAtlasover 4 years ago
This is very interesting! Would definitely be useful non-technical users. I have a few UX concerns, though.<p>- By default, it&#x27;s set to <i>All Features</i> instead of <i>Basic Features</i><p>- The app repeatedly says it doesn&#x27;t upload your files, yet there&#x27;s a big button in the app saying <i>Upload File</i>. Perhaps &quot;Your files are never uploaded&quot; should be reworded to something like &quot;Your files never leave your device&quot;?<p>- It also was not obvious how to get started with the app. Perhaps some text could be added to the play button?
评论 #24589894 未加载
评论 #24590987 未加载
alfgover 4 years ago
This is pretty cool. I&#x27;ve also been playing around in this area lately and noticed there&#x27;s still a drastic performance hit. But seems to work great for smaller files.<p>Question: Are you compiling FFmpeg to WASM, or FFMpeg&#x27;s libav and interfacing with that directly?<p>Also for anyone curious, the author of ffmpeg.wasm[1] has an excellent guide on compiling FFmpeg to WASM:<p><a href="https:&#x2F;&#x2F;itnext.io&#x2F;build-ffmpeg-webassembly-version-ffmpeg-js-part-1-preparation-ed12bf4c8fac" rel="nofollow">https:&#x2F;&#x2F;itnext.io&#x2F;build-ffmpeg-webassembly-version-ffmpeg-js...</a><p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;ffmpegwasm&#x2F;ffmpeg.wasm" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ffmpegwasm&#x2F;ffmpeg.wasm</a>
cbhlover 4 years ago
On the left side, the label says &quot;Click or Drag to upload&quot;, and at the bottom there is a label saying &quot;Your files are not uploaded anywhere&quot;.<p>If you have control over the left file picker, it might make sense to change the label to &quot;Click or Drag to pick a video&quot; or similar.<p>Really great to see this -- I once worked on a cloud-based video editor and the cost of running ffmpeg in the cloud was surprisingly prohibitive.
评论 #24592644 未加载
jszymborskiover 4 years ago
Wow! I wish I saw this a couple of months ago when I set up server-side transcoding for a client ;_;
hardwaregeekover 4 years ago
I tried running something like this on my own, but I got OOM errors pretty quickly. 4 gigs isn&#x27;t a lot when it comes to video processing. Hopefully wasm64 and WebGPU will make it a lot better.
评论 #24592374 未加载
ggonwebover 4 years ago
Is there a restriction on the size of the file or can it save the contents on the fly to disk like streamsaver?
评论 #24593544 未加载