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

New media processing pipeline #680

Merged
merged 59 commits into from
Jan 25, 2025
Merged
Changes from 1 commit
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
bfb875b
Detect media files info using ImageMagick and Ffmpeg
davidmz Dec 17, 2024
ab673f9
Install ImageMagick and Ffmpeg in "checks" workflow machine
davidmz Dec 17, 2024
df2d082
Made filehandle.read call compatible with Node18
davidmz Dec 17, 2024
a0adead
Add files of type "general"
davidmz Dec 17, 2024
95304f2
Use ImageMagick instead of GraphicsMagick
davidmz Dec 23, 2024
d00a7d3
Detect/suggest the original file extension
davidmz Dec 24, 2024
3369e00
Detect rotation for images and video
davidmz Dec 25, 2024
0003efa
Add an algorithm to calculate the size of the preview images
davidmz Dec 26, 2024
05e1c6f
Fix rotated fixture file
davidmz Dec 29, 2024
0b11578
Add types for 'mime-types' package
davidmz Dec 29, 2024
2d19cf8
Use new Attachment fabric, update some tests
davidmz Dec 30, 2024
5723aea
Check the original JPEG for use as a largest preview
davidmz Dec 31, 2024
9bcc83a
Present old 'image_sizes' data in a new format
davidmz Dec 31, 2024
14fa3e4
Update the orientation tests
davidmz Jan 1, 2025
effcafa
Use Attachment.create in user deletion test
davidmz Jan 1, 2025
c0f6924
Refactor the S3 emulation in tests
davidmz Jan 2, 2025
75b92b4
Use Attachment.create everywhere
davidmz Jan 2, 2025
c78578b
Update geometry tests
davidmz Jan 2, 2025
ece30c4
Refactor some path-related work
davidmz Jan 2, 2025
641b0fc
Emit the files list for 'general' file type
davidmz Jan 2, 2025
a914e17
Fix Blob construction
davidmz Jan 2, 2025
ce19809
Remove obsolete test of WebP attachment
davidmz Jan 2, 2025
4bd2ae4
Rewrite the legacy attachment serializer
davidmz Jan 3, 2025
9b65853
Update the createMockAttachmentAsync method
davidmz Jan 3, 2025
0da0f8b
Update OpenGraph image handling
davidmz Jan 3, 2025
858f971
Use the maxSizedVariant helper
davidmz Jan 3, 2025
8be54ab
Check the required attachment subdirectories on server start
davidmz Jan 3, 2025
04a3f87
Remove unused methods of Attachment
davidmz Jan 3, 2025
185353b
Use ImageMagick CLI instead of 'gm' package
davidmz Jan 3, 2025
a52326b
Remove graphicsmagick from the "checks" image
davidmz Jan 3, 2025
f3813e9
Add 'meta' column to the attachments table
davidmz Jan 3, 2025
6fa36ba
Handle multi-frame images properly
davidmz Jan 4, 2025
9041ca0
Extract additional info from AVC files
davidmz Jan 7, 2025
07ebb2b
Add geometry calculations for video
davidmz Jan 8, 2025
480427f
Create previews subdirectories in runtime
davidmz Jan 8, 2025
88d768b
Change the spawnAsync args type, allow to use array of arrays
davidmz Jan 9, 2025
5d6975c
Use smaller video fixtures
davidmz Jan 10, 2025
6427db1
Add video processing (synchronous, for now)
davidmz Jan 10, 2025
04e9b92
Update dockerfile instructions
davidmz Jan 10, 2025
103c9af
Add "width", "height" and "duration" fields to the attachments table
davidmz Jan 10, 2025
c89b41d
Serialize animated images
davidmz Jan 10, 2025
ad99156
Better detect ffprobe errors
davidmz Jan 11, 2025
0283e92
Refactor some types
davidmz Jan 11, 2025
10a5fc5
Early exit on error in ffmpeg
davidmz Jan 11, 2025
cd756fa
Add 'silent' field to attachment metadata
davidmz Jan 11, 2025
0cff487
Allow to limit the number of simultaneous executions for some job types
davidmz Nov 28, 2024
69e40dd
Process video files using deferred job
davidmz Jan 12, 2025
b87ee73
Add image/avif to the inline mime types
davidmz Jan 13, 2025
f17eb2d
Add tests for the file extensions and Content-Disposition's
davidmz Jan 13, 2025
a83133a
Add realtime notification on attachment update
davidmz Jan 14, 2025
41afd8d
Add new (v4) attachment serializer and 'GET /attachments/:attId' method
davidmz Jan 17, 2025
dccca74
Don't check every attachments subdirs on start
davidmz Jan 17, 2025
c0e18bb
Update changelog and api_versions file
davidmz Jan 17, 2025
65517a4
Add a new `GET /vN/attachments/:attId/:type` API endpoint
davidmz Jan 22, 2025
9ec8813
Add a fileSizeLimitByType config option
davidmz Jan 24, 2025
bfd76e1
Limit the user's media in the processing queue
davidmz Jan 24, 2025
686576e
Use 'image' size limit in bookmarklet controller
davidmz Jan 24, 2025
4cc79ed
Use .tmp file for files in progress, add 'inProgress' flag to the v2 …
davidmz Jan 25, 2025
005ca74
Remove packages that are not in use anymore
davidmz Jan 25, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update dockerfile instructions
  • Loading branch information
davidmz committed Jan 10, 2025
commit 04e9b92ca62b323b7e2eca4d439804140c83d4e8
6 changes: 3 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ FROM node:18-bookworm

RUN apt-get update && \
apt-get install -y \
graphicsmagick \
imagemagick \
ffmpeg \
g++ \
git \
make
Expand All @@ -12,8 +13,7 @@ WORKDIR /server

RUN rm -rf node_modules && \
rm -f log/*.log && \
mkdir -p ./public/files/attachments/thumbnails && \
mkdir -p ./public/files/attachments/thumbnails2 && \
mkdir -p ./public/files/attachments && \
yarn install

ENV NODE_ENV production
Expand Down