summaryrefslogtreecommitdiff
path: root/internal/media/ffmpeg
AgeCommit message (Collapse)AuthorFiles
2025-09-25[chore] update dependencies (#4458)Libravatar kim1
- codeberg.org/gruf/go-ffmpreg: v0.6.11 -> v0.6.12 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4458 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-09-24[chore] ffmpeg webassembly fiddling (#4454)Libravatar kim1
This disables ffmpeg / ffprobe support on platforms where the wazero compiler is not available. The slowness introduced is hard to pindown for admins (and us!), so it's easier to just return an error message linking to docs on attempted media processing. It still allows the instance to run, just erroring if anything other than a jpeg is attempted to be processed. This should hopefully make it easier for users to notice these issues. Also further locks down our wazero 'allowFiles' fs and other media code to address: https://codeberg.org/superseriousbusiness/gotosocial/issues/4408 relates to: https://codeberg.org/superseriousbusiness/gotosocial/issues/4427 also relates to issues raised in #gotosocial-help on matrix closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4408 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4454 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-04-26[feature] Move to code.superseriousbusiness.orgLibravatar Daenney1
2025-03-10[chore] add warning message when wazero compiler not supported (#3894)Libravatar kim1
* add warning message when wazero compiler not supported, update supported platforms in README * whoops don't return a reason string for arm64, since it should always be supported
2025-02-06temporary fix for tetratelabs/wazero#2365 armv8 compiler support bug (#3741)Libravatar kim1
2025-02-03adds support for build specifically without wasm ffmpeg (#3732)Libravatar kim6
2024-11-06[chore] update go ffmpreg to v0.6.0 (#3515)Libravatar kim3
* pull in go-ffmpreg v0.6.0 * add code comment * grrr linter * set empty module name when calling ffmpeg / ffprobe
2024-11-05previously we were using the ffmpeg runner for ffprobe :facepalm: (#3512)Libravatar kim1
2024-10-28[chore] pull in go-ffmpreg v0.4.1 (#3485)Libravatar kim1
* pull in go-ffmpreg v0.4.1 * bring back GTS_WAZERO_COMPILATION_CACHE
2024-10-14[feature/OFFICIALLY UNSUPPORTED] add nowasm build tag to disable building ↵Libravatar kim8
with WebAssembly (#3429) * add experimental build-tag 'nowasm' which uses local ffmpeg / ffprobe * updated experimental support message * add comment to build script explaining build tag * add nowasm build tags to moderncsqlite files
2024-10-06update go-ffmpreg to v0.3.1 (pulls in latest wazero too) (#3398)Libravatar kim2
2024-08-25[chore] Remove unused "env" module (#3235)Libravatar tobi1
2024-08-23[performance] ffmpeg ffprobe wrapper improvements (#3225)Libravatar kim6
* use a single instance of wazero runtime and compiled modules * remove test output :facepalm: * undo process-{media,emoji} changes * update test runner to include wazero compilation cache * sign drone.yml --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-07-20update go-ffmpreg to v0.2.3 (#3120)Libravatar kim2
2024-07-17[chore] media pipeline improvements (#3110)Libravatar kim1
* don't set emoji / media image paths on failed download, migrate FileType from string to integer * fix incorrect uses of util.PtrOr, fix returned frontend media * fix migration not setting arguments correctly in where clause * fix not providing default with not null column * whoops * ensure a default gets set for media attachment file type * remove the exclusive flag from writing files in disk storage * rename PtrOr -> PtrOrZero, and rename PtrValueOr -> PtrOrValue to match * slight wording changes * use singular / plural word forms (no parentheses), is better for screen readers * update testmodels with unknown media type to have unset file details, update attachment focus handling converting to frontend, update tests * store first instance in ffmpeg wasm pool, fill remaining with closed instances
2024-07-12[feature] support processing of (many) more media types (#3090)Libravatar kim4
* initial work replacing our media decoding / encoding pipeline with ffprobe + ffmpeg * specify the video codec to use when generating static image from emoji * update go-storage library (fixes incompatibility after updating go-iotools) * maintain image aspect ratio when generating a thumbnail for it * update readme to show go-ffmpreg * fix a bunch of media tests, move filesize checking to callers of media manager for more flexibility * remove extra debug from error message * fix up incorrect function signatures * update PutFile to just use regular file copy, as changes are file is on separate partition * fix remaining tests, remove some unneeded tests now we're working with ffmpeg/ffprobe * update more tests, add more code comments * add utilities to generate processed emoji / media outputs * fix remaining tests * add test for opus media file, add license header to utility cmds * limit the number of concurrently available ffmpeg / ffprobe instances * reduce number of instances * further reduce number of instances * fix envparsing test with configuration variables * update docs and configuration with new media-{local,remote}-max-size variables