mirror of
https://github.com/immich-app/immich.git
synced 2025-11-23 23:00:42 +09:00
feat: add support for JPEG 2000 (#15710)
Some checks are pending
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Docker / pre-job (push) Waiting to run
Docker / Re-Tag ML () (push) Blocked by required conditions
Docker / Re-Tag ML (-armnn) (push) Blocked by required conditions
Docker / Re-Tag ML (-cuda) (push) Blocked by required conditions
Docker / Re-Tag ML (-openvino) (push) Blocked by required conditions
Docker / Re-Tag Server () (push) Blocked by required conditions
Docker / Build and Push ML (armnn, linux/arm64, -armnn) (push) Blocked by required conditions
Docker / Build and Push ML (cpu, linux/amd64,linux/arm64) (push) Blocked by required conditions
Docker / Build and Push ML (cuda, linux/amd64, -cuda) (push) Blocked by required conditions
Docker / Build and Push ML (openvino, linux/amd64, -openvino) (push) Blocked by required conditions
Docker / Build and Push Server (cpu, linux/amd64,linux/arm64) (push) Blocked by required conditions
Docker / Docker Build & Push Server Success (push) Blocked by required conditions
Docker / Docker Build & Push ML Success (push) Blocked by required conditions
Docs build / pre-job (push) Waiting to run
Docs build / Docs Build (push) Blocked by required conditions
Static Code Analysis / pre-job (push) Waiting to run
Static Code Analysis / Run Dart Code Analysis (push) Blocked by required conditions
Test / pre-job (push) Waiting to run
Test / Test & Lint Server (push) Blocked by required conditions
Test / Unit Test CLI (push) Blocked by required conditions
Test / Unit Test CLI (Windows) (push) Blocked by required conditions
Test / Test & Lint Web (push) Blocked by required conditions
Test / End-to-End Lint (push) Blocked by required conditions
Test / Medium Tests (Server) (push) Blocked by required conditions
Test / End-to-End Tests (Server & CLI) (push) Blocked by required conditions
Test / End-to-End Tests (Web) (push) Blocked by required conditions
Test / Unit Test Mobile (push) Blocked by required conditions
Test / Unit Test ML (push) Blocked by required conditions
Test / ShellCheck (push) Waiting to run
Test / OpenAPI Clients (push) Waiting to run
Test / TypeORM Checks (push) Waiting to run
Some checks are pending
CodeQL / Analyze (javascript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
Docker / pre-job (push) Waiting to run
Docker / Re-Tag ML () (push) Blocked by required conditions
Docker / Re-Tag ML (-armnn) (push) Blocked by required conditions
Docker / Re-Tag ML (-cuda) (push) Blocked by required conditions
Docker / Re-Tag ML (-openvino) (push) Blocked by required conditions
Docker / Re-Tag Server () (push) Blocked by required conditions
Docker / Build and Push ML (armnn, linux/arm64, -armnn) (push) Blocked by required conditions
Docker / Build and Push ML (cpu, linux/amd64,linux/arm64) (push) Blocked by required conditions
Docker / Build and Push ML (cuda, linux/amd64, -cuda) (push) Blocked by required conditions
Docker / Build and Push ML (openvino, linux/amd64, -openvino) (push) Blocked by required conditions
Docker / Build and Push Server (cpu, linux/amd64,linux/arm64) (push) Blocked by required conditions
Docker / Docker Build & Push Server Success (push) Blocked by required conditions
Docker / Docker Build & Push ML Success (push) Blocked by required conditions
Docs build / pre-job (push) Waiting to run
Docs build / Docs Build (push) Blocked by required conditions
Static Code Analysis / pre-job (push) Waiting to run
Static Code Analysis / Run Dart Code Analysis (push) Blocked by required conditions
Test / pre-job (push) Waiting to run
Test / Test & Lint Server (push) Blocked by required conditions
Test / Unit Test CLI (push) Blocked by required conditions
Test / Unit Test CLI (Windows) (push) Blocked by required conditions
Test / Test & Lint Web (push) Blocked by required conditions
Test / End-to-End Lint (push) Blocked by required conditions
Test / Medium Tests (Server) (push) Blocked by required conditions
Test / End-to-End Tests (Server & CLI) (push) Blocked by required conditions
Test / End-to-End Tests (Web) (push) Blocked by required conditions
Test / Unit Test Mobile (push) Blocked by required conditions
Test / Unit Test ML (push) Blocked by required conditions
Test / ShellCheck (push) Waiting to run
Test / OpenAPI Clients (push) Waiting to run
Test / TypeORM Checks (push) Waiting to run
* chore(server): add support for .jp2 * docs: add support for .jp2 * chore: fix tests * fix formatting * unify sorting
This commit is contained in:
@@ -8,22 +8,23 @@ For the full list, refer to the [Immich source code](https://github.com/immich-a
|
|||||||
|
|
||||||
## Image formats
|
## Image formats
|
||||||
|
|
||||||
| Format | Extension(s) | Supported? | Notes |
|
| Format | Extension(s) | Supported? | Notes |
|
||||||
| :-------- | :---------------------------- | :----------------: | :-------------- |
|
| :---------- | :---------------------------- | :----------------: | :-------------- |
|
||||||
| `AVIF` | `.avif` | :white_check_mark: | |
|
| `AVIF` | `.avif` | :white_check_mark: | |
|
||||||
| `BMP` | `.bmp` | :white_check_mark: | |
|
| `BMP` | `.bmp` | :white_check_mark: | |
|
||||||
| `GIF` | `.gif` | :white_check_mark: | |
|
| `GIF` | `.gif` | :white_check_mark: | |
|
||||||
| `HEIC` | `.heic` | :white_check_mark: | |
|
| `HEIC` | `.heic` | :white_check_mark: | |
|
||||||
| `HEIF` | `.heif` | :white_check_mark: | |
|
| `HEIF` | `.heif` | :white_check_mark: | |
|
||||||
| `JPEG` | `.webp` `.jpg` `.jpe` `.insp` | :white_check_mark: | |
|
| `JPEG 2000` | `.jp2` | :white_check_mark: | |
|
||||||
| `JPEG XL` | `.jxl` | :white_check_mark: | |
|
| `JPEG` | `.webp` `.jpg` `.jpe` `.insp` | :white_check_mark: | |
|
||||||
| `PNG` | `.webp` | :white_check_mark: | |
|
| `JPEG XL` | `.jxl` | :white_check_mark: | |
|
||||||
| `PSD` | `.psd` | :white_check_mark: | Adobe Photoshop |
|
| `PNG` | `.webp` | :white_check_mark: | |
|
||||||
| `RAW` | `.raw` | :white_check_mark: | |
|
| `PSD` | `.psd` | :white_check_mark: | Adobe Photoshop |
|
||||||
| `RW2` | `.rw2` | :white_check_mark: | |
|
| `RAW` | `.raw` | :white_check_mark: | |
|
||||||
| `SVG` | `.svg` | :white_check_mark: | |
|
| `RW2` | `.rw2` | :white_check_mark: | |
|
||||||
| `TIFF` | `.tif` `.tiff` | :white_check_mark: | |
|
| `SVG` | `.svg` | :white_check_mark: | |
|
||||||
| `WEBP` | `.webp` | :white_check_mark: | |
|
| `TIFF` | `.tif` `.tiff` | :white_check_mark: | |
|
||||||
|
| `WEBP` | `.webp` | :white_check_mark: | |
|
||||||
|
|
||||||
## Video formats
|
## Video formats
|
||||||
|
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ const validImages = [
|
|||||||
'.heic',
|
'.heic',
|
||||||
'.heif',
|
'.heif',
|
||||||
'.iiq',
|
'.iiq',
|
||||||
|
'.jp2',
|
||||||
'.jpeg',
|
'.jpeg',
|
||||||
'.jpg',
|
'.jpg',
|
||||||
'.jxl',
|
'.jxl',
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ describe('mimeTypes', () => {
|
|||||||
{ mimetype: 'image/heif', extension: '.heif' },
|
{ mimetype: 'image/heif', extension: '.heif' },
|
||||||
{ mimetype: 'image/hif', extension: '.hif' },
|
{ mimetype: 'image/hif', extension: '.hif' },
|
||||||
{ mimetype: 'image/iiq', extension: '.iiq' },
|
{ mimetype: 'image/iiq', extension: '.iiq' },
|
||||||
|
{ mimetype: 'image/jp2', extension: '.jp2' },
|
||||||
{ mimetype: 'image/jpeg', extension: '.jpe' },
|
{ mimetype: 'image/jpeg', extension: '.jpe' },
|
||||||
{ mimetype: 'image/jpeg', extension: '.jpeg' },
|
{ mimetype: 'image/jpeg', extension: '.jpeg' },
|
||||||
{ mimetype: 'image/jpeg', extension: '.jpg' },
|
{ mimetype: 'image/jpeg', extension: '.jpg' },
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ const image: Record<string, string[]> = {
|
|||||||
'.heif': ['image/heif'],
|
'.heif': ['image/heif'],
|
||||||
'.hif': ['image/hif'],
|
'.hif': ['image/hif'],
|
||||||
'.insp': ['image/jpeg'],
|
'.insp': ['image/jpeg'],
|
||||||
|
'.jp2': ['image/jp2'],
|
||||||
'.jpe': ['image/jpeg'],
|
'.jpe': ['image/jpeg'],
|
||||||
'.jpeg': ['image/jpeg'],
|
'.jpeg': ['image/jpeg'],
|
||||||
'.jpg': ['image/jpeg'],
|
'.jpg': ['image/jpeg'],
|
||||||
|
|||||||
Reference in New Issue
Block a user