videotranscode.space
videotranscode.space copied to clipboard
Safari Support
Are there any plans to support Safari? Are there any ways to workaround this?
Hey, @alex-cory the https://caniuse.com/sharedarraybuffer says that it can be enabled on Safari using a flag. This could be a workaround, but let me try to dig up an old mac and see if I can get it to work.
To be specific, mobile Safari.
Hey, @alex-cory not planning to support mobile browsers at this time, there are a couple of reasons for this:
- Almost all of them required flags to be enabled to support the required features
- If getting a user to enable a flag on desktop is hard, it is 10x harder on mobile
- Personally, I don't see the complete use case for modfy on mobile, that is you are not often dealing with formats(they are heavily abstracted away). Most galary apps have some video editing functionality and there are tons of easy to use native apps that can perform the more complex tasks.
That being said, I would love to be able to support mobile sometime in the future, when the browsers natively support the required features.
Related to #87
If you were to try and solve this problem today without SharedArrayBuffer
or Atomics
, what approach would you take? Is it even possible right now? I'm interested in making a PR, but need a little guidance.
Hey, @alex-cory so under the hood for web assembly we use https://github.com/modfy/ffmpeg.wasm a forked version of https://github.com/ffmpegwasm/ffmpeg.wasm.
Here we have made some change with promise handling and added certain headers to support firefox (the original repository only supports chrome). I would have to look into how to re-engineer the project to not use SharedArrayBuffer
but I assume it would be quite a large task.
Few other things to note, SharedArrayBuffer
was disabled due to Spectre and Meltdown, and its meant to be a temporary patch, so we can expect default support sometime in the future(yes, browser features are super slow). Finally, if I am not wrong SharedArrayBuffer
has to do with Wasm Multithreading too, so we can except a decent performance hit without using it.
That being said, I am totally down to collaborate on trying to build a solution without SharedArrayBuffer
to support more platforms. If you are open to it, I can send a calendy link on Twitter and we can setup a call where I can better explain the project
I will definitely take you up on this, I just need a little time. I will comment back here when I'm ready.