• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support Troubleshooting Multiple users, separate library, no files shown

     
    • 0 Vote(s) - 0 Average

    Multiple users, separate library, no files shown

    zilexa
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2023 Oct
    Reputation: 0
    #1
    2023-10-28, 10:47 PM (This post was last modified: 2023-10-28, 10:49 PM by zilexa. Edited 1 time in total.)
    I have been using Jellyfin Server for a few years now, with only 1 user.
    The library and folder setup is simple:
    Library "Shows" with folder path: data/Shows/ (this folder contains 1 folder for each TV Show, the folder names and subfolder names (S01, S02 etc) are created automatically by Sonarr).
    Library "Movies" with folder path: data/Movies/ (this folder contains 1 folder for each Movie, the names created automatically by Radarr)

    Now I have created a 2nd user called "Friend". 
    The goal is to simply select a couple of Shows from my storage (data/Shows/) for this user. So I created a 3rd library:
    Library "Friend Shows" with folder path: data/Show/Sometvshowtitle/

    In the Friend user account settings, I only selected access for this library.
    In the 1st user account settings, I unselected this library, only "Shows" and "Movies" are selected.

    The problem:
    Library "Friend Shows" still shows a generic icon, even if I run a scan. And when I login with this user, I see "Friend Shows" but it doesn't have any content.

    How do I fix this? Did I do something wrong or did I miss a step?
    When I check the log, it says it found a duplicate path! And then shows a clear error/crash of a task:

    Code:
    [2023-10-29 00:36:51.513 +02:00] [INF] [99] Emby.Server.Implementations.IO.LibraryMonitor: Stopping directory watching for path "/data/Shows"
    [2023-10-29 00:36:51.514 +02:00] [INF] [99] Emby.Server.Implementations.IO.LibraryMonitor: Stopping directory watching for path "/data/Movies"
    [2023-10-29 00:36:51.519 +02:00] [INF] [146] Emby.Server.Implementations.ScheduledTasks.TaskManager: Queuing task "RefreshMediaLibraryTask"
    [2023-10-29 00:36:51.520 +02:00] [INF] [146] Emby.Server.Implementations.ScheduledTasks.TaskManager: Executing "Scan Media Library"
    [2023-10-29 00:36:51.520 +02:00] [INF] [146] Emby.Server.Implementations.Library.LibraryManager: Validating media library
    [2023-10-29 00:36:51.522 +02:00] [INF] [146] Emby.Server.Implementations.Library.LibraryManager: Found duplicate path: "/data/Shows/Will & Grace"
    [2023-10-29 00:36:51.541 +02:00] [INF] [146] Emby.Server.Implementations.Library.LibraryManager: Found duplicate path: "/data/Shows/Will & Grace"
    [2023-10-29 00:36:51.588 +02:00] [INF] [97] Emby.Server.Implementations.Library.LibraryManager: Found duplicate path: "/data/Shows/Will & Grace"
    [2023-10-29 00:36:52.183 +02:00] [ERR] [97] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:52.345 +02:00] [ERR] [97] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:52.515 +02:00] [ERR] [99] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:52.682 +02:00] [ERR] [99] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:52.848 +02:00] [ERR] [95] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:53.005 +02:00] [ERR] [97] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:53.162 +02:00] [ERR] [95] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:53.318 +02:00] [ERR] [97] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:53.482 +02:00] [ERR] [95] MediaBrowser.Providers.TV.EpisodeMetadataService: Error in "ffprobe"
    MediaBrowser.Common.FfmpegException: ffprobe failed - streams and format are both null.
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.MediaEncoding.Encoder.MediaEncoder.GetMediaInfoInternal(String inputPath, String primaryPath, MediaProtocol protocol, Boolean extractChapters, String probeSizeArgument, Boolean isAudio, Nullable`1 videoType, Boolean forceEnableLogging, CancellationToken cancellationToken)
      at MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo.ProbeVideo[T](T item, MetadataRefreshOptions options, CancellationToken cancellationToken)
      at MediaBrowser.Providers.Manager.MetadataService`2.RunCustomProvider(ICustomMetadataProvider`1 provider, TItemType item, String logName, MetadataRefreshOptions options, RefreshResult refreshResult, CancellationToken cancellationToken)
    [2023-10-29 00:36:56.126 +02:00] [INF] [100] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Scan Media Library" Completed after 0 minute(s) and 4 seconds
    [2023-10-29 00:36:56.126 +02:00] [INF] [100] Emby.Server.Implementations.ScheduledTasks.TaskManager: ExecuteQueuedTasks
    [2023-10-29 00:36:56.148 +02:00] [INF] [97] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/data/Shows"
    [2023-10-29 00:36:56.150 +02:00] [INF] [95] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/data/Movies"
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,375
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #2
    2023-10-28, 11:04 PM
    My first guess is permissions. Make sure that the jellyfin user has read and execute permissions to the library folders and read permissions to the files.

    If you want to create a sort of curated library for your friend, you can use symlinks in the curated library to point to folders in your existing library. You can limit what your friends library has, but also not have to waste space.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    Deleted User

    Unregistered
     
    #3
    2023-10-28, 11:08 PM
    i think you need different parent paths

    if on linux, try this

    since your main shows is data/Shows

    make a new folder at data/FriendShows

    then link paths from data/Shows to data/FriendShows that you want to share

    cd data/FriendShows; ln -s "../Shows/Will & Grace" "Will & Grace"


    im not sure of a native jellyfin way to achieve what you want and i didn't try this because i would have to reconfigure my docker which i am not inclined to do at this time
    zilexa
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2023 Oct
    Reputation: 0
    #4
    2023-10-28, 11:13 PM (This post was last modified: 2023-10-28, 11:14 PM by zilexa. Edited 1 time in total.)
    (2023-10-28, 11:04 PM)TheDreadPirate Wrote: My first guess is permissions.  Make sure that the jellyfin user has read and execute permissions to the library folders and read permissions to the files.

    If you want to create a sort of curated library for your friend, you can use symlinks in the curated library to point to folders in your existing library.  You can limit what your friends library has, but also not have to waste space.

    The first user has no issues.
    When the friend user is set to "enable access to all libraries", it does see all content without a problem --> no permissions issue.
    Also note the log I added, it shows a clear error and crash, not related to permissions.

    I definitely do not want to mess with local folder structure or filesystem. If that is needed, I assume the feature "multiple users" is simply not what I thought it was.. not being able to simply select folder paths to specific tv shows to only share specific shows with a secondary user.

    But the error message "duplicate path" must be an indication of misconfiguration. I just don't understand how. I only added the one mentioned path to "Friend Shows" library.
    zilexa
    Offline

    Junior Member

    Posts: 3
    Threads: 1
    Joined: 2023 Oct
    Reputation: 0
    #5
    2023-10-29, 12:40 PM
    Quote:im not sure of a native jellyfin way to achieve what you want and i didn't try this because i would have to reconfigure my docker which i am not inclined to do at this time

    I am really shocked about this. You are right. The only way to do something as easy as sharing a few items of your library with someone else, is to mess up your folder structure and create symlinks.
    Not sure why we have users, libraries and paths if this doesn't allow me to simply share some library items. Now I need to create new paths and new libraries.

    And I will need to use terminal commands to do this Flushed-face while we have such a pretty GUI, I will need terminal every time I want to share a show, season, episode or movie Weary-face
    Deleted User

    Unregistered
     
    #6
    2023-10-29, 03:40 PM
    perhaps it could be a feature request to the access control section to allow specific items

    at this time, it would be *possible* to use parental controls to block access to specific items in the library based on tags
    - though that is far more cumbersome and really what is needed is the opposite, 'allow access to only these tags'

    i use multiple users but they all have their own library entry with their own root path on the drive
    - user A has access to 'Movies'+'User A Movies', only User A has access to 'User A Movies', etc and so on for User B, C, D

    but i have never considered specific movies for specific users, perhaps that is why it isn't implemented because nobody else has either

    at least in the interim you have a workable solution
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode