Skip to content

Wrapping media processing libraries #7

@daenney

Description

@daenney

First of, apologies for raising this as an issue but I couldn't find a good place to reach out about this.

I'm one of the GoToSocial developers (an activitypub server in Go) and on principle we don't use CGo anywhere in order to simplify self-hosting (we can ship a static binary). We recently undertook integrating @ncruces go-sqlite3 as an alternative to the C-to-Go transpiled SQLite driver and we've been very happy with the result. That's what brought the wasilibs organisation to our attention.

One other area where CGo is helpful is image and video manipulation (transcoding, wiping out certain metadata etc.). So far we've implemented native solutions in Go for certain formats to do some basic metadata redaction but we don't support some image and video formats. Keeping up with this is hard too and many image, video and container formats have big and dense specifications.

What I've been wondering is if you believe it might be possible to take tools like ffmpeg and imagemagick and make them accessible through WASM? Both tools have some library dependencies of their own for various formats too.

I want to stress here that I'm not asking for anyone to do the work. I'm only trying to understand if embarking on this might actually lead to a good outcome or if there's fundamental issues that make it infeasible for this kind of library and utility to be used through WASM with the current state of affairs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions