Jump to content

New Plugin: Smart Playlists 2.0


Recommended Posts

sross44
Posted
On 3/13/2023 at 3:48 PM, IronicRhetoric said:

Clicking on "AppData" simply brings me to the "Share Settings" page. I don't see anything here to upload a plugin.image.thumb.jpeg.07b5fd92455639d54de5392ed3cabd7c.jpeg

You’ll have to do this via SMB share or an unRAID plugin. You can’t upload anything from this window. 

Neminem
Posted
1 hour ago, sross44 said:

You’ll have to do this via SMB share or an unRAID plugin. You can’t upload anything from this window. 

Ohh yes. he needs to install this plugin "Dynamix File Manager" on unraid to do this.

That why I told the person to learn about its OS.

 

  • 2 weeks later...
Posted

Please let me know if you need help updating to the changes in 4.8. There are some signature changes to the playlist creation and responses that I think should be straight-forward.

The main thing you need to know is related to supplying a user (or not). Here's what to do:

  • Leaving null = playlist not associated with a user, and it would be just like playlists in 4.7
  • Supplying a user - playlist will be private to the given user
  • Supplying a user and setting IsPublic - it would be the same as if you created a playlist in the web app, and then marked it public. So the user supplied will be able to change it and mark it private again.
sydlexius
Posted

FYI, I have SmartPlaylist 2.4.0.1 installed on Emby Server 4.8.0.26, and it bombs every time I attempt to go into its settings.  The corresponding log entry is as follows:

 

023-03-24 17:12:49.983 Debug App: [SmartPlaylist]:LoadPlaylistsFromStore {ElapsedTimeMs:'3'}
2023-03-24 17:12:49.986 Error Server: Error processing request
	*** Error Report ***
	Version: 4.8.0.26
	Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Linux version 5.19.17-Unraid (root@Develop) (gcc (GCC) 12.2.0, GNU ld version 2.39-slack151) #2 SMP PREEMPT_DYNAMIC Wed Nov 2 11:54:15 PDT 2022
	Framework: .NET 6.0.13
	OS/Process: x64/x64
	Runtime: system/System.Private.CoreLib.dll
	Processor count: 40
	Data path: /config
	Application path: /system
	System.TypeInitializationException: System.TypeInitializationException: The type initializer for 'SmartPlaylist.Domain.DefinedOrders' threw an exception.
	 ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
	Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
	   at System.Reflection.Assembly.GetTypes()
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindAndCreateDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Domain.DefinedOrders..cctor()
	System.TypeLoadException: Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	   --- End of inner exception stack trace ---
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.CleanupOldLimit(SmartPlaylistDto dto)
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.CleanupSmartPlaylist(SmartPlaylistDto dto)
	   at System.Collections.Generic.List`1.ForEach(Action`1 action)
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.GetAllSmartPlaylistsAsync()
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.<GetAllCachedSmartPlaylistAsync>b__8_0()
	   at SmartPlaylist.Infrastructure.MemCache.<>c__DisplayClass4_0.<<GetOrCreateManyAsync>b__0>d.MoveNext()
	--- End of stack trace from previous location ---
	   at SmartPlaylist.Infrastructure.MemCache.GetOrCreateManyAsync(Func`1 createAllFunc, TimeSpan absoluteExpiration)
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.GetAllCachedSmartPlaylistAsync()
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.LoadPlaylistsAsync(Guid userId)
	   at SmartPlaylist.PerfLoggerDecorators.Services.SmartPlaylistStorePerfLoggerDecorator.LoadPlaylistsAsync(Guid userId)
	   at SmartPlaylist.Api.SmartPlaylistService.Get(GetAppData request)
	   at Emby.Server.Implementations.Services.ServiceController.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IServerApplicationHost appHost, IRequest httpReq, IResponse httpRes, RestPath restPath, String responseContentType, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IRequest httpReq, ReadOnlyMemory`1 urlString, ReadOnlyMemory`1 localPath, CancellationToken cancellationToken)
	Source: SmartPlaylist
	TargetSite: Boolean CleanupOldLimit(SmartPlaylist.Contracts.SmartPlaylistDto)
	InnerException: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
	Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	Source: System.Private.CoreLib
	TargetSite: System.RuntimeType[] GetTypes(System.Reflection.RuntimeModule)
	   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
	   at System.Reflection.Assembly.GetTypes()
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindAndCreateDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Domain.DefinedOrders..cctor()

 

  • Agree 1
cool0007
Posted (edited)

Thanks bro! This works for my trance, Emby in a container on Khadas VIM3Pro - but there's not much chaos yet ;);)

 

Smart Playlist - Google Chrome 2023-03-29 21.11.32.jpg

Emby - Google Chrome 2023-03-29 21.13.34.jpg

Edited by cool0007
Posted

I have a simple smart playlist for putting all MCU films into a single collection. It works fine, and I've had it up for months. My only annoyance is that since the Collection/Playlist refreshes daily, it seems that Kodi re-scans these videos daily. So every morning, when I turn my TV on, I see all the MCU films being updated in Kodi. So it seems that the plugin updates the nfo file for each of the videos daily, regardless of whether it was already in the collection.

Is it possible to only edit a movies metadata on initial add/removal from a collection? I could obviously change the Collection from being live as a workaround, but that obviously means my list won't be current immediately after new films are added.

Mister D
Posted (edited)

I recently upgraded to beta server 4.8.0.29 and now the smart playlist menu doesn't work. I see the plugin as installed in the plugins menu but when I click on the Smart Playlist  menu item I just get the 3 loading dots and nothing comes up. I uninstalled the dll and installed it again and I'm still getting the same result. I can manually add items to a playlist but none of my smart playlists are updating. Any ideas what's going on?

Edited by Mister D
  • Facepalm 1
GrimReaper
Posted
1 minute ago, Mister D said:

Any ideas what's going on?

Plugin likely not updated for beta .26+ branch. 

  • Agree 1
Mister D
Posted
On 4/9/2023 at 4:03 PM, GrimReaper said:

Plugin likely not updated for beta .26+ branch. 

Gotcha. Guess I'll just wait and hope that when it does get updated and the scheduled task runs that the movies that should be added to the live playlists will get added.

Posted

Is this plugin still being maintained?

Posted
1 hour ago, CrowTC said:

Is this plugin still being maintained?

HI, yes it is.

  • Thanks 2
GrimEvil
Posted

@ShanePDo you know when this will be working again on the Latest Beta's, no rush just checking to see if you have any eta,

I am the same as other people, access the settings and just see the loading three dots. 

 

  • Agree 2
  • 2 weeks later...
Mister D
Posted
On 4/16/2023 at 8:09 AM, grimevil said:

@ShanePDo you know when this will be working again on the Latest Beta's, no rush just checking to see if you have any eta,

I am the same as other people, access the settings and just see the loading three dots. 

 

Yup, an update on when the new version will be made available would be greatly appreciated.

  • 2 weeks later...
InaudibleDirge
Posted
On 3/24/2023 at 5:16 PM, sydlexius said:

FYI, I have SmartPlaylist 2.4.0.1 installed on Emby Server 4.8.0.26, and it bombs every time I attempt to go into its settings.  The corresponding log entry is as follows:

 

023-03-24 17:12:49.983 Debug App: [SmartPlaylist]:LoadPlaylistsFromStore {ElapsedTimeMs:'3'}
2023-03-24 17:12:49.986 Error Server: Error processing request
	*** Error Report ***
	Version: 4.8.0.26
	Command line: /system/EmbyServer.dll -programdata /config -ffdetect /bin/ffdetect -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Linux version 5.19.17-Unraid (root@Develop) (gcc (GCC) 12.2.0, GNU ld version 2.39-slack151) #2 SMP PREEMPT_DYNAMIC Wed Nov 2 11:54:15 PDT 2022
	Framework: .NET 6.0.13
	OS/Process: x64/x64
	Runtime: system/System.Private.CoreLib.dll
	Processor count: 40
	Data path: /config
	Application path: /system
	System.TypeInitializationException: System.TypeInitializationException: The type initializer for 'SmartPlaylist.Domain.DefinedOrders' threw an exception.
	 ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
	Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
	   at System.Reflection.Assembly.GetTypes()
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindAndCreateDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Domain.DefinedOrders..cctor()
	System.TypeLoadException: Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	   --- End of inner exception stack trace ---
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.CleanupOldLimit(SmartPlaylistDto dto)
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.CleanupSmartPlaylist(SmartPlaylistDto dto)
	   at System.Collections.Generic.List`1.ForEach(Action`1 action)
	   at SmartPlaylist.Services.SmartPlaylist.CleanupOldCriteriaDecorator.GetAllSmartPlaylistsAsync()
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.<GetAllCachedSmartPlaylistAsync>b__8_0()
	   at SmartPlaylist.Infrastructure.MemCache.<>c__DisplayClass4_0.<<GetOrCreateManyAsync>b__0>d.MoveNext()
	--- End of stack trace from previous location ---
	   at SmartPlaylist.Infrastructure.MemCache.GetOrCreateManyAsync(Func`1 createAllFunc, TimeSpan absoluteExpiration)
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.GetAllCachedSmartPlaylistAsync()
	   at SmartPlaylist.Services.SmartPlaylist.CacheableSmartPlaylistStore.LoadPlaylistsAsync(Guid userId)
	   at SmartPlaylist.PerfLoggerDecorators.Services.SmartPlaylistStorePerfLoggerDecorator.LoadPlaylistsAsync(Guid userId)
	   at SmartPlaylist.Api.SmartPlaylistService.Get(GetAppData request)
	   at Emby.Server.Implementations.Services.ServiceController.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IServerApplicationHost appHost, IRequest httpReq, IResponse httpRes, RestPath restPath, String responseContentType, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IRequest httpReq, ReadOnlyMemory`1 urlString, ReadOnlyMemory`1 localPath, CancellationToken cancellationToken)
	Source: SmartPlaylist
	TargetSite: Boolean CleanupOldLimit(SmartPlaylist.Contracts.SmartPlaylistDto)
	InnerException: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
	Could not load type 'MediaBrowser.Model.Playlists.PlaylistCreationResult' from assembly 'MediaBrowser.Model, Version=4.8.0.26, Culture=neutral, PublicKeyToken=null'.
	Source: System.Private.CoreLib
	TargetSite: System.RuntimeType[] GetTypes(System.Reflection.RuntimeModule)
	   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
	   at System.Reflection.Assembly.GetTypes()
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Extensions.AssemblyExtensions.FindAndCreateDerivedTypes[TBase](Assembly assembly)
	   at SmartPlaylist.Domain.DefinedOrders..cctor()

 

did you ever get this figured out?

Posted
12 minutes ago, InaudibleDirge said:

did you ever get this figured out?

I think it just needs a compatibility update for the beta server.

Mister D
Posted
20 hours ago, Luke said:

I think it just needs a compatibility update for the beta server.

@LukeDo we have any idea when this compatibility update will be done?

GrimReaper
Posted
2 minutes ago, Mister D said:

@LukeDo we have any idea when this compatibility update will be done?

That's a question for plugin dev, which hasn't been around for a few months (since December '22), so unless some community member is willing to take it on, it remains unknown when/if it will be (at all). 

Mister D
Posted
2 hours ago, GrimReaper said:

That's a question for plugin dev, which hasn't been around for a few months (since December '22), so unless some community member is willing to take it on, it remains unknown when/if it will be (at all). 

Gotcha. Thanks for the update.

Junglejim
Posted
21 hours ago, GrimReaper said:

That's a question for plugin dev, which hasn't been around for a few months (since December '22), so unless some community member is willing to take it on, it remains unknown when/if it will be (at all). 

I was hoping that some of the smart playlist features would make it into core at some point. I guess that's still not going to happen anytime soon.

GrimReaper
Posted
20 minutes ago, Junglejim said:

I was hoping that some of the smart playlist features would make it into core at some point. I guess that's still not going to happen anytime soon.

Ditto, and I'd guess a number of users as well, as it's still the top-upvoted open Feature Request at present time, so it's likely bound to happen (rather) sooner than later - but hat "sooner" has really been stretched quite a lot. 

 

  • Sad 1
  • Agree 1
Guest CodeCat5
Posted
On 5/10/2023 at 7:27 AM, Junglejim said:

I was hoping that some of the smart playlist features would make it into core at some point. I guess that's still not going to happen anytime soon.

Definitely agreed, and this is one of the biggest reasons that I've switched back to Plex for now at least. Being able to create smart playlists and having them as sections on the app's homescreen and in libraries makes it so much more convenient to browse content. Hopefully Emby will come up with something in the core product that can compete.

sdfgdtfhrztrhgd
Posted

How can i Export all my smart Playlist settings and Import them in a new Server? Is there any way? I tried to Transfer the json files but this Not worked :-(

Junglejim
Posted
1 hour ago, sdfgdtfhrztrhgd said:

How can i Export all my smart Playlist settings and Import them in a new Server? Is there any way? I tried to Transfer the json files but this Not worked 😞

Hi mate, there should be a little 3dot icon (top right) in the smart playlist plugin. Hopefully that should do the trick. ;)

  • Like 1
sdfgdtfhrztrhgd
Posted (edited)
2 hours ago, Junglejim said:

Hi mate, there should be a little 3dot icon (top right) in the smart playlist plugin. Hopefully that should do the trick. ;)

thank you but i can not find the three dots 😞 what do you mean?

2.3.0.2

smartplaylist.jpg

Edited by sdfgdtfhrztrhgd
Junglejim
Posted
13 hours ago, sdfgdtfhrztrhgd said:

thank you but i can not find the three dots 😞 what do you mean?

2.3.0.2

smartplaylist.jpg

That look's like a earlier version to what I'm using (2.4.0.1).

The 3dot menu in the latest version has few options (add smart playlist, export playlist, import playlist)

  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...