Skip to content

Transcoded-videos are not getting removed after changing transcode policy to not transcode and running transcode action #27119

Description

@michalw2-alt

I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.

  • Yes

The bug

According to documentation:

"The transcoded version of an asset can be deleted by setting a transcode policy that makes it unnecessary and then running a transcoding job for that asset."
https://docs.immich.app/FAQ/

I have changed Transcode polity to "Don't transcode any videos" and run Transcode videos job for all assets (all button).

Once counter of active jobs dropped to 0 encoded video folder didn't change at all.
I have also used option "Refresh encoded videos" for particular asset (video).

According to logs only small portion of files were deleted and most of them were left without touch.

[Nest] 6  - 03/21/2026, 12:52:27 AM VERBOSE [Microservices:MediaService] Asset 20a35ea0-980a-458f-bb29-81e2633a96eb does not require transcoding based on current policy, skipping
[Nest] 6  - 03/21/2026, 12:52:27 AM     LOG [Microservices:MediaService] Transcoded video exists for asset f96f3695-9562-4000-b073-8e2c2b31f563, but is no longer required. Deleting...
[Nest] 6  - 03/21/2026, 12:52:27 AM VERBOSE [Microservices:MediaService] Asset 1bf201a4-70a7-490d-857c-a6ae0725f631 does not require transcoding based on current policy, skipping
[Nest] 6  - 03/21/2026, 12:52:27 AM VERBOSE [Microservices:MediaService] Asset de65c8e4-e0ba-4572-9239-d7a0c1c144d8 does not require transcoding based on current policy, skipping
[Nest] 6  - 03/21/2026, 12:52:27 AM VERBOSE [Microservices:MediaService] Asset ea5eccd0-acf1-4a0c-924e-d256a130d943 does not require transcoding based on current policy, skipping

Directory size before running All task was 35G.
After running it 34G.

root@server:/mnt/disk/docker/immich/encoded-video# du -sh 26be6059-9796-4b19-9c07-1da5c3a4cc66/
34G 26be6059-9796-4b19-9c07-1da5c3a4cc66/

Therefore there does not seem to be any effective way to free up disk from encoded videos which are no longer needed.
After removing folder manually, I'm getting error while trying to play asset.

[Nest] 23  - 03/20/2026, 10:09:22 PM   ERROR [Api:LoggingRepository~19y7ip6k] Unable to send file: Error: ENOENT: no such file or directory, access '/usr/src/app/upload/encoded-video/26be6059-9796-4b19-9c07-1da5c3a4cc66/81/38/81384280-bd6d-449d-938b-4e9c31a91d73.mp4'
Error: ENOENT: no such file or directory, access '/usr/src/app/upload/encoded-video/26be6059-9796-4b19-9c07-1da5c3a4cc66/81/38/81384280-bd6d-449d-938b-4e9c31a91d73.mp4'

Can you please help in identifying the issue and perhaps provide syntax how to fix database after manual delete?

Thank you in advance
Michael

The OS that Immich Server is running on

Debian 13, docker

Version of Immich Server

2.6.1

Version of Immich Mobile App

2.6.1

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

No response

Your docker-compose.yml content

immich-server:
    container_name: immich-server
    image: ghcr.io/immich-app/immich-server:release
    restart: unless-stopped
    networks:
      - cloudflared
    cpus: "2"
    depends_on:
      - immich-redis
      - immich-postgres
      - immich-machine-learning
    environment:
      DB_HOSTNAME: immich-postgres
      DB_USERNAME: xxxx
      DB_PASSWORD: xxxx
      DB_DATABASE_NAME: immich
      REDIS_HOSTNAME: immich-redis
      IMMICH_MACHINE_LEARNING_URL: http://immich-machine-learning:3003
      PUBLIC_URL: https://xxx
      LOG_LEVEL: debug
      IMMICH_FFMPEG_ACCELERATION: vaapi
      LIBVA_DRIVER_NAME: i965
      LIBVA_DRIVERS_PATH: /usr/lib/x86_64-linux-gnu/dri
      LD_LIBRARY_PATH: /usr/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu/dri
    volumes:
      - /mnt/disk/docker/immich:/usr/src/app/upload
      - /usr/lib/x86_64-linux-gnu/dri:/usr/lib/x86_64-linux-gnu/dri:ro
    devices:
      - /dev/dri:/dev/dri
    group_add:
      - "992"
      - "44"
    ports:
      - "2283:2283"

Your .env content

#empty

Reproduction steps

...

Relevant log output

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions