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

Client side media compression #16339

Closed
hebrides opened this issue Feb 1, 2021 · 1 comment
Closed

Client side media compression #16339

hebrides opened this issue Feb 1, 2021 · 1 comment

Comments

@hebrides
Copy link

hebrides commented Feb 1, 2021

Is your suggestion related to a problem? Please describe.
When running a Matrix Element on a server, storing media can chew up bandwidth and drive space, especially if you're not integrating AWS or Backblaze into your self-hosted deployment.

Describe the solution you'd like
An optional button to compress media prior to upload on the client.

Describe alternatives you've considered
Considered (also) running a script on the server to compress images through many of the available libraries... that's probably also a good idea for self-hosting too.

Additional context
Proposed UX flow:

image

image

image

Suggest using the following fast, popular library:

https://www.npmjs.com/package/client-compress

Test here: https://davidmoodie.com/client-compress/

Suggest preselected settings for user to reduce cognitive load of choosing compression amount:
compression: .80
max width 2550px (8.5" @ 300 DPI)
max height 3300px (11" @ 300 DPI)

Compressing other media (video, audio) harder, but possible with ffmpeg.wasm: https://github.com/ffmpegwasm/ffmpeg.wasm.

@t3chguy
Copy link
Member

t3chguy commented Feb 1, 2021

Duplicate of #14047

@t3chguy t3chguy marked this as a duplicate of #14047 Feb 1, 2021
@t3chguy t3chguy closed this as completed Feb 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants