linuxserver / docker-jellyfin

GNU General Public License v3.0
661 stars 100 forks source link

[BUG] Missing Year suffix for recorded movies #258

Closed carsten-re closed 3 months ago

carsten-re commented 3 months ago

Is there an existing issue for this?

Current Behavior

I'm wondering that new recorded movies will not have the "year" suffix in folder and file name.

Today, a movie will be saved in this naming convention: "movie name/movie name date and time of recording.ts" Example: "Uhrwerk Orange/Uhrwerk Orange 2024_07_01_22_05_00.ts"

Expected Behavior

In a previous release, a recorded movie was saved on disk in this way: "moviename (year of the movie)/moviename (year of the movie).ts"

Example: "A Clockwork Orange (1971)/A Clockwork Orange (1971).ts"

Steps To Reproduce

Record a movie with LiveTV. XMLTV is being used, EPG shows all information (incl. the year of the movie).

Environment

- OS: Debian 12
- How docker service was installed:
apt install docker

CPU architecture

x86-64

Docker creation

---
version: "2.1"
services:
  jellyfin:
    image: lscr.io/linuxserver/jellyfin:latest
    container_name: jellyfin
    hostname: jellyfin
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Berlin
      - JELLYFIN_PublishedServerUrl=jf.xyz
    group_add:
      - "103"
    devices:
      - /dev/dri/renderD128:/dev/dri/renderD128
    networks:
      - proxy
    dns:
      - 192.168.178.99
    ports:
      - 80:80
      - 443:443
      - 1900:1900/udp
      - 7359:7359/udp
      - 8096:8096
      - 8920:8920
    volumes:
      - /mnt/media/jellyfin/config:/config
      - /mnt/share/smb/serien:/data/serien
      - /mnt/share/smb/aufnahmen:/data/aufnahmen
      - /mnt/share/smb/_export:/data/_export
      - /mnt/share/ds:/data/dsm-video
    restart: unless-stopped

networks:
  proxy:
    external: true

Container logs

GID/UID

───────────────────────────────────────

User UID:    1000

User GID:    1000

───────────────────────────────────────

**** creating video group videoeyao with id 103 ****

**** adding /dev/dri/renderD128 to video group videoeyao with id 103 ****

[custom-init] No custom files found, skipping...

[09:14:35] [INF] [1] Main: Jellyfin version: 10.9.7

[09:14:35] [INF] [1] Main: Environment Variables: ["[JELLYFIN_LOG_DIR, /config/log]", "[JELLYFIN_PublishedServerUrl, jf.lcl.cr-it.net]", "[JELLYFIN_CACHE_DIR, /config/cache]", "[JELLYFIN_DATA_DIR, /config/data]", "[JELLYFIN_CONFIG_DIR, /config]", "[JELLYFIN_WEB_DIR, /usr/share/jellyfin/web]"]

[09:14:35] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"]

[09:14:35] [INF] [1] Main: Operating system: Ubuntu 22.04.4 LTS

[09:14:35] [INF] [1] Main: Architecture: X64

[09:14:35] [INF] [1] Main: 64-Bit Process: True

[09:14:35] [INF] [1] Main: User Interactive: True

[09:14:35] [INF] [1] Main: Processor count: 2

[09:14:35] [INF] [1] Main: Program data path: /config/data

[09:14:35] [INF] [1] Main: Log directory path: /config/log

[09:14:35] [INF] [1] Main: Config directory path: /config

[09:14:35] [INF] [1] Main: Cache path: /config/cache

[09:14:35] [INF] [1] Main: Web resources path: /usr/share/jellyfin/web

[09:14:35] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/

[09:14:35] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: /config/cache

[09:14:36] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.Dlna, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/DLNA_2.0.0.0/Jellyfin.Plugin.Dlna.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.Dlna.Playback, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/DLNA_2.0.0.0/Jellyfin.Plugin.Dlna.Playback.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.Dlna.Model, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/DLNA_2.0.0.0/Jellyfin.Plugin.Dlna.Model.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Rssdp, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/DLNA_2.0.0.0/Rssdp.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly InfuseSync, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/InfuseSync_1.5.0.0/InfuseSync.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.PlaybackReporting, Version=14.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/Playback Reporting_14.0.0.0/Jellyfin.Plugin.PlaybackReporting.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly SQLitePCL.pretty, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null from /config/data/plugins/Playback Reporting_14.0.0.0/SQLitePCL.pretty.dll

[09:14:36] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Skipping disabled plugin 10.0.0.0 of TheTVDB 

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN subnets: ["172.16.1.0/24", "192.168.178.0/24"]

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions: []

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Used LAN subnets: ["172.16.1.0/24", "192.168.178.0/24"]

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered interface addresses: ["127.0.0.1", "172.18.0.4"]

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Bind Addresses ["0.0.0.0"]

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Remote IP filter is Allowlist

[09:14:36] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered subnets: []

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: DLNA 2.0.0.0

[09:14:42] [INF] [1] InfuseSync.Plugin: InfuseSync is starting.

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: InfuseSync 1.5.0.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Playback Reporting 14.0.0.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: TMDb 10.9.7.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Studio Images 10.9.7.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: OMDb 10.9.7.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: MusicBrainz 10.9.7.0

[09:14:42] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AudioDB 10.9.7.0

[09:14:42] [WRN] [1] Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository: Using an in-memory repository. Keys will not be persisted to storage.

[09:14:42] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailable when application exits.

[09:14:42] [INF] [1] Main: Kestrel is listening on 0.0.0.0

[09:14:42] [ERR] [1] Jellyfin.Plugin.Dlna.Main.DlnaHost: The DLNA specification does not support HTTPS.

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.EventMonitorEntryPoint: EventMonitorEntryPoint Running

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Sqlite version: 3.41.2

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Sqlite compiler options: ATOMIC_INTRINSICS=1,COMPILER=gcc-9.4.0,DEFAULT_AUTOVACUUM,DEFAULT_CACHE_SIZE=-2000,DEFAULT_FILE_FORMAT=4,DEFAULT_FOREIGN_KEYS,DEFAULT_JOURNAL_SIZE_LIMIT=-1,DEFAULT_MMAP_SIZE=0,DEFAULT_PAGE_SIZE=4096,DEFAULT_PCACHE_INITSZ=20,DEFAULT_RECURSIVE_TRIGGERS,DEFAULT_SECTOR_SIZE=4096,DEFAULT_SYNCHRONOUS=2,DEFAULT_WAL_AUTOCHECKPOINT=1000,DEFAULT_WAL_SYNCHRONOUS=2,DEFAULT_WORKER_THREADS=0,ENABLE_COLUMN_METADATA,ENABLE_FTS3,ENABLE_FTS3_PARENTHESIS,ENABLE_FTS4,ENABLE_FTS5,ENABLE_MATH_FUNCTIONS,ENABLE_RTREE,ENABLE_SNAPSHOT,MALLOC_SOFT_LIMIT=1024,MAX_ATTACHED=10,MAX_COLUMN=2000,MAX_COMPOUND_SELECT=500,MAX_DEFAULT_PAGE_SIZE=8192,MAX_EXPR_DEPTH=1000,MAX_FUNCTION_ARG=127,MAX_LENGTH=1000000000,MAX_LIKE_PATTERN_LENGTH=50000,MAX_MMAP_SIZE=0x7fff0000,MAX_PAGE_COUNT=1073741823,MAX_PAGE_SIZE=65536,MAX_SQL_LENGTH=1000000000,MAX_TRIGGER_DEPTH=1000,MAX_VARIABLE_NUMBER=32766,MAX_VDBE_OP=250000000,MAX_WORKER_THREADS=8,MUTEX_PTHREADS,SYSTEM_MALLOC,TEMP_STORE=1,THREADSAFE=1

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Default journal_mode for /config/data/data/playback_reporting.db is delete

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Initialize PlaybackActivity Repository

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: PlaybackActivity table schema OK

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Expected : datecreated:datetime|userid:text|itemid:text|itemtype:text|itemname:text|playbackmethod:text|clientname:text|devicename:text|playduration:int

[09:14:42] [INF] [1] Jellyfin.Plugin.PlaybackReporting.Data.ActivityRepository: Received : datecreated:datetime|userid:text|itemid:text|itemtype:text|itemname:text|playbackmethod:text|clientname:text|devicename:text|playduration:int

[09:14:42] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: No XML encryptor configured. Key {647c773f-d1ca-4a3c-99c7-b362e501da66} may be persisted to storage in unencrypted form.

[09:14:42] [INF] [1] Jellyfin.LiveTv.Timers.TimerManager: Loading live tv data from /config/data/data/livetv/timers.json

[09:14:43] [INF] [1] Jellyfin.LiveTv.Timers.TimerManager: Creating recording timer for 349ba5202f534e42365c824ef8524cb3, Faking Bad - Besser als die Wahrheit 1x02 on channel m3u_24462f44f985b8351aeb9ca2ee655bafcf9ab84ee54d25868f1e88054c22cbc9. Timer will fire in 6573.282989286667 minutes at 07/18/2024 20:50:00

[09:14:44] [WRN] [1] Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware: The WebRootPath was not found: /run/s6-rc:s6-rc-init:eIBfJC/servicedirs/svc-jellyfin/wwwroot. Static files may be unavailable.

[09:14:45] [INF] [10] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /config/data/data/collections

[09:14:45] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/aufnahmen

[09:14:45] [INF] [1] Emby.Server.Implementations.ApplicationHost: Running startup tasks

[09:14:45] [INF] [1] InfuseSync.ScheduledTasks.HousekeepingTask: Infuse housekeeping task scheduled.

[09:14:45] [INF] [1] Jellyfin.Plugin.PlaybackReporting.TaskCleanDb: TaskCleanDb Loaded

[09:14:45] [INF] [1] Jellyfin.Plugin.PlaybackReporting.TaskRunBackup: TaskRunBackup Loaded

[09:14:45] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Konzert-Filme

[09:14:45] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Remove Old Cached Data set to fire at 2024-07-15 00:01:00.000 +02:00, which is 14:46:14.7081406 from now.

[09:14:45] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Playback Reporting Trim Db set to fire at 2024-07-15 00:00:00.000 +02:00, which is 14:45:14.7049247 from now.

[09:14:45] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Konzerte

[09:14:45] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Trickplay-Bilder generieren set to fire at 2024-07-15 03:00:00.000 +02:00, which is 17:45:14.6926932 from now.

[09:14:45] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Extrahiere Kapitel-Bilder set to fire at 2024-07-15 02:00:00.000 +02:00, which is 16:45:14.6862639 from now.

[09:14:45] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Keyframe-Extraktor set to fire at 2024-07-15 00:15:00.000 +02:00, which is 15:00:14.6541324 from now.

[09:14:45] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Märchen

[09:14:45] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Found ffmpeg version 6.0.1

[09:14:45] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Mediencenter

[09:14:45] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available decoders: ["libdav1d", "av1", "av1_cuvid", "av1_qsv", "h264", "h264_qsv", "h264_cuvid", "hevc", "hevc_qsv", "hevc_cuvid", "mpeg2video", "mpeg2_qsv", "mpeg2_cuvid", "mpeg4", "mpeg4_cuvid", "msmpeg4", "vc1_qsv", "vc1_cuvid", "vp8", "libvpx", "vp8_cuvid", "vp8_qsv", "vp9", "libvpx-vp9", "vp9_cuvid", "vp9_qsv", "aac", "ac3", "dca", "flac", "mp3", "truehd"]

[09:14:45] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available encoders: ["libsvtav1", "av1_nvenc", "av1_qsv", "av1_amf", "av1_vaapi", "libx264", "h264_amf", "h264_nvenc", "h264_qsv", "h264_v4l2m2m", "h264_vaapi", "libx265", "hevc_amf", "hevc_nvenc", "hevc_qsv", "hevc_vaapi", "mjpeg_qsv", "mjpeg_vaapi", "mpeg4", "msmpeg4", "libvpx", "libvpx-vp9", "aac", "libfdk_aac", "ac3", "alac", "dca", "flac", "libmp3lame", "libopus", "truehd", "libvorbis", "srt"]

[09:14:45] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available filters: ["deinterlace_qsv", "deinterlace_vaapi", "hwupload_cuda", "hwupload_vaapi", "libplacebo", "overlay_opencl", "overlay_qsv", "overlay_vaapi", "overlay_vulkan", "overlay_cuda", "procamp_vaapi", "scale_cuda", "scale_opencl", "scale_qsv", "scale_vaapi", "scale_vulkan", "tonemap_cuda", "tonemap_opencl", "tonemap_vaapi", "vpp_qsv", "yadif_cuda", "zscale", "alphasrc"]

[09:14:45] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available hwaccel types: ["cuda", "vaapi", "qsv", "drm", "opencl", "vulkan"]

[09:14:46] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Serie

[09:14:46] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Tele-Gym

[09:14:46] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/Feiern

[09:14:46] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/serien

[09:14:46] [INF] [10] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /data/dsm-video/_Filme

[09:14:47] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: VAAPI device /dev/dri/renderD128 is Intel GPU (iHD)

[09:14:47] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: VAAPI device /dev/dri/renderD128 supports Vulkan DRM interop

[09:14:47] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: FFmpeg: /usr/lib/jellyfin-ffmpeg/ffmpeg

[09:14:47] [INF] [1] Emby.Server.Implementations.ApplicationHost: ServerId: 3d58201e40e347b7bce1f94523affa2a

[09:14:47] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete

[09:14:47] [INF] [1] Main: Startup complete 0:00:12.5427796

[09:14:48] [INF] [8] Emby.Server.Implementations.ScheduledTasks.TaskManager: Sammlungen und Playlisten aufräumen Completed after 0 minute(s) and 0 seconds

[09:14:49] [INF] [8] Emby.Server.Implementations.ScheduledTasks.TaskManager: Aktualisiere Plugins Completed after 0 minute(s) and 1 seconds
github-actions[bot] commented 3 months ago

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

Roxedus commented 3 months ago

This is most likely a application matter, and therefore unrelated to the container.