-1

I'm currently researching any ways to speed up large (~1.5-2Gb) videos from user desktop via browser to the website.

So far I found out that video compression on client sadly is not the best option, although the result is not so bad (19Mb MOV was converted to 6Mb MP4).

Another option is chunking video data into small parts and run on parallel but that seems like default behaviour for browser, so that not actually speeds up anything.

I am not tied with specific front- and backend so any advise is helpful.

John Doe
  • 57
  • 8

2 Answers2

1

I suggest you use the WebAssembly version of FFMPEG, and do video conversion and then upload the converted file to your server, or where ever you want to upload the file

FFMPEG WebAssemably

Using this, you can convert video data on the frontend, and then create a smaller filesize, and you can also drop the resolution to make an even smaller filesize.

Good luck

also here is a demo of the technology

Dean Van Greunen
  • 5,060
  • 2
  • 14
  • 28
  • 1
    Thank you. I've tried demo and got almost 3 minutes conversion time for 13 seconds video (several tries). And I think that my upload speed is not an issure (~50Mbit). what I am doing wrong? – John Doe Jun 04 '22 at 19:11
-1

Buy more bandwidth.

(Original question omitted timing details, so "how much" to buy for the relevant network path is unclear.)

Lower resolution videos at lower frame rate, perhaps in grayscale, would be smaller. You didn't specify what level of video fidelity is required.

https://stackoverflow.com/help/how-to-ask

https://en.wikipedia.org/wiki/Entropy_(information_theory)

J_H
  • 17,926
  • 4
  • 24
  • 44
  • Theoretically sure, more bandwidth is option. And also I can add a node into each city of the planet to reduce delay. There are no precise requirements for timings, faster is better, with keeping the quality. Lower resolutions are better ofc, but as far as I understand it's not okay to convert video file before uploading with browser because it is resource consuming (cpu/ram/time) – John Doe Jun 04 '22 at 18:16
  • Latency has units of seconds. Bandwidth has units of bits per second. For realistic speed-of-light separations between nodes, time to transfer a one-minute or one-hour video file over TCP will be dominated by bandwidth delays rather than by latency. – J_H Jun 04 '22 at 18:18
  • And adding more bandwidth will help the server but not end user to upload faster. – John Doe Jun 04 '22 at 18:23
  • Buying bandwidth for all clients is obviously not a solution. And if the question is unclear, use comments to ask for clarification, not an answer. – gre_gor Jun 04 '22 at 18:38
  • @J_H, I'm terribly sorry for increasing entropy, sir. We all do that. Thank you for reply anyway. – John Doe Jun 04 '22 at 18:54