Emby.Naming | 1404 | 23 | 1427 | 3834 | 98.3% | | 417 | 440 | 94.7% | |
Emby.Naming.Audio.AlbumParser | 13 | 0 | 13 | 70 | 100% | | 8 | 8 | 100% | |
Emby.Naming.Audio.AudioFileParser | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
Emby.Naming.AudioBook.AudioBookFileInfo | 16 | 0 | 16 | 77 | 100% | | 8 | 8 | 100% | |
Emby.Naming.AudioBook.AudioBookFilePathParser | 18 | 0 | 18 | 67 | 100% | | 16 | 16 | 100% | |
Emby.Naming.AudioBook.AudioBookInfo | 6 | 0 | 6 | 56 | 100% | | 0 | 0 | | |
Emby.Naming.AudioBook.AudioBookListResolver | 51 | 0 | 51 | 150 | 100% | | 30 | 30 | 100% | |
Emby.Naming.AudioBook.AudioBookNameParser | 18 | 0 | 18 | 67 | 100% | | 16 | 16 | 100% | |
Emby.Naming.AudioBook.AudioBookResolver | 14 | 0 | 14 | 56 | 100% | | 6 | 6 | 100% | |
Emby.Naming.Common.EpisodeExpression | 10 | 0 | 10 | 70 | 100% | | 2 | 2 | 100% | |
Emby.Naming.Common.NamingOptions | 727 | 0 | 727 | 910 | 100% | | 0 | 0 | | |
Emby.Naming.ExternalFiles.ExternalPathParser | 47 | 0 | 47 | 129 | 100% | | 37 | 38 | 97.3% | |
Emby.Naming.ExternalFiles.ExternalPathParserResult | 5 | 0 | 5 | 59 | 100% | | 0 | 0 | | |
Emby.Naming.TV.EpisodeInfo | 2 | 0 | 2 | 94 | 100% | | 0 | 0 | | |
Emby.Naming.TV.EpisodePathParser | 85 | 0 | 85 | 242 | 100% | | 80 | 80 | 100% | |
Emby.Naming.TV.EpisodeResolver | 32 | 1 | 33 | 93 | 96.9% | | 9 | 10 | 90% | |
Emby.Naming.TV.SeasonPathParser | 35 | 21 | 56 | 177 | 62.5% | | 23 | 40 | 57.5% | |
Emby.Naming.TV.SeriesInfo | 2 | 0 | 2 | 29 | 100% | | 0 | 0 | | |
Emby.Naming.TV.SeriesPathParser | 17 | 0 | 17 | 60 | 100% | | 17 | 18 | 94.4% | |
Emby.Naming.TV.SeriesResolver | 11 | 0 | 11 | 50 | 100% | | 6 | 6 | 100% | |
Emby.Naming.TV.TvParserHelpers | 13 | 0 | 13 | 44 | 100% | | 6 | 6 | 100% | |
Emby.Naming.Video.CleanDateTimeParser | 17 | 0 | 17 | 55 | 100% | | 16 | 16 | 100% | |
Emby.Naming.Video.CleanDateTimeResult | 1 | 0 | 1 | 31 | 100% | | 0 | 0 | | |
Emby.Naming.Video.CleanStringParser | 16 | 0 | 16 | 55 | 100% | | 12 | 12 | 100% | |
Emby.Naming.Video.ExtraRule | 5 | 0 | 5 | 46 | 100% | | 0 | 0 | | |
Emby.Naming.Video.ExtraRuleResolver | 33 | 0 | 33 | 91 | 100% | | 30 | 30 | 100% | |
Emby.Naming.Video.FileStack | 3 | 1 | 4 | 56 | 75% | | 3 | 4 | 75% | |
Emby.Naming.Video.FileStackRule | 9 | 0 | 9 | 48 | 100% | | 3 | 4 | 75% | |
Emby.Naming.Video.Format3DParser | 28 | 0 | 28 | 81 | 100% | | 15 | 16 | 93.7% | |
Emby.Naming.Video.Format3DResult | 1 | 0 | 1 | 31 | 100% | | 0 | 0 | | |
Emby.Naming.Video.Format3DRule | 3 | 0 | 3 | 31 | 100% | | 0 | 0 | | |
Emby.Naming.Video.StackResolver | 5 | 0 | 5 | 156 | 100% | | 0 | 0 | | |
Emby.Naming.Video.StubResolver | 12 | 0 | 12 | 50 | 100% | | 8 | 8 | 100% | |
Emby.Naming.Video.StubTypeRule | 3 | 0 | 3 | 31 | 100% | | 0 | 0 | | |
Emby.Naming.Video.VideoFileInfo | 16 | 0 | 16 | 120 | 100% | | 2 | 2 | 100% | |
Emby.Naming.Video.VideoInfo | 4 | 0 | 4 | 53 | 100% | | 0 | 0 | | |
Emby.Naming.Video.VideoListResolver | 82 | 0 | 82 | 214 | 100% | | 50 | 50 | 100% | |
Emby.Naming.Video.VideoResolver | 42 | 0 | 42 | 160 | 100% | | 14 | 14 | 100% | |
Emby.Photos | 4 | 61 | 65 | 175 | 6.1% | | 0 | 42 | 0% | |
Emby.Photos.PhotoProvider | 4 | 61 | 65 | 175 | 6.1% | | 0 | 42 | 0% | |
Emby.Server.Implementations | 3191 | 4985 | 8176 | 28947 | 39% | | 1081 | 3621 | 29.8% | |
Emby.Server.Implementations.AppBase.BaseApplicationPaths | 8 | 2 | 10 | 79 | 80% | | 0 | 0 | | |
Emby.Server.Implementations.AppBase.BaseConfigurationManager | 80 | 43 | 123 | 382 | 65% | | 13 | 36 | 36.1% | |
Emby.Server.Implementations.AppBase.ConfigurationHelper | 16 | 2 | 18 | 62 | 88.8% | | 5 | 8 | 62.5% | |
Emby.Server.Implementations.ApplicationHost | 218 | 87 | 305 | 1016 | 71.4% | | 41 | 104 | 39.4% | |
Emby.Server.Implementations.Branding.BrandingConfigurationFactory | 8 | 0 | 8 | 25 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Collections.CollectionImageProvider | 2 | 39 | 41 | 96 | 4.8% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Collections.CollectionManager | 15 | 25 | 40 | 367 | 37.5% | | 0 | 20 | 0% | |
Emby.Server.Implementations.Configuration.ServerConfigurationManager | 14 | 16 | 30 | 123 | 46.6% | | 1 | 10 | 10% | |
Emby.Server.Implementations.ConfigurationOptions | 12 | 0 | 12 | 27 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Cryptography.CryptographyProvider | 21 | 17 | 38 | 78 | 55.2% | | 0 | 4 | 0% | |
Emby.Server.Implementations.Data.CleanDatabaseScheduledTask | 4 | 0 | 4 | 84 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Data.ItemTypeLookup | 42 | 0 | 42 | 64 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Data.SqliteExtensions | 0 | 113 | 113 | 271 | 0% | | 0 | 30 | 0% | |
Emby.Server.Implementations.Data.TypeMapper | 0 | 5 | 5 | 33 | 0% | | 0 | 0 | | |
Emby.Server.Implementations.Devices.DeviceId | 23 | 14 | 37 | 98 | 62.1% | | 5 | 8 | 62.5% | |
Emby.Server.Implementations.Dto.DtoService | 281 | 376 | 657 | 1442 | 42.7% | | 166 | 458 | 36.2% | |
Emby.Server.Implementations.EntryPoints.LibraryChangedNotifier | 56 | 71 | 127 | 402 | 44% | | 20 | 56 | 35.7% | |
Emby.Server.Implementations.EntryPoints.UserDataChangeNotifier | 13 | 41 | 54 | 167 | 24% | | 1 | 16 | 6.2% | |
Emby.Server.Implementations.HttpServer.Security.AuthService | 2 | 0 | 2 | 43 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.HttpServer.WebSocketConnection | 9 | 10 | 19 | 283 | 47.3% | | 0 | 4 | 0% | |
Emby.Server.Implementations.HttpServer.WebSocketManager | 5 | 0 | 5 | 98 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Images.ArtistImageProvider | 2 | 1 | 3 | 46 | 66.6% | | 0 | 0 | | |
Emby.Server.Implementations.Images.BaseDynamicImageProvider<T> | 23 | 85 | 108 | 319 | 21.2% | | 8 | 52 | 15.3% | |
Emby.Server.Implementations.Images.BaseFolderImageProvider<T> | 17 | 4 | 21 | 66 | 80.9% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Images.CollectionFolderImageProvider | 24 | 16 | 40 | 102 | 60% | | 5 | 16 | 31.2% | |
Emby.Server.Implementations.Images.DynamicImageProvider | 3 | 71 | 74 | 137 | 4% | | 0 | 20 | 0% | |
Emby.Server.Implementations.Images.FolderImageProvider | 5 | 2 | 7 | 35 | 71.4% | | 5 | 8 | 62.5% | |
Emby.Server.Implementations.Images.GenreImageProvider | 3 | 10 | 13 | 52 | 23% | | 0 | 0 | | |
Emby.Server.Implementations.Images.MusicAlbumImageProvider | 2 | 2 | 4 | 30 | 50% | | 0 | 0 | | |
Emby.Server.Implementations.Images.MusicGenreImageProvider | 3 | 15 | 18 | 60 | 16.6% | | 0 | 0 | | |
Emby.Server.Implementations.Images.PhotoAlbumImageProvider | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Images.PlaylistImageProvider | 2 | 35 | 37 | 65 | 5.4% | | 0 | 0 | | |
Emby.Server.Implementations.IO.FileRefresher | 0 | 82 | 82 | 215 | 0% | | 0 | 36 | 0% | |
Emby.Server.Implementations.IO.LibraryMonitor | 42 | 148 | 190 | 485 | 22.1% | | 8 | 68 | 11.7% | |
Emby.Server.Implementations.IO.ManagedFileSystem | 131 | 127 | 258 | 708 | 50.7% | | 45 | 90 | 50% | |
Emby.Server.Implementations.IO.MbLinkShortcutHandler | 1 | 9 | 10 | 35 | 10% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Library.CoreResolutionIgnoreRule | 5 | 16 | 21 | 82 | 23.8% | | 1 | 24 | 4.1% | |
Emby.Server.Implementations.Library.IgnorePatterns | 99 | 0 | 99 | 131 | 100% | | 4 | 4 | 100% | |
Emby.Server.Implementations.Library.LibraryManager | 417 | 645 | 1062 | 3241 | 39.2% | | 190 | 592 | 32% | |
Emby.Server.Implementations.Library.LiveStreamHelper | 0 | 6 | 6 | 191 | 0% | | 0 | 0 | | |
Emby.Server.Implementations.Library.MediaSourceManager | 35 | 155 | 190 | 909 | 18.4% | | 12 | 114 | 10.5% | |
Emby.Server.Implementations.Library.MediaStreamSelector | 17 | 58 | 75 | 193 | 22.6% | | 17 | 64 | 26.5% | |
Emby.Server.Implementations.Library.MusicManager | 2 | 48 | 50 | 130 | 4% | | 0 | 12 | 0% | |
Emby.Server.Implementations.Library.PathExtensions | 51 | 3 | 54 | 194 | 94.4% | | 50 | 52 | 96.1% | |
Emby.Server.Implementations.Library.PathManager | 2 | 5 | 7 | 36 | 28.5% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Library.ResolverHelper | 26 | 17 | 43 | 158 | 60.4% | | 17 | 32 | 53.1% | |
Emby.Server.Implementations.Library.Resolvers.Audio.AudioResolver | 73 | 8 | 81 | 240 | 90.1% | | 42 | 56 | 75% | |
Emby.Server.Implementations.Library.Resolvers.Audio.MusicAlbumResolver | 10 | 46 | 56 | 181 | 17.8% | | 1 | 24 | 4.1% | |
Emby.Server.Implementations.Library.Resolvers.Audio.MusicArtistResolver | 11 | 39 | 50 | 122 | 22% | | 1 | 14 | 7.1% | |
Emby.Server.Implementations.Library.Resolvers.BaseVideoResolver<T> | 38 | 68 | 106 | 289 | 35.8% | | 14 | 66 | 21.2% | |
Emby.Server.Implementations.Library.Resolvers.Books.BookResolver | 4 | 24 | 28 | 74 | 14.2% | | 1 | 8 | 12.5% | |
Emby.Server.Implementations.Library.Resolvers.ExtraResolver | 35 | 0 | 35 | 104 | 100% | | 20 | 26 | 76.9% | |
Emby.Server.Implementations.Library.Resolvers.FolderResolver | 3 | 1 | 4 | 35 | 75% | | 1 | 2 | 50% | |
Emby.Server.Implementations.Library.Resolvers.GenericFolderResolver<T> | 3 | 0 | 3 | 28 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Resolvers.GenericVideoResolver<T> | 2 | 0 | 2 | 28 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Resolvers.Movies.BoxSetResolver | 2 | 16 | 18 | 74 | 11.1% | | 2 | 8 | 25% | |
Emby.Server.Implementations.Library.Resolvers.Movies.MovieResolver | 18 | 228 | 246 | 573 | 7.3% | | 7 | 162 | 4.3% | |
Emby.Server.Implementations.Library.Resolvers.PhotoAlbumResolver | 7 | 20 | 27 | 95 | 25.9% | | 4 | 22 | 18.1% | |
Emby.Server.Implementations.Library.Resolvers.PhotoResolver | 10 | 34 | 44 | 122 | 22.7% | | 6 | 22 | 27.2% | |
Emby.Server.Implementations.Library.Resolvers.PlaylistResolver | 15 | 21 | 36 | 82 | 41.6% | | 8 | 12 | 66.6% | |
Emby.Server.Implementations.Library.Resolvers.SpecialFolderResolver | 33 | 0 | 33 | 86 | 100% | | 8 | 8 | 100% | |
Emby.Server.Implementations.Library.Resolvers.TV.EpisodeResolver | 19 | 4 | 23 | 90 | 82.6% | | 21 | 28 | 75% | |
Emby.Server.Implementations.Library.Resolvers.TV.SeasonResolver | 10 | 32 | 42 | 100 | 23.8% | | 2 | 22 | 9% | |
Emby.Server.Implementations.Library.Resolvers.TV.SeriesResolver | 7 | 67 | 74 | 211 | 9.4% | | 4 | 38 | 10.5% | |
Emby.Server.Implementations.Library.SearchEngine | 0 | 91 | 91 | 200 | 0% | | 0 | 50 | 0% | |
Emby.Server.Implementations.Library.SplashscreenPostScanTask | 38 | 0 | 38 | 91 | 100% | | 2 | 2 | 100% | |
Emby.Server.Implementations.Library.UserDataManager | 39 | 120 | 159 | 364 | 24.5% | | 6 | 64 | 9.3% | |
Emby.Server.Implementations.Library.UserViewManager | 54 | 132 | 186 | 393 | 29% | | 15 | 98 | 15.3% | |
Emby.Server.Implementations.Library.Validators.ArtistsPostScanTask | 5 | 0 | 5 | 49 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.ArtistsValidator | 4 | 0 | 4 | 111 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.CollectionPostScanTask | 4 | 0 | 4 | 157 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.GenresPostScanTask | 5 | 0 | 5 | 49 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.GenresValidator | 4 | 0 | 4 | 81 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.MusicGenresPostScanTask | 5 | 0 | 5 | 49 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.MusicGenresValidator | 4 | 0 | 4 | 81 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.PeopleValidator | 0 | 4 | 4 | 127 | 0% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.StudiosPostScanTask | 5 | 0 | 5 | 50 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Library.Validators.StudiosValidator | 4 | 0 | 4 | 105 | 100% | | 0 | 0 | | |
Emby.Server.Implementations.Localization.LocalizationManager | 91 | 3 | 94 | 509 | 96.8% | | 68 | 76 | 89.4% | |
Emby.Server.Implementations.MediaEncoder.EncodingManager | 6 | 38 | 44 | 272 | 13.6% | | 0 | 18 | 0% | |
Emby.Server.Implementations.Playlists.PlaylistManager | 14 | 129 | 143 | 657 | 9.7% | | 5 | 72 | 6.9% | |
Emby.Server.Implementations.Playlists.PlaylistsFolder | 10 | 4 | 14 | 55 | 71.4% | | 1 | 2 | 50% | |
Emby.Server.Implementations.Plugins.PluginLoadContext | 0 | 7 | 7 | 33 | 0% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Plugins.PluginManager | 107 | 146 | 253 | 913 | 42.2% | | 43 | 114 | 37.7% | |
Emby.Server.Implementations.QuickConnect.QuickConnectManager | 55 | 9 | 64 | 231 | 85.9% | | 15 | 24 | 62.5% | |
Emby.Server.Implementations.ScheduledTasks.ScheduledTaskWorker | 126 | 63 | 189 | 679 | 66.6% | | 45 | 62 | 72.5% | |
Emby.Server.Implementations.ScheduledTasks.TaskManager | 55 | 23 | 78 | 264 | 70.5% | | 22 | 36 | 61.1% | |
Emby.Server.Implementations.ScheduledTasks.Tasks.AudioNormalizationTask | 16 | 3 | 19 | 220 | 84.2% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.ChapterImagesTask | 19 | 3 | 22 | 182 | 86.3% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.CleanActivityLogTask | 5 | 12 | 17 | 77 | 29.4% | | 0 | 4 | 0% | |
Emby.Server.Implementations.ScheduledTasks.Tasks.CleanupCollectionAndPlaylistPathsTask | 10 | 2 | 12 | 140 | 83.3% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.DeleteCacheFileTask | 11 | 32 | 43 | 144 | 25.5% | | 0 | 2 | 0% | |
Emby.Server.Implementations.ScheduledTasks.Tasks.DeleteLogFileTask | 9 | 23 | 32 | 101 | 28.1% | | 0 | 2 | 0% | |
Emby.Server.Implementations.ScheduledTasks.Tasks.DeleteTranscodeFileTask | 32 | 10 | 42 | 127 | 76.1% | | 1 | 2 | 50% | |
Emby.Server.Implementations.ScheduledTasks.Tasks.MediaSegmentExtractionTask | 5 | 4 | 9 | 118 | 55.5% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.OptimizeDatabaseTask | 11 | 6 | 17 | 88 | 64.7% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.PeopleValidationTask | 12 | 7 | 19 | 73 | 63.1% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.PluginUpdateTask | 7 | 4 | 11 | 120 | 63.6% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Tasks.RefreshMediaLibraryTask | 8 | 2 | 10 | 66 | 80% | | 0 | 0 | | |
Emby.Server.Implementations.ScheduledTasks.Triggers.DailyTrigger | 19 | 3 | 22 | 87 | 86.3% | | 4 | 8 | 50% | |
Emby.Server.Implementations.ScheduledTasks.Triggers.IntervalTrigger | 20 | 8 | 28 | 107 | 71.4% | | 5 | 10 | 50% | |
Emby.Server.Implementations.ScheduledTasks.Triggers.StartupTrigger | 4 | 0 | 4 | 54 | 100% | | 2 | 2 | 100% | |
Emby.Server.Implementations.ScheduledTasks.Triggers.WeeklyTrigger | 0 | 26 | 26 | 110 | 0% | | 0 | 12 | 0% | |
Emby.Server.Implementations.Serialization.MyXmlSerializer | 25 | 3 | 28 | 108 | 89.2% | | 1 | 2 | 50% | |
Emby.Server.Implementations.ServerApplicationPaths | 13 | 6 | 19 | 100 | 68.4% | | 0 | 0 | | |
Emby.Server.Implementations.Session.SessionManager | 113 | 391 | 504 | 2144 | 22.4% | | 23 | 178 | 12.9% | |
Emby.Server.Implementations.Session.SessionWebSocketListener | 21 | 22 | 43 | 286 | 48.8% | | 3 | 10 | 30% | |
Emby.Server.Implementations.Session.WebSocketController | 0 | 52 | 52 | 186 | 0% | | 0 | 10 | 0% | |
Emby.Server.Implementations.Sorting.AiredEpisodeOrderComparer | 48 | 1 | 49 | 160 | 97.9% | | 34 | 36 | 94.4% | |
Emby.Server.Implementations.Sorting.AlbumArtistComparer | 1 | 5 | 6 | 42 | 16.6% | | 0 | 4 | 0% | |
Emby.Server.Implementations.Sorting.AlbumComparer | 1 | 2 | 3 | 42 | 33.3% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.ArtistComparer | 1 | 4 | 5 | 39 | 20% | | 0 | 4 | 0% | |
Emby.Server.Implementations.Sorting.CommunityRatingComparer | 1 | 3 | 4 | 34 | 25% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.CriticRatingComparer | 1 | 2 | 3 | 35 | 33.3% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.DateCreatedComparer | 1 | 3 | 4 | 35 | 25% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.DateLastMediaAddedComparer | 1 | 5 | 6 | 69 | 16.6% | | 0 | 4 | 0% | |
Emby.Server.Implementations.Sorting.DatePlayedComparer | 1 | 5 | 6 | 70 | 16.6% | | 0 | 4 | 0% | |
Emby.Server.Implementations.Sorting.IndexNumberComparer | 10 | 0 | 10 | 50 | 100% | | 8 | 8 | 100% | |
Emby.Server.Implementations.Sorting.IsFavoriteOrLikeComparer | 1 | 2 | 3 | 60 | 33.3% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.IsFolderComparer | 1 | 2 | 3 | 39 | 33.3% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.IsPlayedComparer | 1 | 2 | 3 | 61 | 33.3% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.IsUnplayedComparer | 1 | 2 | 3 | 61 | 33.3% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.NameComparer | 1 | 3 | 4 | 35 | 25% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.OfficialRatingComparer | 3 | 9 | 12 | 54 | 25% | | 0 | 10 | 0% | |
Emby.Server.Implementations.Sorting.ParentIndexNumberComparer | 10 | 0 | 10 | 50 | 100% | | 8 | 8 | 100% | |
Emby.Server.Implementations.Sorting.PlayCountComparer | 1 | 3 | 4 | 64 | 25% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.PremiereDateComparer | 11 | 1 | 12 | 63 | 91.6% | | 5 | 6 | 83.3% | |
Emby.Server.Implementations.Sorting.ProductionYearComparer | 1 | 8 | 9 | 55 | 11.1% | | 0 | 6 | 0% | |
Emby.Server.Implementations.Sorting.RandomComparer | 1 | 1 | 2 | 31 | 50% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.RuntimeComparer | 1 | 3 | 4 | 34 | 25% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.SeriesSortNameComparer | 1 | 3 | 4 | 36 | 25% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.SortNameComparer | 1 | 3 | 4 | 34 | 25% | | 0 | 0 | | |
Emby.Server.Implementations.Sorting.StartDateComparer | 0 | 5 | 5 | 46 | 0% | | 0 | 2 | 0% | |
Emby.Server.Implementations.Sorting.StudioComparer | 0 | 4 | 4 | 34 | 0% | | 0 | 0 | | |
Emby.Server.Implementations.SyncPlay.Group | 0 | 211 | 211 | 685 | 0% | | 0 | 63 | 0% | |
Emby.Server.Implementations.SyncPlay.SyncPlayManager | 21 | 112 | 133 | 393 | 15.7% | | 1 | 64 | 1.5% | |
Emby.Server.Implementations.SystemManager | 0 | 48 | 48 | 105 | 0% | | 0 | 0 | | |
Emby.Server.Implementations.TV.TVSeriesManager | 4 | 78 | 82 | 280 | 4.8% | | 0 | 34 | 0% | |
Emby.Server.Implementations.Updates.InstallationManager | 27 | 38 | 65 | 580 | 41.5% | | 8 | 32 | 25% | |
jellyfin | 777 | 1710 | 2487 | 6568 | 31.2% | | 125 | 756 | 16.5% | |
Jellyfin.Server.Configuration.CorsPolicyProvider | 2 | 11 | 13 | 49 | 15.3% | | 0 | 6 | 0% | |
Jellyfin.Server.CoreAppHost | 34 | 2 | 36 | 130 | 94.4% | | 5 | 8 | 62.5% | |
Jellyfin.Server.Extensions.ApiApplicationBuilderExtensions | 35 | 1 | 36 | 144 | 97.2% | | 1 | 2 | 50% | |
Jellyfin.Server.Extensions.ApiServiceCollectionExtensions | 239 | 3 | 242 | 390 | 98.7% | | 27 | 30 | 90% | |
Jellyfin.Server.Extensions.WebHostBuilderExtensions | 54 | 0 | 54 | 90 | 100% | | 0 | 0 | | |
Jellyfin.Server.Filters.AdditionalModelFilter | 118 | 1 | 119 | 200 | 99.1% | | 23 | 26 | 88.4% | |
Jellyfin.Server.Filters.FileRequestFilter | 17 | 0 | 17 | 43 | 100% | | 6 | 6 | 100% | |
Jellyfin.Server.Filters.FileResponseFilter | 18 | 0 | 18 | 53 | 100% | | 8 | 8 | 100% | |
Jellyfin.Server.Filters.IgnoreEnumSchemaFilter | 10 | 1 | 11 | 42 | 90.9% | | 13 | 14 | 92.8% | |
Jellyfin.Server.Filters.ParameterObsoleteFilter | 10 | 0 | 10 | 36 | 100% | | 7 | 8 | 87.5% | |
Jellyfin.Server.Filters.RetryOnTemporarlyUnavailableFilter | 23 | 0 | 23 | 36 | 100% | | 0 | 0 | | |
Jellyfin.Server.Filters.SecurityRequirementsOperationFilter | 40 | 0 | 40 | 105 | 100% | | 29 | 30 | 96.6% | |
Jellyfin.Server.HealthChecks.DbContextFactoryHealthCheck<T> | 0 | 2 | 2 | 43 | 0% | | 0 | 0 | | |
Jellyfin.Server.Helpers.StartupHelpers | 2 | 107 | 109 | 296 | 1.8% | | 0 | 46 | 0% | |
Jellyfin.Server.Infrastructure.SymlinkFollowingPhysicalFileResultExecutor | 0 | 14 | 14 | 151 | 0% | | 0 | 2 | 0% | |
Jellyfin.Server.Migrations.MigrationOptions | 0 | 1 | 1 | 27 | 0% | | 0 | 0 | | |
Jellyfin.Server.Migrations.MigrationRunner | 0 | 35 | 35 | 181 | 0% | | 0 | 2 | 0% | |
Jellyfin.Server.Migrations.MigrationsFactory | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Server.Migrations.MigrationsListStore | 5 | 0 | 5 | 24 | 100% | | 0 | 0 | | |
Jellyfin.Server.Migrations.PreStartupRoutines.CreateNetworkConfiguration | 0 | 30 | 30 | 135 | 0% | | 0 | 8 | 0% | |
Jellyfin.Server.Migrations.PreStartupRoutines.MigrateEncodingOptions | 0 | 90 | 90 | 245 | 0% | | 0 | 14 | 0% | |
Jellyfin.Server.Migrations.PreStartupRoutines.MigrateMusicBrainzTimeout | 0 | 35 | 35 | 98 | 0% | | 0 | 6 | 0% | |
Jellyfin.Server.Migrations.PreStartupRoutines.MigrateNetworkConfiguration | 0 | 65 | 65 | 213 | 0% | | 0 | 10 | 0% | |
Jellyfin.Server.Migrations.PreStartupRoutines.RenameEnableGroupingIntoCollections | 0 | 21 | 21 | 63 | 0% | | 0 | 4 | 0% | |
Jellyfin.Server.Migrations.Routines.AddDefaultCastReceivers | 0 | 20 | 20 | 51 | 0% | | 0 | 0 | | |
Jellyfin.Server.Migrations.Routines.AddDefaultPluginRepository | 0 | 13 | 13 | 45 | 0% | | 0 | 0 | | |
Jellyfin.Server.Migrations.Routines.CreateUserLoggingConfigFile | 0 | 31 | 31 | 82 | 0% | | 0 | 4 | 0% | |
Jellyfin.Server.Migrations.Routines.DisableTranscodingThrottling | 0 | 12 | 12 | 44 | 0% | | 0 | 2 | 0% | |
Jellyfin.Server.Migrations.Routines.FixAudioData | 0 | 43 | 43 | 106 | 0% | | 0 | 8 | 0% | |
Jellyfin.Server.Migrations.Routines.FixPlaylistOwner | 0 | 27 | 27 | 76 | 0% | | 0 | 8 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateActivityLogDb | 0 | 67 | 67 | 153 | 0% | | 0 | 22 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateAuthenticationDb | 0 | 61 | 61 | 149 | 0% | | 0 | 16 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateDisplayPreferencesDb | 0 | 119 | 119 | 230 | 0% | | 0 | 50 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateLibraryDb | 0 | 588 | 588 | 1326 | 0% | | 0 | 326 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateRatingLevels | 0 | 31 | 31 | 74 | 0% | | 0 | 8 | 0% | |
Jellyfin.Server.Migrations.Routines.MigrateUserDb | 0 | 115 | 115 | 223 | 0% | | 0 | 26 | 0% | |
Jellyfin.Server.Migrations.Routines.MoveTrickplayFiles | 0 | 49 | 49 | 125 | 0% | | 0 | 16 | 0% | |
Jellyfin.Server.Migrations.Routines.ReaddDefaultPluginRepository | 0 | 14 | 14 | 49 | 0% | | 0 | 2 | 0% | |
Jellyfin.Server.Migrations.Routines.RemoveDownloadImagesInAdvance | 0 | 15 | 15 | 52 | 0% | | 0 | 6 | 0% | |
Jellyfin.Server.Migrations.Routines.RemoveDuplicateExtras | 0 | 30 | 30 | 83 | 0% | | 0 | 4 | 0% | |
Jellyfin.Server.Migrations.Routines.RemoveDuplicatePlaylistChildren | 0 | 24 | 24 | 64 | 0% | | 0 | 6 | 0% | |
Jellyfin.Server.Migrations.Routines.UpdateDefaultPluginRepository | 0 | 13 | 13 | 52 | 0% | | 0 | 6 | 0% | |
Jellyfin.Server.Program | 12 | 7 | 19 | 256 | 63.1% | | 2 | 4 | 50% | |
Jellyfin.Server.ServerSetupApp.SetupServer | 0 | 8 | 8 | 172 | 0% | | 0 | 4 | 0% | |
Jellyfin.Server.Startup | 148 | 0 | 148 | 235 | 100% | | 0 | 0 | | |
Jellyfin.Server.StartupOptions | 6 | 4 | 10 | 107 | 60% | | 4 | 8 | 50% | |
Jellyfin.Api | 900 | 3919 | 4819 | 27238 | 18.6% | | 251 | 1932 | 12.9% | |
Jellyfin.Api.Attributes.AcceptsFileAttribute | 4 | 0 | 4 | 29 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.AcceptsImageFileAttribute | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.ProducesAudioFileAttribute | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.ProducesFileAttribute | 4 | 0 | 4 | 29 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.ProducesImageFileAttribute | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.ProducesPlaylistFileAttribute | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Api.Attributes.ProducesVideoFileAttribute | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Api.Auth.AnonymousLanAccessPolicy.AnonymousLanAccessHandler | 6 | 5 | 11 | 48 | 54.5% | | 0 | 6 | 0% | |
Jellyfin.Api.Auth.CustomAuthenticationHandler | 4 | 0 | 4 | 90 | 100% | | 0 | 0 | | |
Jellyfin.Api.Auth.DefaultAuthorizationPolicy.DefaultAuthorizationHandler | 29 | 3 | 32 | 96 | 90.6% | | 19 | 22 | 86.3% | |
Jellyfin.Api.Auth.DefaultAuthorizationPolicy.DefaultAuthorizationRequirement | 1 | 0 | 1 | 24 | 100% | | 0 | 0 | | |
Jellyfin.Api.Auth.FirstTimeSetupPolicy.FirstTimeSetupHandler | 12 | 0 | 12 | 56 | 100% | | 8 | 8 | 100% | |
Jellyfin.Api.Auth.FirstTimeSetupPolicy.FirstTimeSetupRequirement | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
Jellyfin.Api.Auth.LocalAccessOrRequiresElevationPolicy.LocalAccessOrRequiresElevationHandler | 6 | 8 | 14 | 56 | 42.8% | | 0 | 8 | 0% | |
Jellyfin.Api.Auth.SyncPlayAccessPolicy.SyncPlayAccessHandler | 6 | 19 | 25 | 77 | 24% | | 0 | 24 | 0% | |
Jellyfin.Api.Auth.SyncPlayAccessPolicy.SyncPlayAccessRequirement | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
Jellyfin.Api.Auth.UserPermissionPolicy.UserPermissionHandler | 11 | 2 | 13 | 56 | 84.6% | | 6 | 8 | 75% | |
Jellyfin.Api.Auth.UserPermissionPolicy.UserPermissionRequirement | 2 | 0 | 2 | 26 | 100% | | 0 | 0 | | |
Jellyfin.Api.BaseJellyfinApiController | 1 | 1 | 2 | 37 | 50% | | 0 | 0 | | |
Jellyfin.Api.Controllers.ActivityLogController | 3 | 0 | 3 | 57 | 100% | | 0 | 0 | | |
Jellyfin.Api.Controllers.ApiKeyController | 0 | 3 | 3 | 76 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.ArtistsController | 0 | 201 | 201 | 483 | 0% | | 0 | 44 | 0% | |
Jellyfin.Api.Controllers.AudioController | 0 | 3 | 3 | 367 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.BrandingController | 13 | 0 | 13 | 65 | 100% | | 2 | 2 | 100% | |
Jellyfin.Api.Controllers.ChannelsController | 0 | 6 | 6 | 254 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.ClientLogController | 0 | 11 | 11 | 78 | 0% | | 0 | 6 | 0% | |
Jellyfin.Api.Controllers.CollectionController | 0 | 6 | 6 | 111 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.ConfigurationController | 0 | 24 | 24 | 164 | 0% | | 0 | 2 | 0% | |
Jellyfin.Api.Controllers.DashboardController | 25 | 0 | 25 | 115 | 100% | | 8 | 8 | 100% | |
Jellyfin.Api.Controllers.DevicesController | 0 | 16 | 16 | 140 | 0% | | 0 | 4 | 0% | |
Jellyfin.Api.Controllers.DisplayPreferencesController | 0 | 102 | 102 | 217 | 0% | | 0 | 44 | 0% | |
Jellyfin.Api.Controllers.DynamicHlsController | 10 | 214 | 224 | 2096 | 4.4% | | 4 | 142 | 2.8% | |
Jellyfin.Api.Controllers.EnvironmentController | 0 | 40 | 40 | 197 | 0% | | 0 | 30 | 0% | |
Jellyfin.Api.Controllers.FilterController | 0 | 107 | 107 | 218 | 0% | | 0 | 48 | 0% | |
Jellyfin.Api.Controllers.GenresController | 0 | 72 | 72 | 210 | 0% | | 0 | 22 | 0% | |
Jellyfin.Api.Controllers.HlsSegmentController | 0 | 56 | 56 | 191 | 0% | | 0 | 24 | 0% | |
Jellyfin.Api.Controllers.ImageController | 9 | 88 | 97 | 2150 | 9.2% | | 8 | 40 | 20% | |
Jellyfin.Api.Controllers.InstantMixController | 0 | 99 | 99 | 410 | 0% | | 0 | 30 | 0% | |
Jellyfin.Api.Controllers.ItemLookupController | 0 | 14 | 14 | 282 | 0% | | 0 | 2 | 0% | |
Jellyfin.Api.Controllers.ItemRefreshController | 0 | 27 | 27 | 93 | 0% | | 0 | 4 | 0% | |
Jellyfin.Api.Controllers.ItemsController | 84 | 182 | 266 | 1074 | 31.5% | | 29 | 121 | 23.9% | |
Jellyfin.Api.Controllers.ItemUpdateController | 0 | 113 | 113 | 538 | 0% | | 0 | 38 | 0% | |
Jellyfin.Api.Controllers.LibraryController | 97 | 313 | 410 | 1043 | 23.6% | | 27 | 192 | 14% | |
Jellyfin.Api.Controllers.LibraryStructureController | 62 | 51 | 113 | 348 | 54.8% | | 10 | 20 | 50% | |
Jellyfin.Api.Controllers.LiveTvController | 26 | 96 | 122 | 1204 | 21.3% | | 0 | 20 | 0% | |
Jellyfin.Api.Controllers.LocalizationController | 0 | 7 | 7 | 75 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.LyricsController | 0 | 12 | 12 | 245 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.MediaInfoController | 20 | 0 | 20 | 344 | 100% | | 0 | 0 | | |
Jellyfin.Api.Controllers.MediaSegmentsController | 0 | 4 | 4 | 61 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.MoviesController | 0 | 100 | 100 | 327 | 0% | | 0 | 16 | 0% | |
Jellyfin.Api.Controllers.MusicGenresController | 33 | 5 | 38 | 205 | 86.8% | | 6 | 10 | 60% | |
Jellyfin.Api.Controllers.PackageController | 0 | 10 | 10 | 164 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.PersonsController | 14 | 26 | 40 | 141 | 35% | | 1 | 10 | 10% | |
Jellyfin.Api.Controllers.PlaylistsController | 0 | 67 | 67 | 548 | 0% | | 0 | 34 | 0% | |
Jellyfin.Api.Controllers.PlaystateController | 14 | 11 | 25 | 532 | 56% | | 0 | 8 | 0% | |
Jellyfin.Api.Controllers.PluginsController | 10 | 32 | 42 | 263 | 23.8% | | 0 | 20 | 0% | |
Jellyfin.Api.Controllers.QuickConnectController | 0 | 11 | 11 | 129 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.RemoteImageController | 0 | 13 | 13 | 182 | 0% | | 0 | 2 | 0% | |
Jellyfin.Api.Controllers.ScheduledTasksController | 0 | 26 | 26 | 161 | 0% | | 0 | 8 | 0% | |
Jellyfin.Api.Controllers.SearchController | 0 | 98 | 98 | 266 | 0% | | 0 | 44 | 0% | |
Jellyfin.Api.Controllers.SessionController | 0 | 20 | 20 | 453 | 0% | | 0 | 2 | 0% | |
Jellyfin.Api.Controllers.StartupController | 18 | 4 | 22 | 153 | 81.8% | | 3 | 6 | 50% | |
Jellyfin.Api.Controllers.StudiosController | 0 | 44 | 44 | 157 | 0% | | 0 | 8 | 0% | |
Jellyfin.Api.Controllers.SubtitleController | 0 | 54 | 54 | 580 | 0% | | 0 | 10 | 0% | |
Jellyfin.Api.Controllers.SuggestionsController | 0 | 30 | 30 | 125 | 0% | | 0 | 2 | 0% | |
Jellyfin.Api.Controllers.SyncPlayController | 0 | 8 | 8 | 424 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.SystemController | 19 | 33 | 52 | 215 | 36.5% | | 1 | 4 | 25% | |
Jellyfin.Api.Controllers.TimeSyncController | 0 | 3 | 3 | 33 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.TrailersController | 0 | 92 | 92 | 298 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.TrickplayController | 0 | 6 | 6 | 105 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.TvShowsController | 0 | 130 | 130 | 394 | 0% | | 0 | 46 | 0% | |
Jellyfin.Api.Controllers.UniversalAudioController | 0 | 79 | 79 | 364 | 0% | | 0 | 18 | 0% | |
Jellyfin.Api.Controllers.UserController | 40 | 17 | 57 | 659 | 70.1% | | 11 | 20 | 55% | |
Jellyfin.Api.Controllers.UserLibraryController | 39 | 101 | 140 | 696 | 27.8% | | 10 | 52 | 19.2% | |
Jellyfin.Api.Controllers.UserViewsController | 0 | 37 | 37 | 170 | 0% | | 0 | 10 | 0% | |
Jellyfin.Api.Controllers.VideoAttachmentsController | 0 | 6 | 6 | 84 | 0% | | 0 | 0 | | |
Jellyfin.Api.Controllers.VideosController | 0 | 93 | 93 | 665 | 0% | | 0 | 10 | 0% | |
Jellyfin.Api.Controllers.YearsController | 0 | 68 | 68 | 228 | 0% | | 0 | 34 | 0% | |
Jellyfin.Api.Extensions.ClaimsPrincipalExtensions | 10 | 3 | 13 | 80 | 76.9% | | 4 | 4 | 100% | |
Jellyfin.Api.Extensions.DtoExtensions | 21 | 6 | 27 | 104 | 77.7% | | 19 | 38 | 50% | |
Jellyfin.Api.Formatters.CamelCaseJsonProfileFormatter | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Api.Formatters.CssOutputFormatter | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Api.Formatters.PascalCaseJsonProfileFormatter | 5 | 0 | 5 | 23 | 100% | | 0 | 0 | | |
Jellyfin.Api.Formatters.XmlOutputFormatter | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Api.Helpers.AudioHelper | 0 | 10 | 10 | 157 | 0% | | 0 | 0 | | |
Jellyfin.Api.Helpers.DynamicHlsHelper | 0 | 259 | 259 | 858 | 0% | | 0 | 176 | 0% | |
Jellyfin.Api.Helpers.FileStreamResponseHelpers | 0 | 1 | 1 | 119 | 0% | | 0 | 0 | | |
Jellyfin.Api.Helpers.HlsCodecStringHelpers | 0 | 93 | 93 | 304 | 0% | | 0 | 108 | 0% | |
Jellyfin.Api.Helpers.HlsHelpers | 0 | 21 | 21 | 138 | 0% | | 0 | 8 | 0% | |
Jellyfin.Api.Helpers.MediaInfoHelper | 9 | 152 | 161 | 511 | 5.5% | | 0 | 76 | 0% | |
Jellyfin.Api.Helpers.RequestHelpers | 22 | 26 | 48 | 179 | 45.8% | | 18 | 20 | 90% | |
Jellyfin.Api.Helpers.StreamingHelpers | 0 | 131 | 131 | 600 | 0% | | 0 | 121 | 0% | |
Jellyfin.Api.Middleware.BaseUrlRedirectionMiddleware | 4 | 0 | 4 | 78 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.ExceptionMiddleware | 14 | 18 | 32 | 150 | 43.7% | | 11 | 20 | 55% | |
Jellyfin.Api.Middleware.IPBasedAccessValidationMiddleware | 2 | 0 | 2 | 51 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.LanFilteringMiddleware | 2 | 0 | 2 | 51 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware | 3 | 0 | 3 | 53 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.QueryStringDecodingMiddleware | 2 | 0 | 2 | 38 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.ResponseTimeMiddleware | 3 | 0 | 3 | 68 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.RobotsRedirectionMiddleware | 3 | 0 | 3 | 45 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.ServerStartupMessageMiddleware | 2 | 0 | 2 | 50 | 100% | | 0 | 0 | | |
Jellyfin.Api.Middleware.UrlDecodeQueryFeature | 23 | 2 | 25 | 83 | 92% | | 11 | 14 | 78.5% | |
Jellyfin.Api.Middleware.WebSocketHandlerMiddleware | 2 | 0 | 2 | 39 | 100% | | 0 | 0 | | |
Jellyfin.Api.ModelBinders.CommaDelimitedCollectionModelBinder | 32 | 0 | 32 | 89 | 100% | | 12 | 12 | 100% | |
Jellyfin.Api.ModelBinders.LegacyDateTimeModelBinder | 5 | 4 | 9 | 48 | 55.5% | | 1 | 4 | 25% | |
Jellyfin.Api.ModelBinders.NullableEnumModelBinder | 7 | 6 | 13 | 47 | 53.8% | | 3 | 4 | 75% | |
Jellyfin.Api.ModelBinders.NullableEnumModelBinderProvider | 5 | 0 | 5 | 26 | 100% | | 4 | 4 | 100% | |
Jellyfin.Api.ModelBinders.PipeDelimitedCollectionModelBinder | 32 | 0 | 32 | 89 | 100% | | 12 | 12 | 100% | |
Jellyfin.Api.Models.ClientLogDtos.ClientLogDocumentResponseDto | 0 | 1 | 1 | 21 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.ConfigurationPageInfo | 9 | 0 | 9 | 66 | 100% | | 3 | 6 | 50% | |
Jellyfin.Api.Models.SyncPlayDtos.BufferRequestDto | 0 | 2 | 2 | 41 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.MovePlaylistItemRequestDto | 0 | 2 | 2 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.NewGroupRequestDto | 0 | 2 | 2 | 21 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.NextItemRequestDto | 0 | 2 | 2 | 23 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.PlayRequestDto | 0 | 2 | 2 | 36 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.PreviousItemRequestDto | 0 | 2 | 2 | 23 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.QueueRequestDto | 0 | 2 | 2 | 31 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.ReadyRequestDto | 0 | 2 | 2 | 41 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.RemoveFromPlaylistRequestDto | 0 | 2 | 2 | 36 | 0% | | 0 | 0 | | |
Jellyfin.Api.Models.SyncPlayDtos.SetPlaylistItemRequestDto | 0 | 2 | 2 | 23 | 0% | | 0 | 0 | | |
Jellyfin.Api.Results.OkResult<T> | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | |
Jellyfin.Api.WebSocketListeners.ActivityLogWebSocketListener | 6 | 10 | 16 | 88 | 37.5% | | 0 | 6 | 0% | |
Jellyfin.Api.WebSocketListeners.ScheduledTasksWebSocketListener | 13 | 7 | 20 | 89 | 65% | | 0 | 0 | | |
Jellyfin.Api.WebSocketListeners.SessionInfoWebSocketListener | 14 | 20 | 34 | 127 | 41.1% | | 0 | 6 | 0% | |
Jellyfin.Data | 57 | 42 | 99 | 368 | 57.5% | | 13 | 42 | 30.9% | |
Jellyfin.Data.DayOfWeekHelper | 4 | 10 | 14 | 32 | 28.5% | | 1 | 14 | 7.1% | |
Jellyfin.Data.Events.GenericEventArgs<T> | 3 | 0 | 3 | 26 | 100% | | 0 | 0 | | |
Jellyfin.Data.Events.Users.UserCreatedEventArgs | 2 | 0 | 2 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Data.Events.Users.UserDeletedEventArgs | 0 | 2 | 2 | 18 | 0% | | 0 | 0 | | |
Jellyfin.Data.Events.Users.UserLockedOutEventArgs | 0 | 2 | 2 | 18 | 0% | | 0 | 0 | | |
Jellyfin.Data.Events.Users.UserPasswordChangedEventArgs | 2 | 0 | 2 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Data.Events.Users.UserUpdatedEventArgs | 0 | 2 | 2 | 18 | 0% | | 0 | 0 | | |
Jellyfin.Data.UserEntityExtensions | 46 | 26 | 72 | 220 | 63.8% | | 12 | 28 | 42.8% | |
Jellyfin.Database.Implementations | 250 | 227 | 477 | 4113 | 52.4% | | 2 | 4 | 50% | |
Jellyfin.Database.Implementations.Entities.AccessSchedule | 5 | 0 | 5 | 62 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.ActivityLog | 8 | 2 | 10 | 123 | 80% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.CustomItemDisplayPreferences | 0 | 6 | 6 | 80 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.DisplayPreferences | 0 | 11 | 11 | 150 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Group | 0 | 8 | 8 | 66 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.ImageInfo | 3 | 0 | 3 | 54 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.ItemDisplayPreferences | 0 | 8 | 8 | 113 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Artwork | 0 | 6 | 6 | 64 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Book | 0 | 4 | 4 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.BookMetadata | 0 | 4 | 4 | 34 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Chapter | 0 | 6 | 6 | 80 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Collection | 0 | 4 | 4 | 57 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.CollectionItem | 0 | 4 | 4 | 64 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Company | 0 | 6 | 6 | 54 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.CompanyMetadata | 0 | 2 | 2 | 59 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.CustomItem | 0 | 4 | 4 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.CustomItemMetadata | 0 | 2 | 2 | 17 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Episode | 0 | 4 | 4 | 34 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.EpisodeMetadata | 0 | 2 | 2 | 49 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Genre | 0 | 4 | 4 | 50 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.ItemMetadata | 0 | 14 | 14 | 141 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Library | 0 | 5 | 5 | 60 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.LibraryItem | 0 | 5 | 5 | 55 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MediaFile | 0 | 7 | 7 | 72 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MediaFileStream | 0 | 4 | 4 | 50 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MetadataProvider | 0 | 5 | 5 | 53 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MetadataProviderId | 0 | 6 | 6 | 63 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Movie | 0 | 4 | 4 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MovieMetadata | 0 | 4 | 4 | 70 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MusicAlbum | 0 | 4 | 4 | 30 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.MusicAlbumMetadata | 0 | 3 | 3 | 56 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Person | 0 | 8 | 8 | 89 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.PersonRole | 0 | 7 | 7 | 80 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Photo | 0 | 4 | 4 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.PhotoMetadata | 0 | 2 | 2 | 17 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Rating | 0 | 4 | 4 | 59 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.RatingSource | 0 | 5 | 5 | 73 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Release | 0 | 7 | 7 | 67 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Season | 0 | 4 | 4 | 35 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.SeasonMetadata | 0 | 2 | 2 | 29 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Series | 0 | 4 | 4 | 46 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.SeriesMetadata | 0 | 4 | 4 | 70 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.Track | 0 | 4 | 4 | 34 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Libraries.TrackMetadata | 0 | 2 | 2 | 17 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Permission | 3 | 2 | 5 | 68 | 60% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Preference | 3 | 2 | 5 | 68 | 60% | | 1 | 2 | 50% | |
Jellyfin.Database.Implementations.Entities.Security.ApiKey | 0 | 4 | 4 | 56 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Security.Device | 11 | 0 | 11 | 107 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.Security.DeviceOptions | 0 | 2 | 2 | 35 | 0% | | 0 | 0 | | |
Jellyfin.Database.Implementations.Entities.User | 26 | 2 | 28 | 341 | 92.8% | | 0 | 0 | | |
Jellyfin.Database.Implementations.JellyfinDatabaseProviderKeyAttribute | 4 | 0 | 4 | 29 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.JellyfinDbContext | 36 | 10 | 46 | 282 | 78.2% | | 1 | 2 | 50% | |
Jellyfin.Database.Implementations.ModelConfiguration.ActivityLogConfiguration | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.AncestorIdConfiguration | 5 | 0 | 5 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.ApiKeyConfiguration | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.AttachmentStreamInfoConfiguration | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.BaseItemConfiguration | 26 | 0 | 26 | 57 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.BaseItemMetadataFieldConfiguration | 3 | 0 | 3 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.BaseItemProviderConfiguration | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.BaseItemTrailerTypeConfiguration | 3 | 0 | 3 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.ChapterConfiguration | 3 | 0 | 3 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.CustomItemDisplayPreferencesConfiguration | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.DeviceConfiguration | 9 | 0 | 9 | 28 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.DeviceOptionsConfiguration | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.DisplayPreferencesConfiguration | 8 | 0 | 8 | 25 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.ItemValuesConfiguration | 3 | 0 | 3 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.ItemValuesMapConfiguration | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.MediaStreamInfoConfiguration | 6 | 0 | 6 | 21 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.PeopleBaseItemMapConfiguration | 6 | 0 | 6 | 21 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.PeopleConfiguration | 4 | 0 | 4 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.PermissionConfiguration | 5 | 0 | 5 | 24 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.PreferenceConfiguration | 5 | 0 | 5 | 21 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.TrickplayInfoConfiguration | 2 | 0 | 2 | 18 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.UserConfiguration | 32 | 0 | 32 | 55 | 100% | | 0 | 0 | | |
Jellyfin.Database.Implementations.ModelConfiguration.UserDataConfiguration | 7 | 0 | 7 | 22 | 100% | | 0 | 0 | | |
Jellyfin.Database.Providers.Sqlite | 27496 | 795 | 28291 | 30728 | 97.1% | | 8 | 12 | 66.6% | |
Jellyfin.Database.Providers.Sqlite.DoNotUseReturningClauseConvention | 3 | 0 | 3 | 20 | 100% | | 2 | 2 | 100% | |
Jellyfin.Database.Providers.Sqlite.Migrations.SqliteDesignTimeJellyfinDbFactory | 6 | 0 | 6 | 25 | 100% | | 0 | 0 | | |
Jellyfin.Database.Providers.Sqlite.ModelBuilderExtensions | 9 | 0 | 9 | 47 | 100% | | 6 | 6 | 100% | |
Jellyfin.Database.Providers.Sqlite.SqliteDatabaseProvider | 11 | 15 | 26 | 121 | 42.3% | | 0 | 4 | 0% | |
Jellyfin.Database.Providers.Sqlite.ValueConverters.DateTimeKindValueConverter | 2 | 0 | 2 | 21 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddActivityLog | 73 | 4 | 77 | 118 | 94.8% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddCustomDisplayPreferences | 538 | 26 | 564 | 630 | 95.3% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddDevices | 700 | 10 | 710 | 781 | 98.5% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddDisplayPreferences | 519 | 10 | 529 | 591 | 98.1% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddedCustomDataKey | 1540 | 4 | 1544 | 1638 | 99.7% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddedCustomDataKeyKey | 1551 | 15 | 1566 | 1664 | 99% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddIndexActivityLogsDateCreated | 616 | 5 | 621 | 685 | 99.1% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddIndexesAndCollations | 595 | 91 | 686 | 775 | 86.7% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddInheritedParentalRatingSubValue | 1597 | 11 | 1608 | 1706 | 99.3% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddMaxActiveSessions | 433 | 5 | 438 | 492 | 98.8% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddMediaSegments | 676 | 3 | 679 | 746 | 99.5% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddTrickplayInfos | 652 | 3 | 655 | 721 | 99.5% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.AddUsers | 432 | 16 | 448 | 509 | 96.4% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.ChannelIdGuid | 1520 | 1 | 1521 | 1617 | 99.9% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.EnforceUniqueItemValue | 1528 | 8 | 1536 | 1632 | 99.4% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.FixAncestorIdConfig | 1537 | 16 | 1553 | 1652 | 98.9% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.FixDisplayPreferencesIndex | 439 | 15 | 454 | 512 | 96.6% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.FixedCollation | 1529 | 11 | 1540 | 1634 | 99.2% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.FixMediaStreams | 1805 | 329 | 2134 | 2302 | 84.5% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.FixMediaStreams2 | 1568 | 64 | 1632 | 1738 | 96% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.JellyfinDbModelSnapshot | 1582 | 0 | 1582 | 1655 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.LibraryDbMigration | 2062 | 29 | 2091 | 2246 | 98.6% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.MakeStartEndDateNullable | 1534 | 19 | 1553 | 1650 | 98.7% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.MarkSegmentProviderIdNonNullable | 674 | 8 | 682 | 748 | 98.8% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.NullableCustomPrefValue | 489 | 11 | 500 | 555 | 97.8% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.RemoveEasyPassword | 661 | 62 | 723 | 814 | 91.4% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Migrations.UserCastReceiver | 615 | 4 | 619 | 683 | 99.3% | | 0 | 0 | | |
Jellyfin.Drawing | 14 | 156 | 170 | 614 | 8.2% | | 5 | 60 | 8.3% | |
Jellyfin.Drawing.ImageProcessor | 14 | 145 | 159 | 551 | 8.8% | | 5 | 60 | 8.3% | |
Jellyfin.Drawing.NullImageEncoder | 0 | 11 | 11 | 63 | 0% | | 0 | 0 | | |
Jellyfin.Drawing.Skia | 37 | 538 | 575 | 1374 | 6.4% | | 2 | 224 | 0.8% | |
Jellyfin.Drawing.Skia.PercentPlayedDrawer | 0 | 10 | 10 | 35 | 0% | | 0 | 0 | | |
Jellyfin.Drawing.Skia.SkiaEncoder | 37 | 303 | 340 | 742 | 10.8% | | 2 | 148 | 1.3% | |
Jellyfin.Drawing.Skia.SkiaHelper | 0 | 12 | 12 | 46 | 0% | | 0 | 6 | 0% | |
Jellyfin.Drawing.Skia.SplashscreenBuilder | 0 | 68 | 68 | 172 | 0% | | 0 | 16 | 0% | |
Jellyfin.Drawing.Skia.StripCollageBuilder | 0 | 123 | 123 | 316 | 0% | | 0 | 48 | 0% | |
Jellyfin.Drawing.Skia.UnplayedCountIndicator | 0 | 22 | 22 | 63 | 0% | | 0 | 6 | 0% | |
Jellyfin.Extensions | 242 | 52 | 294 | 1516 | 82.3% | | 140 | 178 | 78.6% | |
Jellyfin.Extensions.AlphanumericComparator | 37 | 4 | 41 | 112 | 90.2% | | 32 | 36 | 88.8% | |
Jellyfin.Extensions.CopyToExtensions | 3 | 0 | 3 | 26 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.DictionaryExtensions | 9 | 0 | 9 | 64 | 100% | | 16 | 16 | 100% | |
Jellyfin.Extensions.EnumerableExtensions | 7 | 5 | 12 | 77 | 58.3% | | 5 | 10 | 50% | |
Jellyfin.Extensions.FormattingStreamWriter | 4 | 3 | 7 | 38 | 57.1% | | 0 | 0 | | |
Jellyfin.Extensions.GuidExtensions | 2 | 0 | 2 | 26 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonBoolNumberConverter | 5 | 0 | 5 | 30 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonBoolStringConverter | 5 | 1 | 6 | 33 | 83.3% | | 3 | 6 | 50% | |
Jellyfin.Extensions.Json.Converters.JsonCommaDelimitedCollectionConverter<T> | 3 | 0 | 3 | 19 | 100% | | 0 | 0 | | |
Jellyfin.Extensions.Json.Converters.JsonCommaDelimitedCollectionConverterFactory | 5 | 0 | 5 | 31 | 100% | | 7 | 8 | 87.5% | |
Jellyfin.Extensions.Json.Converters.JsonDateTimeConverter | 5 | 0 | 5 | 34 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonDefaultStringEnumConverter<T> | 10 | 1 | 11 | 49 | 90.9% | | 6 | 8 | 75% | |
Jellyfin.Extensions.Json.Converters.JsonDefaultStringEnumConverterFactory | 6 | 0 | 6 | 31 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonDelimitedCollectionConverter<T> | 21 | 0 | 21 | 76 | 100% | | 10 | 10 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonFlagEnumConverter<T> | 7 | 1 | 8 | 36 | 87.5% | | 4 | 4 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonFlagEnumConverterFactory | 2 | 0 | 2 | 24 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonGuidConverter | 6 | 0 | 6 | 30 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonNullableGuidConverter | 6 | 0 | 6 | 31 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonNullableStructConverter<T> | 3 | 1 | 4 | 30 | 75% | | 1 | 2 | 50% | |
Jellyfin.Extensions.Json.Converters.JsonNullableStructConverterFactory | 5 | 0 | 5 | 27 | 100% | | 4 | 4 | 100% | |
Jellyfin.Extensions.Json.Converters.JsonPipeDelimitedCollectionConverter<T> | 0 | 3 | 3 | 19 | 0% | | 0 | 0 | | |
Jellyfin.Extensions.Json.Converters.JsonPipeDelimitedCollectionConverterFactory | 0 | 5 | 5 | 31 | 0% | | 0 | 8 | 0% | |
Jellyfin.Extensions.Json.Converters.JsonStringConverter | 6 | 0 | 6 | 30 | 100% | | 3 | 4 | 75% | |
Jellyfin.Extensions.Json.Converters.JsonVersionConverter | 2 | 0 | 2 | 23 | 100% | | 0 | 0 | | |
Jellyfin.Extensions.Json.JsonDefaults | 31 | 0 | 31 | 93 | 100% | | 0 | 0 | | |
Jellyfin.Extensions.Json.Utf8JsonExtensions | 4 | 0 | 4 | 27 | 100% | | 5 | 8 | 62.5% | |
Jellyfin.Extensions.ReadOnlyListExtension | 10 | 5 | 15 | 77 | 66.6% | | 10 | 16 | 62.5% | |
Jellyfin.Extensions.ShuffleExtensions | 9 | 0 | 9 | 39 | 100% | | 2 | 2 | 100% | |
Jellyfin.Extensions.SplitStringExtensions | 2 | 0 | 2 | 115 | 100% | | 0 | 0 | | |
Jellyfin.Extensions.StreamExtensions | 4 | 0 | 4 | 64 | 100% | | 0 | 0 | | |
Jellyfin.Extensions.StringBuilderExtensions | 0 | 8 | 8 | 35 | 0% | | 0 | 2 | 0% | |
Jellyfin.Extensions.StringExtensions | 23 | 15 | 38 | 139 | 60.5% | | 16 | 18 | 88.8% | |
Jellyfin.LiveTv | 407 | 2227 | 2634 | 12135 | 15.4% | | 87 | 1056 | 8.2% | |
Jellyfin.LiveTv.Channels.ChannelDynamicMediaSourceProvider | 2 | 4 | 6 | 43 | 33.3% | | 0 | 2 | 0% | |
Jellyfin.LiveTv.Channels.ChannelImageProvider | 3 | 7 | 10 | 64 | 30% | | 0 | 0 | | |
Jellyfin.LiveTv.Channels.ChannelManager | 23 | 103 | 126 | 1217 | 18.2% | | 4 | 41 | 9.7% | |
Jellyfin.LiveTv.Channels.ChannelPostScanTask | 0 | 39 | 39 | 100 | 0% | | 0 | 4 | 0% | |
Jellyfin.LiveTv.Channels.RefreshChannelsScheduledTask | 14 | 6 | 20 | 87 | 70% | | 0 | 0 | | |
Jellyfin.LiveTv.Configuration.LiveTvConfigurationExtensions | 1 | 1 | 2 | 27 | 50% | | 0 | 0 | | |
Jellyfin.LiveTv.Configuration.LiveTvConfigurationFactory | 8 | 0 | 8 | 24 | 100% | | 0 | 0 | | |
Jellyfin.LiveTv.DefaultLiveTvService | 11 | 361 | 372 | 999 | 2.9% | | 0 | 146 | 0% | |
Jellyfin.LiveTv.Extensions.LiveTvServiceCollectionExtensions | 17 | 0 | 17 | 46 | 100% | | 0 | 0 | | |
Jellyfin.LiveTv.Guide.GuideManager | 10 | 173 | 183 | 761 | 5.4% | | 0 | 89 | 0% | |
Jellyfin.LiveTv.Guide.RefreshGuideScheduledTask | 15 | 5 | 20 | 74 | 75% | | 0 | 2 | 0% | |
Jellyfin.LiveTv.IO.DirectRecorder | 0 | 9 | 9 | 118 | 0% | | 0 | 2 | 0% | |
Jellyfin.LiveTv.IO.EncodedRecorder | 0 | 98 | 98 | 334 | 0% | | 0 | 34 | 0% | |
Jellyfin.LiveTv.IO.ExclusiveLiveStream | 0 | 11 | 11 | 61 | 0% | | 0 | 0 | | |
Jellyfin.LiveTv.Listings.EpgChannelData | 0 | 15 | 15 | 54 | 0% | | 0 | 8 | 0% | |
Jellyfin.LiveTv.Listings.ListingsManager | 12 | 65 | 77 | 464 | 15.5% | | 0 | 40 | 0% | |
Jellyfin.LiveTv.Listings.SchedulesDirect | 14 | 133 | 147 | 814 | 9.5% | | 4 | 98 | 4% | |
Jellyfin.LiveTv.Listings.XmlTvListingsProvider | 44 | 14 | 58 | 269 | 75.8% | | 23 | 42 | 54.7% | |
Jellyfin.LiveTv.LiveTvDtoService | 6 | 224 | 230 | 549 | 2.6% | | 0 | 82 | 0% | |
Jellyfin.LiveTv.LiveTvManager | 19 | 231 | 250 | 1292 | 7.6% | | 2 | 96 | 2% | |
Jellyfin.LiveTv.LiveTvMediaSourceProvider | 7 | 65 | 72 | 332 | 9.7% | | 0 | 58 | 0% | |
Jellyfin.LiveTv.Recordings.RecordingHelper | 27 | 0 | 27 | 76 | 100% | | 20 | 20 | 100% | |
Jellyfin.LiveTv.Recordings.RecordingNotifier | 15 | 0 | 15 | 97 | 100% | | 0 | 0 | | |
Jellyfin.LiveTv.Recordings.RecordingsHost | 6 | 0 | 6 | 37 | 100% | | 0 | 0 | | |
Jellyfin.LiveTv.Recordings.RecordingsManager | 28 | 141 | 169 | 838 | 16.5% | | 6 | 100 | 6% | |
Jellyfin.LiveTv.Recordings.RecordingsMetadataManager | 4 | 0 | 4 | 496 | 100% | | 0 | 0 | | |
Jellyfin.LiveTv.Timers.ItemDataProvider<T> | 14 | 47 | 61 | 156 | 22.9% | | 2 | 14 | 14.2% | |
Jellyfin.LiveTv.Timers.SeriesTimerManager | 5 | 3 | 8 | 29 | 62.5% | | 0 | 0 | | |
Jellyfin.LiveTv.Timers.TimerManager | 12 | 63 | 75 | 172 | 16% | | 2 | 26 | 7.6% | |
Jellyfin.LiveTv.TunerHosts.BaseTunerHost | 3 | 6 | 9 | 232 | 33.3% | | 0 | 0 | | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.DiscoverResponse | 0 | 4 | 4 | 42 | 0% | | 0 | 4 | 0% | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.HdHomerunChannelCommands | 0 | 3 | 3 | 35 | 0% | | 0 | 0 | | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.HdHomerunHost | 16 | 114 | 130 | 557 | 12.3% | | 4 | 34 | 11.7% | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.HdHomerunManager | 54 | 11 | 65 | 351 | 83% | | 20 | 24 | 83.3% | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.HdHomerunUdpStream | 0 | 14 | 14 | 219 | 0% | | 0 | 0 | | |
Jellyfin.LiveTv.TunerHosts.HdHomerun.LegacyHdHomerunChannelCommands | 0 | 5 | 5 | 40 | 0% | | 0 | 2 | 0% | |
Jellyfin.LiveTv.TunerHosts.LiveStream | 0 | 43 | 43 | 176 | 0% | | 0 | 10 | 0% | |
Jellyfin.LiveTv.TunerHosts.M3uParser | 3 | 90 | 93 | 326 | 3.2% | | 0 | 70 | 0% | |
Jellyfin.LiveTv.TunerHosts.M3UTunerHost | 9 | 57 | 66 | 218 | 13.6% | | 0 | 8 | 0% | |
Jellyfin.LiveTv.TunerHosts.SharedHttpStream | 0 | 56 | 56 | 135 | 0% | | 0 | 0 | | |
Jellyfin.LiveTv.TunerHosts.TunerHostManager | 5 | 6 | 11 | 174 | 45.4% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Hls | 96 | 190 | 286 | 620 | 33.5% | | 24 | 66 | 36.3% | |
Jellyfin.MediaEncoding.Hls.Cache.CacheDecorator | 9 | 37 | 46 | 96 | 19.5% | | 0 | 8 | 0% | |
Jellyfin.MediaEncoding.Hls.Extensions.MediaEncodingHlsServiceCollectionExtensions | 14 | 0 | 14 | 36 | 100% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Hls.Extractors.FfProbeKeyframeExtractor | 6 | 15 | 21 | 58 | 28.5% | | 0 | 2 | 0% | |
Jellyfin.MediaEncoding.Hls.Extractors.MatroskaKeyframeExtractor | 4 | 15 | 19 | 48 | 21% | | 0 | 2 | 0% | |
Jellyfin.MediaEncoding.Hls.Playlist.CreateMainPlaylistRequest | 0 | 2 | 2 | 63 | 0% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Hls.Playlist.DynamicHlsPlaylistGenerator | 57 | 75 | 132 | 208 | 43.1% | | 24 | 42 | 57.1% | |
Jellyfin.MediaEncoding.Hls.ScheduledTasks.KeyframeExtractionScheduledTask | 6 | 46 | 52 | 111 | 11.5% | | 0 | 12 | 0% | |
Jellyfin.MediaEncoding.Keyframes | 46 | 176 | 222 | 496 | 20.7% | | 19 | 68 | 27.9% | |
Jellyfin.MediaEncoding.Keyframes.FfProbe.FfProbeKeyframeExtractor | 44 | 38 | 82 | 122 | 53.6% | | 19 | 22 | 86.3% | |
Jellyfin.MediaEncoding.Keyframes.FfTool.FfToolKeyframeExtractor | 0 | 1 | 1 | 17 | 0% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Keyframes.KeyframeData | 2 | 0 | 2 | 30 | 100% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Keyframes.Matroska.Extensions.EbmlReaderExtensions | 0 | 88 | 88 | 177 | 0% | | 0 | 38 | 0% | |
Jellyfin.MediaEncoding.Keyframes.Matroska.MatroskaKeyframeExtractor | 0 | 45 | 45 | 87 | 0% | | 0 | 8 | 0% | |
Jellyfin.MediaEncoding.Keyframes.Matroska.Models.Info | 0 | 2 | 2 | 28 | 0% | | 0 | 0 | | |
Jellyfin.MediaEncoding.Keyframes.Matroska.Models.SeekHead | 0 | 2 | 2 | 35 | 0% | | 0 | 0 | | |
Jellyfin.Networking | 377 | 122 | 499 | 1408 | 75.5% | | 180 | 270 | 66.6% | |
Jellyfin.Networking.AutoDiscoveryHost | 10 | 0 | 10 | 120 | 100% | | 0 | 0 | | |
Jellyfin.Networking.HappyEyeballs.HttpClientExtension | 1 | 0 | 1 | 119 | 100% | | 0 | 0 | | |
Jellyfin.Networking.Manager.NetworkManager | 358 | 118 | 476 | 1131 | 75.2% | | 179 | 268 | 66.7% | |
Jellyfin.Networking.Udp.SocketFactory | 8 | 4 | 12 | 38 | 66.6% | | 1 | 2 | 50% | |
Jellyfin.Server.Implementations | 891 | 1274 | 2165 | 7742 | 41.1% | | 390 | 1013 | 38.4% | |
Jellyfin.Server.Implementations.Activity.ActivityManager | 11 | 0 | 11 | 103 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.DatabaseConfiguration.DatabaseConfigurationStore | 4 | 0 | 4 | 26 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Devices.DeviceManager | 43 | 69 | 112 | 311 | 38.3% | | 9 | 32 | 28.1% | |
Jellyfin.Server.Implementations.Events.Consumers.Library.LyricDownloadFailureLogger | 0 | 28 | 28 | 101 | 0% | | 0 | 16 | 0% | |
Jellyfin.Server.Implementations.Events.Consumers.Library.SubtitleDownloadFailureLogger | 0 | 28 | 28 | 102 | 0% | | 0 | 16 | 0% | |
Jellyfin.Server.Implementations.Events.Consumers.Security.AuthenticationFailedLogger | 0 | 3 | 3 | 51 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Security.AuthenticationSucceededLogger | 3 | 0 | 3 | 48 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Session.PlaybackStartLogger | 0 | 15 | 15 | 108 | 0% | | 0 | 10 | 0% | |
Jellyfin.Server.Implementations.Events.Consumers.Session.PlaybackStopLogger | 0 | 15 | 15 | 116 | 0% | | 0 | 10 | 0% | |
Jellyfin.Server.Implementations.Events.Consumers.Session.SessionEndedLogger | 0 | 3 | 3 | 54 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Session.SessionStartedLogger | 3 | 0 | 3 | 54 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.System.PendingRestartNotifier | 0 | 2 | 2 | 31 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.System.TaskCompletedLogger | 0 | 32 | 32 | 158 | 0% | | 0 | 22 | 0% | |
Jellyfin.Server.Implementations.Events.Consumers.System.TaskCompletedNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstallationCancelledNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstallationFailedLogger | 0 | 3 | 3 | 51 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstallationFailedNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstalledLogger | 0 | 3 | 3 | 50 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstalledNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginInstallingNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginUninstalledLogger | 0 | 3 | 3 | 45 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginUninstalledNotifier | 0 | 2 | 2 | 32 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Updates.PluginUpdatedLogger | 0 | 3 | 3 | 51 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserCreatedLogger | 3 | 0 | 3 | 43 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserDeletedLogger | 0 | 3 | 3 | 44 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserDeletedNotifier | 0 | 2 | 2 | 39 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserLockedOutLogger | 0 | 3 | 3 | 47 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserPasswordChangedLogger | 3 | 0 | 3 | 43 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.Consumers.Users.UserUpdatedNotifier | 0 | 3 | 3 | 42 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.EventingServiceCollectionExtensions | 27 | 0 | 27 | 72 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Events.EventManager | 5 | 0 | 5 | 65 | 100% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Extensions.ExpressionExtensions | 0 | 12 | 12 | 70 | 0% | | 0 | 4 | 0% | |
Jellyfin.Server.Implementations.Extensions.ServiceCollectionExtensions | 26 | 5 | 31 | 96 | 83.8% | | 11 | 14 | 78.5% | |
Jellyfin.Server.Implementations.Item.BaseItemRepository | 548 | 495 | 1043 | 2219 | 52.5% | | 314 | 648 | 48.4% | |
Jellyfin.Server.Implementations.Item.ChapterRepository | 3 | 54 | 57 | 124 | 5.2% | | 0 | 4 | 0% | |
Jellyfin.Server.Implementations.Item.MediaAttachmentRepository | 0 | 33 | 33 | 74 | 0% | | 0 | 2 | 0% | |
Jellyfin.Server.Implementations.Item.MediaStreamRepository | 4 | 127 | 131 | 214 | 3% | | 0 | 22 | 0% | |
Jellyfin.Server.Implementations.Item.OrderMapper | 10 | 22 | 32 | 57 | 31.2% | | 6 | 29 | 20.6% | |
Jellyfin.Server.Implementations.Item.PeopleRepository | 1 | 82 | 83 | 200 | 1.2% | | 0 | 44 | 0% | |
Jellyfin.Server.Implementations.MediaSegments.MediaSegmentManager | 7 | 28 | 35 | 246 | 20% | | 0 | 8 | 0% | |
Jellyfin.Server.Implementations.Security.AuthenticationManager | 0 | 2 | 2 | 69 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Security.AuthorizationContext | 37 | 5 | 42 | 319 | 88% | | 27 | 36 | 75% | |
Jellyfin.Server.Implementations.Trickplay.TrickplayManager | 11 | 68 | 79 | 642 | 13.9% | | 0 | 34 | 0% | |
Jellyfin.Server.Implementations.Users.DefaultAuthenticationProvider | 17 | 16 | 33 | 115 | 51.5% | | 6 | 18 | 33.3% | |
Jellyfin.Server.Implementations.Users.DefaultPasswordResetProvider | 4 | 2 | 6 | 133 | 66.6% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Users.DeviceAccessHost | 0 | 8 | 8 | 77 | 0% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Users.DisplayPreferencesManager | 0 | 35 | 35 | 109 | 0% | | 0 | 6 | 0% | |
Jellyfin.Server.Implementations.Users.InvalidAuthProvider | 1 | 4 | 5 | 36 | 20% | | 0 | 0 | | |
Jellyfin.Server.Implementations.Users.UserManager | 120 | 46 | 166 | 895 | 72.2% | | 17 | 38 | 44.7% | |
MediaBrowser.Common | 308 | 110 | 418 | 1864 | 73.6% | | 109 | 180 | 60.5% | |
MediaBrowser.Common.Configuration.ConfigurationManagerExtensions | 1 | 0 | 1 | 97 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Configuration.ConfigurationUpdateEventArgs | 2 | 0 | 2 | 33 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Configuration.EncodingConfigurationExtensions | 6 | 0 | 6 | 43 | 100% | | 2 | 2 | 100% | |
MediaBrowser.Common.Crc32 | 72 | 0 | 72 | 89 | 100% | | 2 | 2 | 100% | |
MediaBrowser.Common.Events.EventHelper | 13 | 13 | 26 | 64 | 50% | | 2 | 4 | 50% | |
MediaBrowser.Common.Extensions.BaseExtensions | 1 | 1 | 2 | 37 | 50% | | 0 | 0 | | |
MediaBrowser.Common.Extensions.HttpContextExtensions | 6 | 1 | 7 | 41 | 85.7% | | 5 | 8 | 62.5% | |
MediaBrowser.Common.Extensions.MethodNotAllowedException | 0 | 4 | 4 | 26 | 0% | | 0 | 0 | | |
MediaBrowser.Common.Extensions.RateLimitExceededException | 0 | 4 | 4 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Common.Extensions.ResourceNotFoundException | 4 | 0 | 4 | 26 | 100% | | 0 | 0 | | |
MediaBrowser.Common.FfmpegException | 0 | 6 | 6 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Common.Net.NetworkConfiguration | 12 | 0 | 12 | 176 | 100% | | 6 | 6 | 100% | |
MediaBrowser.Common.Net.NetworkConfigurationExtensions | 1 | 0 | 1 | 19 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Net.NetworkConfigurationFactory | 4 | 0 | 4 | 22 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Net.NetworkConfigurationStore | 4 | 0 | 4 | 23 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Net.NetworkConstants | 10 | 0 | 10 | 80 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Net.NetworkUtils | 62 | 52 | 114 | 348 | 54.3% | | 56 | 92 | 60.8% | |
MediaBrowser.Common.Plugins.BasePlugin | 13 | 4 | 17 | 94 | 76.4% | | 0 | 0 | | |
MediaBrowser.Common.Plugins.BasePlugin<T> | 38 | 14 | 52 | 203 | 73% | | 9 | 16 | 56.2% | |
MediaBrowser.Common.Plugins.LocalPlugin | 13 | 11 | 24 | 139 | 54.1% | | 5 | 28 | 17.8% | |
MediaBrowser.Common.Plugins.PluginManifest | 11 | 0 | 11 | 117 | 100% | | 0 | 0 | | |
MediaBrowser.Common.Providers.ProviderIdParsers | 35 | 0 | 35 | 123 | 100% | | 22 | 22 | 100% | |
MediaBrowser.Controller | 1322 | 7776 | 9098 | 29721 | 14.5% | | 610 | 6256 | 9.7% | |
MediaBrowser.Controller.Authentication.AuthenticationException | 2 | 4 | 6 | 35 | 33.3% | | 0 | 0 | | |
MediaBrowser.Controller.BaseItemManager.BaseItemManager | 14 | 4 | 18 | 73 | 77.7% | | 10 | 16 | 62.5% | |
MediaBrowser.Controller.Channels.Channel | 1 | 20 | 21 | 87 | 4.7% | | 0 | 8 | 0% | |
MediaBrowser.Controller.Channels.ChannelItemInfo | 0 | 10 | 10 | 97 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Channels.ChannelItemResult | 0 | 2 | 2 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Channels.InternalChannelFeatures | 0 | 4 | 4 | 66 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.ClientEvent.ClientEventLogger | 0 | 2 | 2 | 34 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Collections.CollectionCreationOptions | 0 | 4 | 4 | 32 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Collections.CollectionModifiedEventArgs | 0 | 4 | 4 | 30 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Drawing.ImageHelper | 0 | 3 | 3 | 17 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Drawing.ImageProcessingOptions | 0 | 33 | 33 | 126 | 0% | | 0 | 44 | 0% | |
MediaBrowser.Controller.Drawing.ImageProcessorExtensions | 0 | 5 | 5 | 27 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.Dto.DtoOptions | 21 | 1 | 22 | 68 | 95.4% | | 4 | 6 | 66.6% | |
MediaBrowser.Controller.Entities.AggregateFolder | 49 | 10 | 59 | 204 | 83% | | 16 | 24 | 66.6% | |
MediaBrowser.Controller.Entities.Audio.Audio | 5 | 33 | 38 | 153 | 13.1% | | 0 | 14 | 0% | |
MediaBrowser.Controller.Entities.Audio.Extensions | 0 | 1 | 1 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.Audio.MusicAlbum | 4 | 47 | 51 | 227 | 7.8% | | 0 | 16 | 0% | |
MediaBrowser.Controller.Entities.Audio.MusicArtist | 2 | 56 | 58 | 231 | 3.4% | | 0 | 24 | 0% | |
MediaBrowser.Controller.Entities.Audio.MusicGenre | 0 | 32 | 32 | 127 | 0% | | 0 | 8 | 0% | |
MediaBrowser.Controller.Entities.AudioBook | 0 | 9 | 9 | 65 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.BaseItem | 372 | 356 | 728 | 2648 | 51% | | 182 | 442 | 41.1% | |
MediaBrowser.Controller.Entities.BaseItemExtensions | 16 | 11 | 27 | 118 | 59.2% | | 12 | 14 | 85.7% | |
MediaBrowser.Controller.Entities.BasePluginFolder | 0 | 5 | 5 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.Book | 3 | 15 | 18 | 88 | 16.6% | | 0 | 2 | 0% | |
MediaBrowser.Controller.Entities.CollectionFolder | 82 | 38 | 120 | 373 | 68.3% | | 23 | 46 | 50% | |
MediaBrowser.Controller.Entities.Extensions | 9 | 2 | 11 | 42 | 81.8% | | 2 | 6 | 33.3% | |
MediaBrowser.Controller.Entities.Folder | 180 | 364 | 544 | 1814 | 33% | | 107 | 364 | 29.3% | |
MediaBrowser.Controller.Entities.Genre | 0 | 37 | 37 | 130 | 0% | | 0 | 8 | 0% | |
MediaBrowser.Controller.Entities.HasTrailerExtensions | 0 | 1 | 1 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.InternalItemsQuery | 58 | 1 | 59 | 380 | 98.3% | | 5 | 6 | 83.3% | |
MediaBrowser.Controller.Entities.InternalPeopleQuery | 0 | 3 | 3 | 45 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.ItemImageInfo | 1 | 0 | 1 | 42 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.LinkedChild | 0 | 10 | 10 | 45 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.Entities.LinkedChildComparer | 2 | 4 | 6 | 35 | 33.3% | | 0 | 6 | 0% | |
MediaBrowser.Controller.Entities.MediaSourceWidthComparator | 0 | 17 | 17 | 56 | 0% | | 0 | 18 | 0% | |
MediaBrowser.Controller.Entities.Movies.BoxSet | 3 | 64 | 67 | 229 | 4.4% | | 0 | 30 | 0% | |
MediaBrowser.Controller.Entities.Movies.Movie | 2 | 33 | 35 | 125 | 5.7% | | 0 | 18 | 0% | |
MediaBrowser.Controller.Entities.MusicVideo | 3 | 18 | 21 | 75 | 14.2% | | 0 | 8 | 0% | |
MediaBrowser.Controller.Entities.PeopleHelper | 17 | 19 | 36 | 100 | 47.2% | | 10 | 28 | 35.7% | |
MediaBrowser.Controller.Entities.Person | 13 | 28 | 41 | 149 | 31.7% | | 5 | 14 | 35.7% | |
MediaBrowser.Controller.Entities.PersonInfo | 3 | 2 | 5 | 69 | 60% | | 0 | 2 | 0% | |
MediaBrowser.Controller.Entities.Photo | 0 | 20 | 20 | 98 | 0% | | 0 | 12 | 0% | |
MediaBrowser.Controller.Entities.PhotoAlbum | 0 | 3 | 3 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Entities.Studio | 0 | 32 | 32 | 125 | 0% | | 0 | 8 | 0% | |
MediaBrowser.Controller.Entities.TagExtensions | 5 | 3 | 8 | 33 | 62.5% | | 3 | 6 | 50% | |
MediaBrowser.Controller.Entities.Trailer | 3 | 20 | 23 | 84 | 13% | | 0 | 12 | 0% | |
MediaBrowser.Controller.Entities.TV.Episode | 0 | 103 | 103 | 345 | 0% | | 0 | 78 | 0% | |
MediaBrowser.Controller.Entities.TV.Season | 0 | 75 | 75 | 288 | 0% | | 0 | 38 | 0% | |
MediaBrowser.Controller.Entities.TV.Series | 3 | 193 | 196 | 527 | 1.5% | | 0 | 56 | 0% | |
MediaBrowser.Controller.Entities.UserItemData | 3 | 10 | 13 | 121 | 23% | | 1 | 12 | 8.3% | |
MediaBrowser.Controller.Entities.UserRootFolder | 29 | 10 | 39 | 141 | 74.3% | | 4 | 6 | 66.6% | |
MediaBrowser.Controller.Entities.UserView | 15 | 35 | 50 | 190 | 30% | | 0 | 18 | 0% | |
MediaBrowser.Controller.Entities.UserViewBuilder | 53 | 389 | 442 | 1010 | 11.9% | | 84 | 282 | 29.7% | |
MediaBrowser.Controller.Entities.Video | 20 | 128 | 148 | 554 | 13.5% | | 11 | 74 | 14.8% | |
MediaBrowser.Controller.Entities.Year | 0 | 35 | 35 | 132 | 0% | | 0 | 10 | 0% | |
MediaBrowser.Controller.Events.Authentication.AuthenticationRequestEventArgs | 0 | 9 | 9 | 60 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Authentication.AuthenticationResultEventArgs | 5 | 0 | 5 | 37 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Session.SessionEndedEventArgs | 0 | 2 | 2 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Session.SessionStartedEventArgs | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Updates.PluginInstallationCancelledEventArgs | 0 | 2 | 2 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Updates.PluginInstalledEventArgs | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Updates.PluginInstallingEventArgs | 2 | 0 | 2 | 19 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Updates.PluginUninstalledEventArgs | 0 | 2 | 2 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Events.Updates.PluginUpdatedEventArgs | 0 | 2 | 2 | 19 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Extensions.ConfigurationExtensions | 4 | 5 | 9 | 150 | 44.4% | | 0 | 0 | | |
MediaBrowser.Controller.Extensions.XmlReaderExtensions | 56 | 4 | 60 | 193 | 93.3% | | 39 | 64 | 60.9% | |
MediaBrowser.Controller.IO.FileData | 21 | 11 | 32 | 108 | 65.6% | | 15 | 18 | 83.3% | |
MediaBrowser.Controller.IO.FileSystemHelper | 2 | 19 | 21 | 64 | 9.5% | | 2 | 4 | 50% | |
MediaBrowser.Controller.Library.DeleteOptions | 2 | 0 | 2 | 16 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Library.ItemResolveArgs | 28 | 19 | 47 | 286 | 59.5% | | 15 | 38 | 39.4% | |
MediaBrowser.Controller.Library.LibraryManagerExtensions | 0 | 1 | 1 | 15 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Library.MetadataConfigurationExtensions | 2 | 0 | 2 | 24 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Library.MetadataConfigurationStore | 8 | 0 | 8 | 23 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Library.NameExtensions | 3 | 1 | 4 | 25 | 75% | | 1 | 2 | 50% | |
MediaBrowser.Controller.Library.PlaybackProgressEventArgs | 0 | 3 | 3 | 48 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Library.TVUtils | 7 | 12 | 19 | 49 | 36.8% | | 3 | 6 | 50% | |
MediaBrowser.Controller.LiveTv.LiveTvChannel | 1 | 30 | 31 | 157 | 3.2% | | 0 | 12 | 0% | |
MediaBrowser.Controller.LiveTv.LiveTvConflictException | 0 | 2 | 2 | 17 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.LiveTv.LiveTvProgram | 4 | 45 | 49 | 259 | 8.1% | | 0 | 32 | 0% | |
MediaBrowser.Controller.LiveTv.ProgramInfo | 4 | 0 | 4 | 227 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.LiveTv.SeriesTimerInfo | 0 | 4 | 4 | 127 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.LiveTv.TimerEventInfo | 0 | 1 | 1 | 18 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.LiveTv.TimerInfo | 11 | 0 | 11 | 166 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.MediaEncoding.BaseEncodingJobOptions | 0 | 13 | 13 | 220 | 0% | | 0 | 4 | 0% | |
MediaBrowser.Controller.MediaEncoding.DownMixAlgorithmsHelper | 0 | 37 | 37 | 74 | 0% | | 0 | 13 | 0% | |
MediaBrowser.Controller.MediaEncoding.EncodingHelper | 24 | 3583 | 3607 | 7513 | 0.6% | | 0 | 3555 | 0% | |
MediaBrowser.Controller.MediaEncoding.EncodingJobInfo | 0 | 215 | 215 | 750 | 0% | | 0 | 208 | 0% | |
MediaBrowser.Controller.MediaEncoding.JobLogger | 0 | 53 | 53 | 163 | 0% | | 0 | 42 | 0% | |
MediaBrowser.Controller.MediaEncoding.TranscodingJob | 0 | 59 | 59 | 288 | 0% | | 0 | 30 | 0% | |
MediaBrowser.Controller.MediaEncoding.TranscodingSegmentCleaner | 0 | 40 | 40 | 178 | 0% | | 0 | 12 | 0% | |
MediaBrowser.Controller.MediaEncoding.TranscodingThrottler | 0 | 49 | 49 | 218 | 0% | | 0 | 20 | 0% | |
MediaBrowser.Controller.Net.AuthorizationInfo | 2 | 0 | 2 | 69 | 100% | | 1 | 2 | 50% | |
MediaBrowser.Controller.Net.BasePeriodicWebSocketListener<T1, T2> | 14 | 39 | 53 | 305 | 26.4% | | 0 | 10 | 0% | |
MediaBrowser.Controller.Net.SecurityException | 2 | 4 | 6 | 37 | 33.3% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessage<T> | 2 | 3 | 5 | 32 | 40% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.ActivityLogEntryStartMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.ActivityLogEntryStopMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.InboundKeepAliveMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.ScheduledTasksInfoStartMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.ScheduledTasksInfoStopMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.SessionsStartMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Inbound.SessionsStopMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.InboundWebSocketMessage<T> | 2 | 3 | 5 | 26 | 40% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ActivityLogEntryMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ForceKeepAliveMessage | 0 | 3 | 3 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.GeneralCommandMessage | 0 | 3 | 3 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.LibraryChangedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.OutboundKeepAliveMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PlayMessage | 0 | 3 | 3 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PlaystateMessage | 0 | 3 | 3 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PluginInstallationCancelledMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PluginInstallationCompletedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PluginInstallationFailedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PluginInstallingMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.PluginUninstalledMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.RefreshProgressMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.RestartRequiredMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ScheduledTaskEndedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ScheduledTasksInfoMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SeriesTimerCancelledMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SeriesTimerCreatedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ServerRestartingMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.ServerShuttingDownMessage | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SessionsMessage | 0 | 3 | 3 | 26 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayCommandMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayGroupUpdateCommandMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayGroupUpdateCommandOfGroupInfoMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayGroupUpdateCommandOfGroupStateUpdateMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayGroupUpdateCommandOfPlayQueueUpdateMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.SyncPlayGroupUpdateCommandOfStringMessage | 0 | 3 | 3 | 25 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.TimerCancelledMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.TimerCreatedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.UserDataChangedMessage | 0 | 3 | 3 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.UserDeletedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.Outbound.UserUpdatedMessage | 0 | 3 | 3 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Net.WebSocketMessages.OutboundWebSocketMessage<T> | 0 | 6 | 6 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Playlists.Playlist | 12 | 82 | 94 | 274 | 12.7% | | 0 | 30 | 0% | |
MediaBrowser.Controller.Providers.AlbumInfo | 0 | 5 | 5 | 31 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Providers.ArtistInfo | 0 | 3 | 3 | 16 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Providers.DirectoryService | 37 | 1 | 38 | 116 | 97.3% | | 25 | 26 | 96.1% | |
MediaBrowser.Controller.Providers.DynamicImageResponse | 0 | 8 | 8 | 44 | 0% | | 0 | 6 | 0% | |
MediaBrowser.Controller.Providers.EpisodeInfo | 0 | 4 | 4 | 29 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Providers.ImageRefreshOptions | 7 | 0 | 7 | 42 | 100% | | 3 | 4 | 75% | |
MediaBrowser.Controller.Providers.ItemInfo | 10 | 0 | 10 | 44 | 100% | | 2 | 2 | 100% | |
MediaBrowser.Controller.Providers.ItemLookupInfo | 3 | 0 | 3 | 69 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Providers.MetadataRefreshOptions | 5 | 17 | 22 | 77 | 22.7% | | 2 | 12 | 16.6% | |
MediaBrowser.Controller.Providers.MetadataResult<T> | 11 | 4 | 15 | 74 | 73.3% | | 9 | 10 | 90% | |
MediaBrowser.Controller.Providers.SeasonInfo | 0 | 3 | 3 | 20 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Providers.SongInfo | 0 | 4 | 4 | 24 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Resolvers.ItemResolver<T> | 6 | 1 | 7 | 55 | 85.7% | | 2 | 2 | 100% | |
MediaBrowser.Controller.Resolvers.MultiItemResolverResult | 3 | 0 | 3 | 52 | 100% | | 0 | 0 | | |
MediaBrowser.Controller.Session.SessionInfo | 25 | 46 | 71 | 486 | 35.2% | | 12 | 44 | 27.2% | |
MediaBrowser.Controller.Sorting.SortExtensions | 0 | 5 | 5 | 34 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.Streaming.ProgressiveFileStream | 0 | 46 | 46 | 182 | 0% | | 0 | 16 | 0% | |
MediaBrowser.Controller.Streaming.StreamState | 0 | 42 | 42 | 183 | 0% | | 0 | 32 | 0% | |
MediaBrowser.Controller.Streaming.VideoRequestDto | 0 | 1 | 1 | 23 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.Subtitles.SubtitleSearchRequest | 0 | 5 | 5 | 57 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.GroupMember | 0 | 4 | 4 | 60 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.GroupStates.AbstractGroupState | 0 | 81 | 81 | 233 | 0% | | 0 | 12 | 0% | |
MediaBrowser.Controller.SyncPlay.GroupStates.IdleGroupState | 0 | 37 | 37 | 128 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.SyncPlay.GroupStates.PausedGroupState | 0 | 54 | 54 | 161 | 0% | | 0 | 6 | 0% | |
MediaBrowser.Controller.SyncPlay.GroupStates.PlayingGroupState | 0 | 52 | 52 | 164 | 0% | | 0 | 8 | 0% | |
MediaBrowser.Controller.SyncPlay.GroupStates.WaitingGroupState | 0 | 282 | 282 | 680 | 0% | | 0 | 106 | 0% | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.AbstractPlaybackRequest | 0 | 1 | 1 | 31 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.BufferGroupRequest | 0 | 4 | 4 | 63 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.IgnoreWaitGroupRequest | 0 | 4 | 4 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.MovePlaylistItemGroupRequest | 0 | 4 | 4 | 47 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.NextItemGroupRequest | 0 | 4 | 4 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.PauseGroupRequest | 0 | 2 | 2 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.PingGroupRequest | 0 | 4 | 4 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.PlayGroupRequest | 0 | 5 | 5 | 56 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.PreviousItemGroupRequest | 0 | 4 | 4 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.QueueGroupRequest | 0 | 5 | 5 | 48 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.ReadyGroupRequest | 0 | 4 | 4 | 63 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.RemoveFromPlaylistGroupRequest | 0 | 5 | 5 | 56 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.SeekGroupRequest | 0 | 4 | 4 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.SetPlaylistItemGroupRequest | 0 | 4 | 4 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.SetRepeatModeGroupRequest | 0 | 4 | 4 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.SetShuffleModeGroupRequest | 0 | 4 | 4 | 38 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.StopGroupRequest | 0 | 2 | 2 | 21 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.PlaybackRequests.UnpauseGroupRequest | 0 | 2 | 2 | 21 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.Queue.PlayQueueManager | 0 | 174 | 174 | 550 | 0% | | 0 | 70 | 0% | |
MediaBrowser.Controller.SyncPlay.Requests.JoinGroupRequest | 0 | 1 | 1 | 29 | 0% | | 0 | 0 | | |
MediaBrowser.Controller.SyncPlay.Requests.NewGroupRequest | 0 | 1 | 1 | 28 | 0% | | 0 | 0 | | |
MediaBrowser.LocalMetadata | 188 | 540 | 728 | 2660 | 25.8% | | 114 | 620 | 18.3% | |
MediaBrowser.LocalMetadata.BaseXmlProvider<T> | 2 | 22 | 24 | 109 | 8.3% | | 0 | 6 | 0% | |
MediaBrowser.LocalMetadata.Images.CollectionFolderLocalImageProvider | 7 | 0 | 7 | 45 | 100% | | 2 | 2 | 100% | |
MediaBrowser.LocalMetadata.Images.EpisodeLocalImageProvider | 1 | 24 | 25 | 85 | 4% | | 1 | 16 | 6.2% | |
MediaBrowser.LocalMetadata.Images.InternalMetadataFolderImageProvider | 14 | 8 | 22 | 88 | 63.6% | | 7 | 12 | 58.3% | |
MediaBrowser.LocalMetadata.Images.LocalImageProvider | 143 | 64 | 207 | 494 | 69% | | 100 | 150 | 66.6% | |
MediaBrowser.LocalMetadata.Parsers.BaseItemXmlParser<T> | 0 | 317 | 317 | 872 | 0% | | 0 | 376 | 0% | |
MediaBrowser.LocalMetadata.Parsers.BoxSetXmlParser | 0 | 30 | 30 | 104 | 0% | | 0 | 16 | 0% | |
MediaBrowser.LocalMetadata.Parsers.PlaylistXmlParser | 0 | 34 | 34 | 113 | 0% | | 0 | 20 | 0% | |
MediaBrowser.LocalMetadata.Providers.BoxSetXmlProvider | 4 | 3 | 7 | 44 | 57.1% | | 0 | 0 | | |
MediaBrowser.LocalMetadata.Providers.PlaylistXmlProvider | 4 | 3 | 7 | 47 | 57.1% | | 0 | 0 | | |
MediaBrowser.LocalMetadata.Savers.BaseXmlSaver | 5 | 25 | 30 | 512 | 16.6% | | 0 | 12 | 0% | |
MediaBrowser.LocalMetadata.Savers.BoxSetXmlSaver | 4 | 3 | 7 | 51 | 57.1% | | 2 | 4 | 50% | |
MediaBrowser.LocalMetadata.Savers.PlaylistXmlSaver | 4 | 6 | 10 | 83 | 40% | | 2 | 6 | 33.3% | |
MediaBrowser.LocalMetadata.XmlProviderUtils | 0 | 1 | 1 | 13 | 0% | | 0 | 0 | | |
MediaBrowser.MediaEncoding | 947 | 1186 | 2133 | 7090 | 44.3% | | 523 | 1089 | 48% | |
MediaBrowser.MediaEncoding.Attachments.AttachmentExtractor | 13 | 6 | 19 | 536 | 68.4% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.BdInfo.BdInfoDirectoryInfo | 0 | 29 | 29 | 122 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.BdInfo.BdInfoExaminer | 2 | 76 | 78 | 183 | 2.5% | | 0 | 44 | 0% | |
MediaBrowser.MediaEncoding.BdInfo.BdInfoFileInfo | 0 | 13 | 13 | 68 | 0% | | 0 | 0 | | |
MediaBrowser.MediaEncoding.Configuration.EncodingConfigurationFactory | 4 | 0 | 4 | 18 | 100% | | 0 | 0 | | |
MediaBrowser.MediaEncoding.Configuration.EncodingConfigurationStore | 4 | 10 | 14 | 38 | 28.5% | | 0 | 6 | 0% | |
MediaBrowser.MediaEncoding.Encoder.ApplePlatformHelper | 0 | 26 | 26 | 87 | 0% | | 0 | 8 | 0% | |
MediaBrowser.MediaEncoding.Encoder.EncoderValidator | 192 | 168 | 360 | 662 | 53.3% | | 23 | 80 | 28.7% | |
MediaBrowser.MediaEncoding.Encoder.EncodingUtils | 0 | 15 | 15 | 84 | 0% | | 0 | 8 | 0% | |
MediaBrowser.MediaEncoding.Encoder.MediaEncoder | 52 | 307 | 359 | 1352 | 14.4% | | 21 | 163 | 12.8% | |
MediaBrowser.MediaEncoding.Probing.FFProbeHelpers | 17 | 0 | 17 | 82 | 100% | | 20 | 20 | 100% | |
MediaBrowser.MediaEncoding.Probing.ProbeResultNormalizer | 575 | 145 | 720 | 1678 | 79.8% | | 441 | 590 | 74.7% | |
MediaBrowser.MediaEncoding.Subtitles.AssWriter | 0 | 26 | 26 | 57 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.JsonWriter | 0 | 18 | 18 | 44 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.SrtWriter | 0 | 16 | 16 | 49 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.SsaWriter | 0 | 26 | 26 | 57 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.SubtitleEditParser | 43 | 15 | 58 | 138 | 74.1% | | 16 | 22 | 72.7% | |
MediaBrowser.MediaEncoding.Subtitles.SubtitleEncoder | 15 | 70 | 85 | 931 | 17.6% | | 0 | 42 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.SubtitleFormatExtensions | 0 | 11 | 11 | 29 | 0% | | 0 | 12 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.TtmlWriter | 0 | 26 | 26 | 60 | 0% | | 0 | 2 | 0% | |
MediaBrowser.MediaEncoding.Subtitles.VttWriter | 0 | 17 | 17 | 53 | 0% | | 0 | 4 | 0% | |
MediaBrowser.MediaEncoding.Transcoding.TranscodeManager | 30 | 166 | 196 | 762 | 15.3% | | 2 | 76 | 2.6% | |
MediaBrowser.Model | 2116 | 997 | 3113 | 12830 | 67.9% | | 1128 | 2049 | 55% | |
MediaBrowser.Model.Activity.ActivityLogEntry | 4 | 0 | 4 | 85 | 100% | | 0 | 0 | | |
MediaBrowser.Model.ApiClient.ServerDiscoveryInfo | 0 | 1 | 1 | 43 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Channels.ChannelFeatures | 0 | 6 | 6 | 89 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.BaseApplicationConfiguration | 5 | 1 | 6 | 63 | 83.3% | | 2 | 4 | 50% | |
MediaBrowser.Model.Configuration.EncodingOptions | 42 | 0 | 42 | 298 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.ImageOption | 2 | 0 | 2 | 32 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.LibraryOptions | 29 | 0 | 29 | 153 | 100% | | 3 | 4 | 75% | |
MediaBrowser.Model.Configuration.MediaPathInfo | 4 | 0 | 4 | 20 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.MetadataConfiguration | 2 | 0 | 2 | 14 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.MetadataOptions | 7 | 0 | 7 | 37 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.MetadataPluginSummary | 0 | 3 | 3 | 35 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.ServerConfiguration | 52 | 0 | 52 | 291 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.TrickplayOptions | 1 | 0 | 1 | 71 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.TypeOptions | 305 | 3 | 308 | 365 | 99% | | 6 | 10 | 60% | |
MediaBrowser.Model.Configuration.UserConfiguration | 10 | 0 | 10 | 78 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Configuration.XbmcMetadataOptions | 4 | 0 | 4 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Cryptography.PasswordHash | 80 | 0 | 80 | 212 | 100% | | 46 | 46 | 100% | |
MediaBrowser.Model.Devices.DeviceInfo | 0 | 2 | 2 | 84 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dlna.CodecProfile | 8 | 0 | 8 | 94 | 100% | | 12 | 12 | 100% | |
MediaBrowser.Model.Dlna.ConditionProcessor | 44 | 66 | 110 | 376 | 40% | | 42 | 126 | 33.3% | |
MediaBrowser.Model.Dlna.ContainerProfile | 2 | 0 | 2 | 49 | 100% | | 2 | 4 | 50% | |
MediaBrowser.Model.Dlna.DeviceProfile | 4 | 0 | 4 | 71 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Dlna.DirectPlayProfile | 3 | 0 | 3 | 65 | 100% | | 4 | 6 | 66.6% | |
MediaBrowser.Model.Dlna.MediaOptions | 4 | 5 | 9 | 145 | 44.4% | | 3 | 10 | 30% | |
MediaBrowser.Model.Dlna.ProfileCondition | 2 | 7 | 9 | 40 | 22.2% | | 0 | 0 | | |
MediaBrowser.Model.Dlna.ResolutionConfiguration | 0 | 3 | 3 | 17 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dlna.ResolutionNormalizer | 0 | 34 | 34 | 80 | 0% | | 0 | 18 | 0% | |
MediaBrowser.Model.Dlna.StreamBuilder | 722 | 324 | 1046 | 2376 | 69% | | 544 | 928 | 58.6% | |
MediaBrowser.Model.Dlna.StreamInfo | 172 | 198 | 370 | 1389 | 46.4% | | 139 | 364 | 38.1% | |
MediaBrowser.Model.Dlna.SubtitleProfile | 2 | 3 | 5 | 62 | 40% | | 1 | 4 | 25% | |
MediaBrowser.Model.Dlna.TranscodingProfile | 2 | 19 | 21 | 159 | 9.5% | | 0 | 0 | | |
MediaBrowser.Model.Drawing.DrawingUtils | 0 | 35 | 35 | 126 | 0% | | 0 | 34 | 0% | |
MediaBrowser.Model.Drawing.ImageDimensions | 0 | 7 | 7 | 45 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Model.Drawing.ImageFormatExtensions | 20 | 0 | 20 | 46 | 100% | | 14 | 14 | 100% | |
MediaBrowser.Model.Dto.BaseItemPerson | 0 | 1 | 1 | 60 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dto.ClientCapabilitiesDto | 0 | 10 | 10 | 69 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dto.DeviceInfoDto | 0 | 2 | 2 | 83 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dto.DisplayPreferencesDto | 0 | 6 | 6 | 106 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dto.MediaSourceInfo | 53 | 7 | 60 | 259 | 88.3% | | 46 | 56 | 82.1% | |
MediaBrowser.Model.Dto.MetadataEditorInfo | 0 | 6 | 6 | 55 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Dto.NameValuePair | 4 | 0 | 4 | 30 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Dto.UserDto | 3 | 1 | 4 | 113 | 75% | | 0 | 2 | 0% | |
MediaBrowser.Model.Entities.LibraryUpdateInfo | 0 | 8 | 8 | 59 | 0% | | 0 | 10 | 0% | |
MediaBrowser.Model.Entities.MediaStream | 170 | 56 | 226 | 834 | 75.2% | | 193 | 291 | 66.3% | |
MediaBrowser.Model.Entities.ParentalRating | 4 | 0 | 4 | 40 | 100% | | 2 | 2 | 100% | |
MediaBrowser.Model.Entities.ParentalRatingScore | 3 | 0 | 3 | 32 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Entities.PlaylistUserPermissions | 0 | 3 | 3 | 30 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Entities.ProviderIdsExtensions | 43 | 7 | 50 | 216 | 86% | | 18 | 24 | 75% | |
MediaBrowser.Model.Entities.VirtualFolderInfo | 2 | 0 | 2 | 58 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Extensions.ContainerHelper | 32 | 1 | 33 | 150 | 96.9% | | 31 | 34 | 91.1% | |
MediaBrowser.Model.Extensions.EnumerableExtensions | 0 | 30 | 30 | 57 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Model.Extensions.LibraryOptionsExtension | 0 | 13 | 13 | 34 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Extensions.StringHelper | 15 | 0 | 15 | 39 | 100% | | 4 | 4 | 100% | |
MediaBrowser.Model.Globalization.CultureDto | 4 | 1 | 5 | 58 | 80% | | 1 | 2 | 50% | |
MediaBrowser.Model.Globalization.LocalizationOption | 0 | 3 | 3 | 18 | 0% | | 0 | 0 | | |
MediaBrowser.Model.IO.AsyncFile | 1 | 12 | 13 | 45 | 7.6% | | 0 | 0 | | |
MediaBrowser.Model.IO.FileSystemEntryInfo | 0 | 1 | 1 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.ListingsProviderInfo | 8 | 0 | 8 | 58 | 100% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.LiveTvChannelQuery | 0 | 3 | 3 | 111 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.LiveTvInfo | 0 | 3 | 3 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.LiveTvOptions | 5 | 0 | 5 | 48 | 100% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.LiveTvServiceInfo | 0 | 2 | 2 | 62 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.RecordingQuery | 0 | 2 | 2 | 94 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.SeriesTimerInfoDto | 0 | 5 | 5 | 94 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.TimerInfoDto | 0 | 3 | 3 | 45 | 0% | | 0 | 0 | | |
MediaBrowser.Model.LiveTv.TunerHostInfo | 6 | 0 | 6 | 47 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Lyrics.LyricFile | 0 | 3 | 3 | 28 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Lyrics.LyricLine | 0 | 1 | 1 | 28 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Lyrics.LyricSearchRequest | 0 | 1 | 1 | 59 | 0% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.AudioCodec | 5 | 4 | 9 | 34 | 55.5% | | 4 | 8 | 50% | |
MediaBrowser.Model.MediaInfo.LiveStreamRequest | 0 | 5 | 5 | 48 | 0% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.LiveStreamResponse | 0 | 1 | 1 | 16 | 0% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.MediaInfo | 9 | 0 | 9 | 86 | 100% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.PlaybackInfoResponse | 0 | 2 | 2 | 39 | 0% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.SubtitleTrackEvent | 3 | 0 | 3 | 21 | 100% | | 0 | 0 | | |
MediaBrowser.Model.MediaInfo.SubtitleTrackInfo | 2 | 0 | 2 | 17 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Net.IPData | 8 | 3 | 11 | 79 | 72.7% | | 2 | 8 | 25% | |
MediaBrowser.Model.Net.MimeTypes | 125 | 3 | 128 | 201 | 97.6% | | 6 | 10 | 60% | |
MediaBrowser.Model.Net.PublishedServerUriOverride | 5 | 0 | 5 | 42 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Playlists.PlaylistCreationRequest | 0 | 1 | 1 | 42 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Playlists.PlaylistCreationResult | 0 | 1 | 1 | 14 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Plugins.PluginInfo | 6 | 0 | 6 | 67 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Providers.ExternalIdInfo | 4 | 0 | 4 | 44 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Providers.ImageProviderInfo | 0 | 1 | 1 | 32 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Providers.RemoteImageQuery | 1 | 0 | 1 | 22 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Providers.RemoteSearchResult | 0 | 3 | 3 | 54 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Providers.SubtitleOptions | 0 | 4 | 4 | 36 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Querying.AllThemeMediaResult | 0 | 4 | 4 | 23 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Querying.LatestItemsQuery | 0 | 2 | 2 | 85 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Querying.QueryFilters | 0 | 3 | 3 | 21 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Querying.QueryFiltersLegacy | 0 | 5 | 5 | 26 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Querying.QueryResult<T> | 9 | 0 | 9 | 60 | 100% | | 2 | 2 | 100% | |
MediaBrowser.Model.QuickConnect.QuickConnectResult | 2 | 0 | 2 | 78 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Search.SearchHint | 0 | 5 | 5 | 200 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Search.SearchHintResult | 0 | 1 | 1 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Session.ClientCapabilities | 6 | 0 | 6 | 45 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Session.GeneralCommand | 0 | 4 | 4 | 27 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Model.SyncPlay.GroupInfoDto | 0 | 1 | 1 | 58 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.GroupStateUpdate | 0 | 1 | 1 | 31 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.GroupUpdate | 0 | 1 | 1 | 30 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.GroupUpdate<T> | 0 | 4 | 4 | 31 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.PlayQueueUpdate | 0 | 1 | 1 | 82 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.SendCommand | 0 | 2 | 2 | 65 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.SyncPlayQueueItem | 0 | 1 | 1 | 31 | 0% | | 0 | 0 | | |
MediaBrowser.Model.SyncPlay.UtcTimeResponse | 0 | 1 | 1 | 33 | 0% | | 0 | 0 | | |
MediaBrowser.Model.System.SystemInfo | 0 | 3 | 3 | 138 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Tasks.ScheduledTaskHelpers | 0 | 19 | 19 | 41 | 0% | | 0 | 2 | 0% | |
MediaBrowser.Model.Tasks.TaskCompletionEventArgs | 2 | 0 | 2 | 33 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Tasks.TaskInfo | 0 | 2 | 2 | 80 | 0% | | 0 | 0 | | |
MediaBrowser.Model.Updates.PackageInfo | 7 | 0 | 7 | 83 | 100% | | 0 | 0 | | |
MediaBrowser.Model.Updates.VersionInfo | 2 | 1 | 3 | 77 | 66.6% | | 1 | 4 | 25% | |
MediaBrowser.Model.Users.UserPolicy | 35 | 0 | 35 | 199 | 100% | | 0 | 0 | | |
MediaBrowser.Providers | 1069 | 1908 | 2977 | 16951 | 35.9% | | 452 | 1556 | 29% | |
MediaBrowser.Providers.Books.AudioBookMetadataService | 2 | 8 | 10 | 50 | 20% | | 0 | 8 | 0% | |
MediaBrowser.Providers.Books.BookMetadataService | 2 | 4 | 6 | 37 | 33.3% | | 0 | 4 | 0% | |
MediaBrowser.Providers.BoxSets.BoxSetMetadataService | 2 | 20 | 22 | 85 | 9% | | 0 | 10 | 0% | |
MediaBrowser.Providers.Channels.ChannelMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Folders.CollectionFolderMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Folders.FolderMetadataService | 3 | 0 | 3 | 29 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Folders.UserViewMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Genres.GenreMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.LiveTv.LiveTvMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Lyric.LrcLyricParser | 3 | 17 | 20 | 77 | 15% | | 0 | 6 | 0% | |
MediaBrowser.Providers.Lyric.LyricManager | 11 | 37 | 48 | 467 | 22.9% | | 0 | 6 | 0% | |
MediaBrowser.Providers.Lyric.LyricScheduledTask | 14 | 7 | 21 | 170 | 66.6% | | 0 | 0 | | |
MediaBrowser.Providers.Lyric.TxtLyricParser | 1 | 10 | 11 | 45 | 9% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Manager.ImageSaver | 0 | 156 | 156 | 702 | 0% | | 0 | 132 | 0% | |
MediaBrowser.Providers.Manager.ItemImageProvider | 109 | 15 | 124 | 711 | 87.9% | | 68 | 84 | 80.9% | |
MediaBrowser.Providers.Manager.MetadataService<T1, T2> | 222 | 108 | 330 | 1234 | 67.2% | | 223 | 336 | 66.3% | |
MediaBrowser.Providers.Manager.ProviderManager | 136 | 165 | 301 | 1166 | 45.1% | | 61 | 112 | 54.4% | |
MediaBrowser.Providers.MediaInfo.AudioFileProber | 12 | 21 | 33 | 494 | 36.3% | | 0 | 12 | 0% | |
MediaBrowser.Providers.MediaInfo.AudioImageProvider | 8 | 23 | 31 | 156 | 25.8% | | 2 | 14 | 14.2% | |
MediaBrowser.Providers.MediaInfo.AudioResolver | 8 | 0 | 8 | 40 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.MediaInfo.EmbeddedImageProvider | 42 | 5 | 47 | 245 | 89.3% | | 10 | 16 | 62.5% | |
MediaBrowser.Providers.MediaInfo.FFProbeVideoInfo | 38 | 117 | 155 | 672 | 24.5% | | 8 | 116 | 6.8% | |
MediaBrowser.Providers.MediaInfo.LyricResolver | 8 | 0 | 8 | 39 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.MediaInfo.MediaInfoResolver | 47 | 36 | 83 | 347 | 56.6% | | 28 | 52 | 53.8% | |
MediaBrowser.Providers.MediaInfo.ProbeProvider | 31 | 61 | 92 | 306 | 33.6% | | 0 | 50 | 0% | |
MediaBrowser.Providers.MediaInfo.SubtitleDownloader | 0 | 24 | 24 | 213 | 0% | | 0 | 8 | 0% | |
MediaBrowser.Providers.MediaInfo.SubtitleResolver | 8 | 0 | 8 | 40 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.MediaInfo.SubtitleScheduledTask | 12 | 7 | 19 | 224 | 63.1% | | 0 | 0 | | |
MediaBrowser.Providers.MediaInfo.VideoImageProvider | 14 | 5 | 19 | 134 | 73.6% | | 12 | 16 | 75% | |
MediaBrowser.Providers.Movies.ImdbExternalId | 3 | 3 | 6 | 36 | 50% | | 0 | 12 | 0% | |
MediaBrowser.Providers.Movies.ImdbExternalUrlProvider | 1 | 0 | 1 | 32 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Movies.ImdbPersonExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Movies.MovieMetadataService | 2 | 6 | 8 | 40 | 25% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Movies.TrailerMetadataService | 2 | 5 | 7 | 42 | 28.5% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Music.AlbumInfoExtensions | 0 | 27 | 27 | 81 | 0% | | 0 | 14 | 0% | |
MediaBrowser.Providers.Music.AlbumMetadataService | 2 | 100 | 102 | 249 | 1.9% | | 0 | 54 | 0% | |
MediaBrowser.Providers.Music.ArtistMetadataService | 2 | 8 | 10 | 43 | 20% | | 0 | 2 | 0% | |
MediaBrowser.Providers.Music.AudioMetadataService | 2 | 20 | 22 | 79 | 9% | | 0 | 18 | 0% | |
MediaBrowser.Providers.Music.ImvdbId | 1 | 3 | 4 | 25 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Music.MusicVideoMetadataService | 2 | 9 | 11 | 55 | 18.1% | | 0 | 8 | 0% | |
MediaBrowser.Providers.MusicGenres.MusicGenreMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.People.PersonMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Photos.PhotoAlbumMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Photos.PhotoMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Playlists.PlaylistItemsProvider | 5 | 87 | 92 | 227 | 5.4% | | 0 | 34 | 0% | |
MediaBrowser.Providers.Playlists.PlaylistMetadataService | 2 | 16 | 18 | 74 | 11.1% | | 0 | 10 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbAlbumExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbAlbumExternalUrlProvider | 1 | 0 | 1 | 31 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbAlbumImageProvider | 5 | 20 | 25 | 111 | 20% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbAlbumProvider | 6 | 39 | 45 | 298 | 13.3% | | 0 | 28 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbArtistExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbArtistExternalUrlProvider | 1 | 0 | 1 | 32 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbArtistImageProvider | 5 | 55 | 60 | 155 | 8.3% | | 0 | 12 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbArtistProvider | 6 | 29 | 35 | 290 | 17.1% | | 0 | 20 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbOtherAlbumExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.AudioDb.AudioDbOtherArtistExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 2 | 0% | |
MediaBrowser.Providers.Plugins.AudioDb.Plugin | 7 | 0 | 7 | 41 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.Configuration.PluginConfiguration | 4 | 5 | 9 | 57 | 44.4% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzAlbumArtistExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzAlbumArtistExternalUrlProvider | 1 | 0 | 1 | 28 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzAlbumExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 2 | 0% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzAlbumExternalUrlProvider | 1 | 0 | 1 | 28 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzAlbumProvider | 19 | 33 | 52 | 304 | 36.5% | | 3 | 22 | 13.6% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzArtistExternalId | 3 | 1 | 4 | 24 | 75% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzArtistExternalUrlProvider | 1 | 0 | 1 | 32 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzArtistProvider | 19 | 16 | 35 | 186 | 54.2% | | 3 | 12 | 25% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzOtherArtistExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzRecordingId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzReleaseGroupExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzReleaseGroupExternalUrlProvider | 1 | 0 | 1 | 28 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzTrackExternalUrlProvider | 1 | 0 | 1 | 28 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.MusicBrainzTrackId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.MusicBrainz.Plugin | 11 | 0 | 11 | 64 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Omdb.JsonOmdbNotAvailableInt32Converter | 7 | 4 | 11 | 44 | 63.6% | | 6 | 8 | 75% | |
MediaBrowser.Providers.Plugins.Omdb.JsonOmdbNotAvailableStringConverter | 8 | 2 | 10 | 42 | 80% | | 4 | 6 | 66.6% | |
MediaBrowser.Providers.Plugins.Omdb.OmdbEpisodeProvider | 3 | 4 | 7 | 79 | 42.8% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Omdb.OmdbImageProvider | 4 | 3 | 7 | 80 | 57.1% | | 2 | 4 | 50% | |
MediaBrowser.Providers.Plugins.Omdb.OmdbItemProvider | 7 | 27 | 34 | 312 | 20.5% | | 0 | 8 | 0% | |
MediaBrowser.Providers.Plugins.Omdb.OmdbProvider | 7 | 61 | 68 | 568 | 10.2% | | 0 | 32 | 0% | |
MediaBrowser.Providers.Plugins.Omdb.Plugin | 7 | 0 | 7 | 41 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.StudioImages.Configuration.PluginConfiguration | 0 | 8 | 8 | 35 | 0% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.StudioImages.Plugin | 7 | 0 | 7 | 63 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.StudioImages.StudiosImageProvider | 5 | 25 | 30 | 192 | 16.6% | | 0 | 2 | 0% | |
MediaBrowser.Providers.Plugins.Tmdb.Api.TmdbController | 0 | 3 | 3 | 41 | 0% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.BoxSets.TmdbBoxSetExternalId | 1 | 3 | 4 | 29 | 25% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.Tmdb.BoxSets.TmdbBoxSetImageProvider | 4 | 8 | 12 | 92 | 33.3% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.BoxSets.TmdbBoxSetProvider | 4 | 2 | 6 | 143 | 66.6% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.Movies.TmdbMovieExternalId | 3 | 3 | 6 | 35 | 50% | | 0 | 4 | 0% | |
MediaBrowser.Providers.Plugins.Tmdb.Movies.TmdbMovieImageProvider | 4 | 9 | 13 | 112 | 30.7% | | 1 | 2 | 50% | |
MediaBrowser.Providers.Plugins.Tmdb.Movies.TmdbMovieProvider | 4 | 3 | 7 | 340 | 57.1% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.People.TmdbPersonExternalId | 1 | 3 | 4 | 28 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.People.TmdbPersonImageProvider | 4 | 3 | 7 | 78 | 57.1% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.People.TmdbPersonProvider | 3 | 2 | 5 | 144 | 60% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.Plugin | 7 | 0 | 7 | 60 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TmdbClientManager | 13 | 24 | 37 | 690 | 35.1% | | 5 | 20 | 25% | |
MediaBrowser.Providers.Plugins.Tmdb.TmdbExternalUrlProvider | 1 | 0 | 1 | 98 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TmdbUtils | 15 | 38 | 53 | 206 | 28.3% | | 16 | 38 | 42.1% | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbEpisodeImageProvider | 4 | 3 | 7 | 96 | 57.1% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbEpisodeProvider | 3 | 3 | 6 | 269 | 50% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbSeasonImageProvider | 4 | 3 | 7 | 89 | 57.1% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbSeasonProvider | 3 | 3 | 6 | 136 | 50% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbSeriesExternalId | 1 | 3 | 4 | 28 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbSeriesImageProvider | 4 | 9 | 13 | 97 | 30.7% | | 0 | 0 | | |
MediaBrowser.Providers.Plugins.Tmdb.TV.TmdbSeriesProvider | 4 | 67 | 71 | 384 | 5.6% | | 0 | 40 | 0% | |
MediaBrowser.Providers.Studios.StudioMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Subtitles.SubtitleManager | 9 | 63 | 72 | 414 | 12.5% | | 0 | 14 | 0% | |
MediaBrowser.Providers.Trickplay.TrickplayImagesTask | 14 | 3 | 17 | 118 | 82.3% | | 0 | 0 | | |
MediaBrowser.Providers.Trickplay.TrickplayMoveImagesTask | 6 | 4 | 10 | 119 | 60% | | 0 | 0 | | |
MediaBrowser.Providers.Trickplay.TrickplayProvider | 4 | 12 | 16 | 121 | 25% | | 0 | 6 | 0% | |
MediaBrowser.Providers.TV.EpisodeMetadataService | 2 | 36 | 38 | 113 | 5.2% | | 0 | 30 | 0% | |
MediaBrowser.Providers.TV.SeasonMetadataService | 2 | 30 | 32 | 112 | 6.2% | | 0 | 24 | 0% | |
MediaBrowser.Providers.TV.SeriesMetadataService | 3 | 70 | 73 | 284 | 4.1% | | 0 | 50 | 0% | |
MediaBrowser.Providers.TV.Zap2ItExternalId | 1 | 3 | 4 | 24 | 25% | | 0 | 0 | | |
MediaBrowser.Providers.TV.Zap2ItExternalUrlProvider | 1 | 0 | 1 | 24 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Videos.VideoMetadataService | 3 | 0 | 3 | 29 | 100% | | 0 | 0 | | |
MediaBrowser.Providers.Years.YearMetadataService | 2 | 0 | 2 | 25 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata | 618 | 720 | 1338 | 4102 | 46.1% | | 576 | 974 | 59.1% | |
MediaBrowser.XbmcMetadata.Configuration.NfoConfigurationExtension | 1 | 0 | 1 | 15 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Configuration.NfoConfigurationFactory | 8 | 0 | 8 | 24 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.NfoUserDataSaver | 9 | 0 | 9 | 87 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Parsers.BaseNfoParser<T> | 361 | 57 | 418 | 995 | 86.3% | | 425 | 462 | 91.9% | |
MediaBrowser.XbmcMetadata.Parsers.EpisodeNfoParser | 70 | 2 | 72 | 202 | 97.2% | | 74 | 76 | 97.3% | |
MediaBrowser.XbmcMetadata.Parsers.MovieNfoParser | 48 | 5 | 53 | 160 | 90.5% | | 39 | 40 | 97.5% | |
MediaBrowser.XbmcMetadata.Parsers.SeasonNfoParser | 9 | 2 | 11 | 59 | 81.8% | | 5 | 6 | 83.3% | |
MediaBrowser.XbmcMetadata.Parsers.SeriesNfoParser | 24 | 3 | 27 | 105 | 88.8% | | 15 | 18 | 83.3% | |
MediaBrowser.XbmcMetadata.Parsers.SeriesNfoSeasonParser | 0 | 11 | 11 | 60 | 0% | | 0 | 10 | 0% | |
MediaBrowser.XbmcMetadata.Providers.AlbumNfoProvider | 8 | 3 | 11 | 63 | 72.7% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.ArtistNfoProvider | 8 | 3 | 11 | 63 | 72.7% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.BaseNfoProvider<T> | 2 | 24 | 26 | 82 | 7.6% | | 0 | 6 | 0% | |
MediaBrowser.XbmcMetadata.Providers.BaseVideoNfoProvider<T> | 8 | 13 | 21 | 67 | 38% | | 0 | 2 | 0% | |
MediaBrowser.XbmcMetadata.Providers.EpisodeNfoProvider | 8 | 4 | 12 | 67 | 66.6% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.MovieNfoProvider | 2 | 0 | 2 | 37 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.MusicVideoNfoProvider | 2 | 0 | 2 | 37 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.SeasonNfoProvider | 8 | 3 | 11 | 63 | 72.7% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.SeriesNfoProvider | 8 | 3 | 11 | 63 | 72.7% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Providers.SeriesNfoSeasonProvider | 9 | 13 | 22 | 89 | 40.9% | | 0 | 10 | 0% | |
MediaBrowser.XbmcMetadata.Providers.VideoNfoProvider | 2 | 0 | 2 | 37 | 100% | | 0 | 0 | | |
MediaBrowser.XbmcMetadata.Savers.AlbumNfoSaver | 3 | 26 | 29 | 121 | 10.3% | | 3 | 22 | 13.6% | |
MediaBrowser.XbmcMetadata.Savers.ArtistNfoSaver | 3 | 21 | 24 | 106 | 12.5% | | 3 | 12 | 25% | |
MediaBrowser.XbmcMetadata.Savers.BaseNfoSaver | 1 | 451 | 452 | 1040 | 0.2% | | 0 | 230 | 0% | |
MediaBrowser.XbmcMetadata.Savers.EpisodeNfoSaver | 3 | 26 | 29 | 131 | 10.3% | | 3 | 36 | 8.3% | |
MediaBrowser.XbmcMetadata.Savers.MovieNfoSaver | 5 | 17 | 22 | 138 | 22.7% | | 4 | 24 | 16.6% | |
MediaBrowser.XbmcMetadata.Savers.SeasonNfoSaver | 5 | 8 | 13 | 85 | 38.4% | | 2 | 10 | 20% | |
MediaBrowser.XbmcMetadata.Savers.SeriesNfoSaver | 3 | 25 | 28 | 106 | 10.7% | | 3 | 10 | 30% | |