2023-10-15, 10:54 AM
I'm fairly new to self-hosting so please let me know if there are better ways for me to set this up.
I've recently set up a Ubuntu VM running with 4 cores and 8 GB RAM with dynamic RAM enabled. These are the specs:
It's hosted by Hyper-V on a Windows Server 2012 R2 device that has a 6 core Intel Xeon E5-2420.
Media is stored on a Synology DS412+ and mounted to the VM via. NFS.
Navigating the UI is completely seamless and my other containers work completely fine so I don't believe its a networking issue, issues only occur when I open a video to stream.
It will take approximately 30 seconds to start a show which would be fine however it then continues to buffer once every 2 seconds and I'm not sure how to fix it.
Some extra things to note:
- hardware acceleration is not turned on, I looked briefly into it as a potential solution however found that my CPU does not have integrated graphics and I'm missing the /dev/dri folder which I haven't been able to fix
- My server is currently hooked up to ethernet via. powerline adapter due to physical constraints near my router, however performance in all other areas seems to be find so I don't believe this is the main issue
- My docker-compose:
LOGS:
Logs of the container on startup, noticed some warnings and wanted to check if they might be relevant:
This is some logs from loading up a stream:
I've recently set up a Ubuntu VM running with 4 cores and 8 GB RAM with dynamic RAM enabled. These are the specs:
It's hosted by Hyper-V on a Windows Server 2012 R2 device that has a 6 core Intel Xeon E5-2420.
Media is stored on a Synology DS412+ and mounted to the VM via. NFS.
Navigating the UI is completely seamless and my other containers work completely fine so I don't believe its a networking issue, issues only occur when I open a video to stream.
It will take approximately 30 seconds to start a show which would be fine however it then continues to buffer once every 2 seconds and I'm not sure how to fix it.
Some extra things to note:
- hardware acceleration is not turned on, I looked briefly into it as a potential solution however found that my CPU does not have integrated graphics and I'm missing the /dev/dri folder which I haven't been able to fix
- My server is currently hooked up to ethernet via. powerline adapter due to physical constraints near my router, however performance in all other areas seems to be find so I don't believe this is the main issue
- My docker-compose:
Code:
version: "3.2"
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
ports:
- 8096:8096
environment:
- PUID=1001
- PGID=1001
- TZ=Australia/Melbourne
volumes:
- /home/tyadmin/Docker_config/jellyfin:/config
- /home/tyadmin/nas_media/jellyfin_cache:/cache
- /home/tyadmin/nas_media:/media
restart: 'unless-stopped'
LOGS:
Logs of the container on startup, noticed some warnings and wanted to check if they might be relevant:
Code:
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'AccessSchedule' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ActivityLog' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'CustomItemDisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'DisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'HomeSection' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ImageInfo' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ItemDisplayPreferences' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Permission' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Preference' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'ApiKey' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'Device' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'DeviceOptions' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Microsoft.EntityFrameworkCore.Model.Validation: The entity type 'User' is configured to use schema 'jellyfin', but SQLite does not support schemas. This configuration will be ignored by the SQLite provider.
[21:08:18] [WRN] [18] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://localhost:8096/health to 127.0.0.1 in 0:00:00.7651505 with Status Code 200
[21:08:23] [INF] [13] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /media/Existing_Media/TV Shows
[21:08:49] [DBG] [25] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:09:19] [DBG] [32] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:09:49] [DBG] [10] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:10:20] [DBG] [10] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:10:50] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
This is some logs from loading up a stream:
Code:
[21:51:36] [WRN] [51] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6475131 with Status Code 204
46] [DBG] [25] Emby.Server.Implementations.Data.SqliteItemRepository: GetItemList query time (slow): 424.5818ms. Query: select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,CustomRating,IndexNumber,IsLocked,PreferredMetadataLanguage,PreferredMetadataCountryCode,Width,Height,DateLastRefreshed,Name,Path,PremiereDate,Overview,ParentIndexNumber,ProductionYear,OfficialRating,ForcedSortName,RunTimeTicks,Size,DateCreated,DateModified,guid,Genres,ParentId,Audio,ExternalServiceId,IsInMixedFolder,DateLastSaved,LockedFields,Studios,Tags,TrailerTypes,OriginalTitle,PrimaryVersionId,DateLastMediaAdded,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,PresentationUniqueKey,InheritedParentalRatingValue,ExternalSeriesId,Tagline,ProviderIds,Images,ProductionLocations,ExtraIds,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,SeriesPresentationUniqueKey,ShowId,OwnerId from TypedBaseItems A where (Guid = @IncludeId0 OR Guid = @IncludeId1 OR Guid = @IncludeId2 OR Guid = @IncludeId3 OR Guid = @IncludeId4 OR Guid = @IncludeId5 OR Guid = @IncludeId6 OR Guid = @IncludeId7 OR Guid = @IncludeId8 OR Guid = @IncludeId9 OR Guid = @IncludeId10 OR Guid = @IncludeId11 OR Guid = @IncludeId12 OR Guid = @IncludeId13 OR Guid = @IncludeId14 OR Guid = @IncludeId15 OR Guid = @IncludeId16 OR Guid = @IncludeId17 OR Guid = @IncludeId18 OR Guid = @IncludeId19 OR Guid = @IncludeId20 OR Guid = @IncludeId21 OR Guid = @IncludeId22 OR Guid = @IncludeId23 OR Guid = @IncludeId24 OR Guid = @IncludeId25 OR Guid = @IncludeId26 OR Guid = @IncludeId27 OR Guid = @IncludeId28 OR Guid = @IncludeId29 OR Guid = @IncludeId30 OR Guid = @IncludeId31 OR Guid = @IncludeId32 OR Guid = @IncludeId33 OR Guid = @IncludeId34 OR Guid = @IncludeId35 OR Guid = @IncludeId36 OR Guid = @IncludeId37 OR Guid = @IncludeId38 OR Guid = @IncludeId39 OR Guid = @IncludeId40 OR Guid = @IncludeId41 OR Guid = @IncludeId42 OR Guid = @IncludeId43 OR Guid = @IncludeId44 OR Guid = @IncludeId45 OR Guid = @IncludeId46 OR Guid = @IncludeId47 OR Guid = @IncludeId48 OR Guid = @IncludeId49 OR Guid = @IncludeId50 OR Guid = @IncludeId51 OR Guid = @IncludeId52 OR Guid = @IncludeId53 OR Guid = @IncludeId54 OR Guid = @IncludeId55 OR Guid = @IncludeId56 OR Guid = @IncludeId57 OR Guid = @IncludeId58 OR Guid = @IncludeId59 OR Guid = @IncludeId60 OR Guid = @IncludeId61 OR Guid = @IncludeId62 OR Guid = @IncludeId63 OR Guid = @IncludeId64 OR Guid = @IncludeId65 OR Guid = @IncludeId66 OR Guid = @IncludeId67 OR Guid = @IncludeId68 OR Guid = @IncludeId69 OR Guid = @IncludeId70 OR Guid = @IncludeId71 OR Guid = @IncludeId72 OR Guid = @IncludeId73 OR Guid = @IncludeId74)
[21:50:46] [WRN] [52] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:01.3640351 with Status Code 204
[21:50:54] [DBG] [52] Emby.Server.Implementations.Session.SessionWebSocketListener: Watching 1 WebSockets.
[21:50:55] [DBG] [63] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:50:55] [DBG] [52] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:50:56] [WRN] [52] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6550167 with Status Code 204
[21:51:02] [DBG] [49] Emby.Server.Implementations.HttpServer.WebSocketConnection: WS 192.168.0.231 received message: {"MessageType": "KeepAlive", "MessageId": "00000000-0000-0000-0000-000000000000", "ServerId": null, "Data": null, "$type": "WebSocketMessage`1"}
[21:51:05] [DBG] [63] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:51:06] [WRN] [63] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6704869 with Status Code 204
[21:51:06] [DBG] [59] Emby.Server.Implementations.Session.SessionWebSocketListener: Watching 1 WebSockets.
[21:51:16] [DBG] [51] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:51:17] [WRN] [51] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6159553 with Status Code 204
[21:51:18] [DBG] [51] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:51:18] [DBG] [63] Emby.Server.Implementations.Session.SessionWebSocketListener: Watching 1 WebSockets.
[21:51:19] [WRN] [51] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6236932 with Status Code 204
[21:51:25] [DBG] [59] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:51:25] [DBG] [24] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was not authenticated.
[21:51:26] [WRN] [59] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.9874858 with Status Code 204
[21:51:28] [DBG] [63] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.
[21:51:29] [WRN] [63] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from http://192.168.0.129:8096/Sessions/Playing/Progress to 192.168.0.231 in 0:00:00.6085249 with Status Code 204
[21:51:30] [DBG] [59] Emby.Server.Implementations.Session.SessionWebSocketListener: Watching 1 WebSockets.
[21:51:32] [DBG] [24] Emby.Server.Implementations.HttpServer.WebSocketConnection: WS 192.168.0.231 received message: {"MessageType": "KeepAlive", "MessageId": "00000000-0000-0000-0000-000000000000", "ServerId": null, "Data": null, "$type": "WebSocketMessage`1"}
[21:51:35] [DBG] [51] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: CustomAuthentication was successfully authenticated.