Sergey Katsubo 4a384bca86
fix(server): opus handling as accepted audio codec in transcode policy (#26736)
* Fix opus handling as accepted audio codec in transcode policy

Fix the issue when opus is among accepted audio codecs in transcode policy
(which is default) but it still triggers transcoding because the codec name
from ffprobe (opus) does not match `libopus` literal in Immich.

Make a distinction between a codec name and encoder:
- codec name: switch to `opus` as the audio codec name. This matches what ffprobe
returns for a media file with opus audio.
- encoder: continue using the `libopus` encoder in ffmpeg.

* Add unit tests for accepted audio codecs and for libopus encoder

* Add db migration for ffmpeg.targetAudioCodec opus

* backward compatibility

* tweak

* noisy logs

* full mapping

* make check happy

* mark deprecated

* update api

* indexOf

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2026-03-07 13:08:42 -05:00
..
2026-02-12 17:59:00 -05:00
2026-02-26 12:14:17 -05:00
2025-08-07 12:00:50 -05:00
2023-04-24 12:49:20 -05:00
2023-04-24 12:49:20 -05:00
2026-02-26 12:14:17 -05:00
2023-04-24 12:49:20 -05:00

Website

This website is built using Docusaurus, a modern static website generator.

Installation

$ pnpm install

Local Development

$ pnpm run start

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

Build

$ pnpm run build

This command generates static content into the build directory and can be served using any static contents hosting service.

Deployment

Using SSH:

$ USE_SSH=true pnpm run deploy

Not using SSH:

$ GIT_USER=<Your GitHub username> pnpm run deploy

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.