Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

*.video* -> *.mp4 #31

Open
insyri opened this issue Oct 4, 2021 · 13 comments
Open

*.video* -> *.mp4 #31

insyri opened this issue Oct 4, 2021 · 13 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@insyri
Copy link
Member

insyri commented Oct 4, 2021

changes x video format files to mp4 so it can be previewable in discord, this would either use ffmpeg, ffmpeg js, or an api.

make inline reply, file upload, and file link as args.

@insyri insyri added the enhancement New feature or request label Oct 4, 2021
@insyri insyri added this to the Version 1.0.0 milestone Oct 4, 2021
@insyri insyri changed the title \*.video\* -> \*.mp4 *.video* -> *.mp4 Oct 4, 2021
@insyri
Copy link
Member Author

insyri commented Oct 4, 2021

We'll create three branches using ffmpeg.wasm, ffmpeg using exec(), and cloudconvert api and see which performs faster or better using performance.now().

@dowoge
Copy link
Member

dowoge commented Jan 11, 2022

id assume ffmpeg will always be faster since you wont need to upload -> download -> upload or maybe i am thinking of it wrong

@insyri
Copy link
Member Author

insyri commented Jan 11, 2022

ffmpeg is the tool that would be used to transform the video format from any video format (excluding mp4) to mp4.

The comparison states to use 1 of three methods, local computation, raw local computation, and an external API.
The difference between raw and non-raw is the way of connection, one method uses a prebuilt library to interact with ffmpeg -which would be not raw, and the other being to interact with ffmpeg directly through the CLI.

The fallback of the API is that it might be rate-limiting either the hosting-providers internet bandwidth or the API usage rate (like how many times you can use it in x time). The advantage of using the API would confirm an approximate constant speed of delivery since the API uses more optimized or faster computer hardware, where as the hosting provider's hardware won't be as optimized or as fast. Upload size would also be similarly consistent since Discord provides a smaller upload size of 8 Mb for default users (this is an advantage because there are more non-nitro users than nitro users).

@dowoge
Copy link
Member

dowoge commented Jan 11, 2022

bro wrote a whole essay dawg i know what ffmpeg is im just saying that in terms of steps to do what u wanna do using ffmpeg directly would be faster but maybe using their API would be more consistent and "known" outcome yep Gg

@insyri
Copy link
Member Author

insyri commented Jan 11, 2022

gg

@trueharuu trueharuu removed their assignment Jan 21, 2022
@insyri
Copy link
Member Author

insyri commented Jan 21, 2022

WTF!!1

@jaydns
Copy link
Contributor

jaydns commented Jan 21, 2022

RIP.

@jaydns
Copy link
Contributor

jaydns commented Jan 21, 2022

imo id remove ffmpeg with exec from consideration cause people may find sussy exploits with exec

@insyri
Copy link
Member Author

insyri commented Jan 21, 2022

I mean maybe, all it does is download the file and put it through ffmpeg, the exec part would just be the downloaded file name and again we can just rename or sanitize it.
Looking at the library it doesn't look like dogshit and it doesn't use exec since its wasm, so this makes sense.

@trueharuu
Copy link
Member

dont download untrusted files idiot

@insyri
Copy link
Member Author

insyri commented Jan 26, 2022

could containerize the process

@jaydns
Copy link
Contributor

jaydns commented Jan 26, 2022

wasm is also sandboxed so if you use ffmpeg wasm you'd also probably be fine

@insyri
Copy link
Member Author

insyri commented Jan 26, 2022

O_O

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants