Commit graph

51 commits

Author SHA1 Message Date
asonix
7c6112e631 ffprobe: read from file, simplify input-file access 2024-02-25 13:05:47 -06:00
asonix
6fa79b9188 Do more cleanup inline 2023-12-23 11:58:20 -06:00
asonix
c544f167fb Remove unused code 2023-12-22 21:00:37 -06:00
asonix
f61dac8187 Attempt to clean stray magick files
This change sets a unique temp directory for each invocation of imagemagick and spawns a task to remove that directory after the command terminates
2023-11-09 18:20:59 -06:00
asonix
6c921817e1 Enable thumbnailing animations, use dynamic dispatch for a number of async readers 2023-09-24 11:54:16 -05:00
asonix
8921f57a21 Remove Identifier trait, Replace with Arc<str> 2023-09-02 18:38:02 -05:00
asonix
ba3a23ed43 Add error codes 2023-09-01 20:51:01 -05:00
asonix
0c4d632dda Consider timeouts a client error 2023-08-05 16:18:06 -05:00
asonix
fee4ed1e3e Add process timeout 2023-08-05 12:41:06 -05:00
asonix
5e8ab7856d Extract Status errors into command-specific errors 2023-07-17 13:30:08 -05:00
asonix
786f583d98 Add public_url to Store for optional redirects to public object store urls
Add details generation to file migration to set the content-type for uploads
2023-07-14 14:53:37 -05:00
asonix
27451971a6 Fix tests, add animated_webp test 2023-07-13 14:34:40 -05:00
asonix
33b83f97f2 It compiles
Need to reinstate media limits
2023-07-13 13:48:59 -05:00
asonix
ad1837f9dd VERY BROKEN: start replacing parts of pict-rs 2023-07-12 22:12:21 -05:00
asonix
9004ecaadf Better classify process related errors 2023-07-10 15:29:41 -05:00
asonix
7dadbcf3ed Replace UnsupportedFormat error with more helpful errors 2023-07-09 15:07:49 -05:00
asonix
1694f49436 Use json for ffmpeg, imagemagick details parsing 2023-07-09 14:50:58 -05:00
asonix
6d2aef8cc0 Add jpegxl and avif support 2023-06-21 17:05:35 -05:00
asonix
554d852e68 Create unique errors for Repo and Store, separate from UploadError
Add .is_not_found() for Store errors, wire up Object and File storage to properly set NotFound
Allow skipping files that are not found during store migration
2023-06-20 15:59:08 -05:00
asonix
a3a986638d Improve gif handling.
- Allow a fast-path exif cleaning if we'd re-encode a gif to a gif
- Use single-frame palettes to better map transparency from frame to frame

Unrelated:
- decrease ffmpeg logging when creating thumbnails
2023-06-19 14:25:31 -05:00
asonix
cc314c37a6 Use libopus for ffmpeg 2023-03-09 21:29:56 -06:00
asonix
dc27200a35 Add transparency to gifs, rustfmt 2023-02-25 14:31:57 -06:00
asonix
97ba4e806b Clippy 2023-02-25 13:01:55 -06:00
asonix
9a2f846cd1 Detect input transparency for gif/webm 2023-02-25 12:59:47 -06:00
asonix
cc75d2d882 Clippy 2023-02-04 17:54:56 -06:00
asonix
4cc810d372 Add control over gif frame count 2023-02-04 17:52:23 -06:00
asonix
88ca9793e8 s/vrames/frames:v 2023-02-04 17:47:03 -06:00
asonix
40f57be0c7 Allow uploading small gifs 2023-02-04 17:32:36 -06:00
asonix
669b3fb86f Fix webp metadata stripping, more tracing cleanup 2022-10-01 22:47:52 -05:00
asonix
718f09c43a Clean tracing, simplify validation, rename InputFormat -> VideoFormat 2022-10-01 21:17:18 -05:00
asonix
85c5ce955d Clippy 2022-09-30 20:02:46 -05:00
asonix
d86d9a3228 Put proper file extension on videos 2022-09-30 20:00:14 -05:00
asonix
8eb2293808 Enable selecting video and audio codecs for uploaded media 2022-09-30 19:38:11 -05:00
asonix
f4542efcc1 Share ffprobe details code 2022-09-30 17:43:40 -05:00
asonix
17dab63662 Clippy 2022-09-25 20:44:24 -05:00
asonix
80c83eb491 Add ffprobe for details inspection - vastly improve video detection speed 2022-09-25 20:39:09 -05:00
asonix
5449bb82f1 Better identify video uploads with ffprobe 2022-09-25 19:34:51 -05:00
asonix
890478e794 Support audio in uploaded videos, allow webm uploads 2022-09-25 18:16:37 -05:00
Aode (lion)
c80d207a87 Improve tracing 2022-04-06 21:40:49 -05:00
Aode (lion)
37e6b21b55 Fix Range, consolidate errors, test object storage 2022-03-26 20:45:12 -05:00
Aode (lion)
f9f4fc63d6 Optionally support s3-compatible storage (untested) 2021-10-27 23:06:03 -05:00
Aode (lion)
26a2401027 Use tmp files for mp4s 2021-10-23 14:14:12 -05:00
Aode (lion)
48557bc2ea Make pict-rs generic over file storage 2021-10-22 23:48:56 -05:00
Aode (Lion)
e7c3e2c96c Rename stream module 2021-10-20 19:00:41 -05:00
Aode (Lion)
5d3e6f50b3 Instrument better with Tracing 2021-09-13 20:22:42 -05:00
Aode (lion)
e21fd29c09 Drop unneeded dependencies 2021-09-04 14:20:31 -05:00
Aode (lion)
08c3169d3f Fewer streams 2021-09-04 12:42:40 -05:00
Aode (lion)
1119ed740e WIP: Try to pass AsyncRead types around instead of Streams 2021-09-03 19:53:53 -05:00
Aode (Lion)
c1d4e3b87e Start work on piping bytes around from memory instead of going to disk and back 2021-08-30 21:19:47 -05:00
Aode (lion)
edd6bb4a60 Replace all bindings with calls to external binaries 2021-08-28 17:15:14 -05:00