Jump to content

New Plugin: Smart Playlists 2.0


ShaneP

Recommended Posts

dRuEFFECT

@ShaneP the debug logging is super useful. i figured out another issue i've been having

i have a playlist of talk shows that i wanted to source from both sonarr as well as live tv, show unplayed from the last 3 weeks, but also show the last recorded episode if it was added within the last day (after a day, sonarr should have picked it up). I also managed to figure out the and/or functionality and now works how i like. @horstepipe my screenshot below should help you

the issue i was having was that i was editing an EXISTING smart playlist, and THEN going to the shows to add tags. but it seems that after the initial run of a live smart playlist that the tag (tree crawl) doesn't re-check up to the show's tags. i created a duplicate of the same smart playlist, and the recorded shows i had just added the Talk Show tag for would populate for the new smart playlist but not the old ones. i then found that if i went to the old smart playlist, changed update to manual, and run a manual update, only THEN did it pick up the tags from the show. I changed it back to live update and seems to be good now on the old playlist.

so it seems that specifically to live playlists, it only re-checks against new media items when added, whereas a manual smart playlist checks everything. but i suppose if i waited until the scheduled task to refresh all smart playlists, it may have updated then as well?

image.thumb.png.7193fe9a8b768799df8e434b956bd5e2.png

Edited by dRuEFFECT
Link to comment
Share on other sites

sydlexius
8 hours ago, ShaneP said:

Good idea, on the list for next release :)

A good set of terms to use instead of regular expression might be "match" and "not match", IMO.

Link to comment
Share on other sites

Junglejim
On 13/07/2022 at 06:12, ShaneP said:

Version 2.4.0.0

Feature

  • Added verbose log to info section.
  • Added link to open up generated playlist.
  • General optimization and clean up.
  • Added Sort (Then Bys) to Sort Jobs.
  • Added Sorting to source list.
  • Added Multiple Add functionality to PlaylistEditor.
  • Added user based criteria for following user metadata fields:
    • Favorite
    • LastPlayed
    • Play Count
    • Played

Bug

  • If any playlists backend files are corrupt, skips loading the playlist and moves the file to a *.failed file, and continues to load. Currently just crashes out with no notification.
  • Fixed bug when source was playlist or collection not picking up source items.

As always, code is https://github.com/ShanePe/Emby.SmartPlaylist.Plugin/releases

Happy Testing

Oh and let me know if I have missed anything.

Verbose log:

Detail -> Log button (Only if a log file exists, log is cleaned on ever playlist run, each playlist has it's own log)

image.thumb.png.aadb1e458f60c2779e5c0401fd4b4eba.png

Link:

image.png.ffb93da1111c65af748f99f09bffbf53.png

Any 'user related' fields will now have a user selector:

image.thumb.png.b69b09633882fa4a08235b70924e603a.png

Sort Then By: Sort Job

image.png.0bb52a3e65336fb926a33262672718a4.png

Multiple Add functionality -> Editor

image.thumb.png.75bd171b4c460406bf55b8d09fc550d5.png

 

SmartPlaylist-2.4.0.0.zip 408.53 kB · 7 downloads

Cheers mate, nice set of updates there.. :) Tested most of them and looking good! Especially the 'user related' stuff. 👍🍻

Link to comment
Share on other sites

Junglejim

Hi guys, just tried to test the verbose log feature but it doesn't seem to work for me for some reason.

I know it says (Only if a log file exists, log is cleaned on ever playlist run, each playlist has it's own log) but I never get a log. I'm not sure if it's my system or my playlists.

I just get 'Error loading playlist log: log file for playlist does not exist yet'...

I'm running Emby in a docker container in OMV6 if that makes a diff.

What is the criteria for a log file to be created?

Link to comment
Share on other sites

ShaneP
On 7/16/2022 at 10:15 AM, Junglejim said:

Hi guys, just tried to test the verbose log feature but it doesn't seem to work for me for some reason.

I know it says (Only if a log file exists, log is cleaned on ever playlist run, each playlist has it's own log) but I never get a log. I'm not sure if it's my system or my playlists.

I just get 'Error loading playlist log: log file for playlist does not exist yet'...

I'm running Emby in a docker container in OMV6 if that makes a diff.

What is the criteria for a log file to be created?

Odd @Junglejim, can you verify that the logs files are there? there are created in the same directory as the json files. So basically there logs files are text files written to the same directory, same file name, with the extension .log. So the issue here can be 1. Not being created or 2. Being created but not being able to be delivered.

Link to comment
Share on other sites

Junglejim
10 hours ago, ShaneP said:

Odd @Junglejim, can you verify that the logs files are there? there are created in the same directory as the json files. So basically there logs files are text files written to the same directory, same file name, with the extension .log. So the issue here can be 1. Not being created or 2. Being created but not being able to be delivered.

@ShaneP ssh into emby/data/smartplaylists/11d579cb-da97-46ff-add7-dfa97879e57e and only see json files, no .log files.

 

root@mymediavault:/var/lib/docker/appdata/emby/data/smartplaylists/11d579cb-da97-46ff-add7-dfa97879e57e# ls
03d4730f-3f25-4f95-9e40-58c64cb03bef.json  342182ff-908a-432b-970c-20eb83f4c095.json  3abf098e-9ff6-4b9f-9dde-776e97cbdf76.json
1a8c8798-5d43-4887-9e3d-e10eda6103b5.json  3a8263ef-93df-4525-80e6-90531f2e700c.json

Link to comment
Share on other sites

nuentes

Just discovered this plugin. Thanks so much for making this! I'm still running emby 4.6.4.0. I was unable to install 2.4.0.0. Nothing shows up under Advanced. I dropped down to 2.2.0.1 which promised backwards compatibility, and this one seems to work fine. Is this a known issue?

Also, is it possible for Description (aka Overview) to be added? I'd love to make holiday episodes playlists, and for those to work, I need to comb through the episode descriptions for keywords (i.e. for a Christmas playlist, I'd search for terms like "christmas", "x-mas", "yule", etc). I currently do this through Kodi, but this plugin seems like it would be able to do it better - provided the Description field were available for filtering.

Edited by nuentes
Link to comment
Share on other sites

ShaneP
On 7/18/2022 at 12:49 AM, Junglejim said:

@ShaneP ssh into emby/data/smartplaylists/11d579cb-da97-46ff-add7-dfa97879e57e and only see json files, no .log files.

 

root@mymediavault:/var/lib/docker/appdata/emby/data/smartplaylists/11d579cb-da97-46ff-add7-dfa97879e57e# ls
03d4730f-3f25-4f95-9e40-58c64cb03bef.json  342182ff-908a-432b-970c-20eb83f4c095.json  3abf098e-9ff6-4b9f-9dde-776e97cbdf76.json
1a8c8798-5d43-4887-9e3d-e10eda6103b5.json  3a8263ef-93df-4525-80e6-90531f2e700c.json

@Junglejim to confirm, you are running the latest? And the playlists have "executed"? It write the log to the same location as the data files... (i.e. 03d4730f-3f25-4f95-9e40-58c64cb03bef.log). So doesn't need any special perms our anything. Could you check your emby logs on when you executed the playlists to see if there are any errors. In the new version I have changed the way it opens the logs. But don't know any reason why it wouldn't write. If you like, you could send me one of your json files for me to look at if it doesn't contain any personal info.

Link to comment
Share on other sites

ShaneP
On 7/19/2022 at 3:05 PM, nuentes said:

Just discovered this plugin. Thanks so much for making this! I'm still running emby 4.6.4.0. I was unable to install 2.4.0.0. Nothing shows up under Advanced. I dropped down to 2.2.0.1 which promised backwards compatibility, and this one seems to work fine. Is this a known issue?

Also, is it possible for Description (aka Overview) to be added? I'd love to make holiday episodes playlists, and for those to work, I need to comb through the episode descriptions for keywords (i.e. for a Christmas playlist, I'd search for terms like "christmas", "x-mas", "yule", etc). I currently do this through Kodi, but this plugin seems like it would be able to do it better - provided the Description field were available for filtering.

Welcome @nuentes and thank you, I tested 2.4.0.0 on emby 4.6.*.0 (I think it was) and had no issues... Perhaps check the Emby logs for errors.

Secondly, I'm a little unclear on the Description/Overview question, where would you expect to see the description. As this plugin just scans your media items and adds/create a standard Emby playlist or Collection. You could use the Episode Name with an Any group to achieve this. (Episode is the episode number) or you could even tag episodes with "xmas" or whatever and use the tag criteria. image.thumb.png.abb1c4f8f6faf8cae24eecf91d0f206f.pngYou can use the helper adder to add multiple (button on the right with the +)image.png.4801a4aa814ccfb00011237654667271.png

Hope this helps.

Link to comment
Share on other sites

ShaneP
On 7/13/2022 at 11:39 PM, dRuEFFECT said:

@ShaneP the debug logging is super useful. i figured out another issue i've been having

i have a playlist of talk shows that i wanted to source from both sonarr as well as live tv, show unplayed from the last 3 weeks, but also show the last recorded episode if it was added within the last day (after a day, sonarr should have picked it up). I also managed to figure out the and/or functionality and now works how i like. @horstepipe my screenshot below should help you

the issue i was having was that i was editing an EXISTING smart playlist, and THEN going to the shows to add tags. but it seems that after the initial run of a live smart playlist that the tag (tree crawl) doesn't re-check up to the show's tags. i created a duplicate of the same smart playlist, and the recorded shows i had just added the Talk Show tag for would populate for the new smart playlist but not the old ones. i then found that if i went to the old smart playlist, changed update to manual, and run a manual update, only THEN did it pick up the tags from the show. I changed it back to live update and seems to be good now on the old playlist.

so it seems that specifically to live playlists, it only re-checks against new media items when added, whereas a manual smart playlist checks everything. but i suppose if i waited until the scheduled task to refresh all smart playlists, it may have updated then as well?

image.thumb.png.7193fe9a8b768799df8e434b956bd5e2.png

Thanks for that @dRuEFFECT! I'll investigate the live issue... (Sorry I initial thought that the this was to do with the sourcing and tree crawling, upon further investigation doesn't seem to be the case), I'll try replicate.

Edited by ShaneP
Link to comment
Share on other sites

nuentes
2 minutes ago, ShaneP said:

Welcome @nuentes and thank you, I tested 2.4.0.0 on emby 4.6.*.0 (I think it was) and had no issues... Perhaps check the Emby logs for errors.

Secondly, I'm a little unclear on the Description/Overview question, where would you expect to see the description. As this plugin just scans your media items and adds/create a standard Emby playlist or Collection. You could use the Episode Name with an Any group to achieve this. (Episode is the episode number) or you could even tag episodes with "xmas" or whatever and use the tag criteria.

There were no errors in my emby log, unfortunately. None that I was able to see, at least. I can try again.

Yes, I understand how to filter using multiple criteria. All of this was very easy to understand. The issue is that TV Episode and Movie Description are not available to filter on (similar to Episode Name in your screenshot). Many times the Episode Name will not be holiday themed, but the episode description will mention holiday terms. So basically - in the screenshots you sent - I want to do 'Episode Description' or 'Movie Description' where you filtered for 'Episode Name'.

Here's a quick example. This Ted Lasso episode title is not something I would have searched for. However, when we read the episode description, you can see that it includes the word 'Christmas'.

image.thumb.png.03bcae1b0e2ef3e02bd330ca89c0b1e5.png

Tagging episodes is too difficult. It would take me hours upon hours to find the episodes and then edit the metadata for all holiday episodes (we're not just talking about christmas...). Especially since Emby does not have a way to add tags in bulk still.

Link to comment
Share on other sites

ShaneP
21 minutes ago, nuentes said:

There were no errors in my emby log, unfortunately. None that I was able to see, at least. I can try again.

Yes, I understand how to filter using multiple criteria. All of this was very easy to understand. The issue is that TV Episode and Movie Description are not available to filter on (similar to Episode Name in your screenshot). Many times the Episode Name will not be holiday themed, but the episode description will mention holiday terms. So basically - in the screenshots you sent - I want to do 'Episode Description' or 'Movie Description' where you filtered for 'Episode Name'.

Here's a quick example. This Ted Lasso episode title is not something I would have searched for. However, when we read the episode description, you can see that it includes the word 'Christmas'.

image.thumb.png.03bcae1b0e2ef3e02bd330ca89c0b1e5.png

Tagging episodes is too difficult. It would take me hours upon hours to find the episodes and then edit the metadata for all holiday episodes (we're not just talking about christmas...). Especially since Emby does not have a way to add tags in bulk still.

Ahh this makes sense… let me check the metadata to see if I can access it. If so I’ll add the addition criteria.

 

UPDATE: Was able to get the overview metadata, new criteria field 'Overview' in next version.

Edited by ShaneP
Link to comment
Share on other sites

Junglejim
12 hours ago, ShaneP said:

@Junglejim to confirm, you are running the latest? And the playlists have "executed"? It write the log to the same location as the data files... (i.e. 03d4730f-3f25-4f95-9e40-58c64cb03bef.log). So doesn't need any special perms our anything. Could you check your emby logs on when you executed the playlists to see if there are any errors. In the new version I have changed the way it opens the logs. But don't know any reason why it wouldn't write. If you like, you could send me one of your json files for me to look at if it doesn't contain any personal info.

Hi mate, yes I'm running the latest ver of the plugin.

Something strange happened today and all my playlists disappeared and had the .failed ext.

I decided to delete the lot and start from scratch. As soon as I created my first playlist this error was in the emby logs.

unhandled_07b8590d-c88f-4aef-9f86-d3bc7b8e0281.txt

It was just a simple "New Releases" list limited to 40 movies with release date desc.

Not sure if that log will help. Same type of thing is in emby's main log too.

2022-07-21 13:53:02.759 Error App: [SmartPlaylist][Error]: Value cannot be null. (Parameter 'source')
	*** Error Report ***
	Version: 4.7.5.0
	Command line: /app/emby/EmbyServer.dll -programdata /config -ffdetect /app/emby/ffdetect -ffmpeg /app/emby/ffmpeg -ffprobe /app/emby/ffprobe -restartexitcode 3
	Operating system: Linux version 5.18.0-0.bpo.1-amd64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
	Framework: .NET 6.0.2
	OS/Process: x64/x64
	Runtime: app/emby/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /app/emby
	System.ArgumentNullException: System.ArgumentNullException: Value cannot be null. (Parameter 'source')
	   at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
	   at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
	   at SmartPlaylist.Domain.SortJob.ToDto()
	   at SmartPlaylist.Domain.SmartPlaylist.ToDto()
	   at SmartPlaylist.Handlers.CommandHandlers.SmartPlaylistUpdater.Update(SmartPlaylist smartPlaylist, BaseItem[] items)
	   at SmartPlaylist.Handlers.CommandHandlers.SmartPlaylistUpdater.Update(SmartPlaylist smartPlaylist)
	   at SmartPlaylist.Handlers.CommandHandlers.UpdateSmartPlaylistCommandHandler.HandleAsync(UpdateSmartPlaylistCommand message)
	   at SmartPlaylist.PerfLoggerDecorators.PerLoggerMessageDecorator`1.HandleAsync(T message)
	   at SmartPlaylist.Infrastructure.MesssageBus.Decorators.SuppressAsyncExceptionDecorator`1.HandleAsync(T message)
	Source: System.Linq
	TargetSite: Void ThrowArgumentNullException(System.Linq.ExceptionArgument)

edit: forgot to mention that the playlist is created and is totally usable. Just no .log files are created. I can live without them if it all works. :)

Edited by Junglejim
Link to comment
Share on other sites

ShaneP
2 hours ago, Junglejim said:

Hi mate, yes I'm running the latest ver of the plugin.

Something strange happened today and all my playlists disappeared and had the .failed ext.

I decided to delete the lot and start from scratch. As soon as I created my first playlist this error was in the emby logs.

unhandled_07b8590d-c88f-4aef-9f86-d3bc7b8e0281.txt 1.47 kB · 0 downloads

It was just a simple "New Releases" list limited to 40 movies with release date desc.

Not sure if that log will help. Same type of thing is in emby's main log too.

2022-07-21 13:53:02.759 Error App: [SmartPlaylist][Error]: Value cannot be null. (Parameter 'source')
	*** Error Report ***
	Version: 4.7.5.0
	Command line: /app/emby/EmbyServer.dll -programdata /config -ffdetect /app/emby/ffdetect -ffmpeg /app/emby/ffmpeg -ffprobe /app/emby/ffprobe -restartexitcode 3
	Operating system: Linux version 5.18.0-0.bpo.1-amd64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
	Framework: .NET 6.0.2
	OS/Process: x64/x64
	Runtime: app/emby/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /app/emby
	System.ArgumentNullException: System.ArgumentNullException: Value cannot be null. (Parameter 'source')
	   at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
	   at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
	   at SmartPlaylist.Domain.SortJob.ToDto()
	   at SmartPlaylist.Domain.SmartPlaylist.ToDto()
	   at SmartPlaylist.Handlers.CommandHandlers.SmartPlaylistUpdater.Update(SmartPlaylist smartPlaylist, BaseItem[] items)
	   at SmartPlaylist.Handlers.CommandHandlers.SmartPlaylistUpdater.Update(SmartPlaylist smartPlaylist)
	   at SmartPlaylist.Handlers.CommandHandlers.UpdateSmartPlaylistCommandHandler.HandleAsync(UpdateSmartPlaylistCommand message)
	   at SmartPlaylist.PerfLoggerDecorators.PerLoggerMessageDecorator`1.HandleAsync(T message)
	   at SmartPlaylist.Infrastructure.MesssageBus.Decorators.SuppressAsyncExceptionDecorator`1.HandleAsync(T message)
	Source: System.Linq
	TargetSite: Void ThrowArgumentNullException(System.Linq.ExceptionArgument)

edit: forgot to mention that the playlist is created and is totally usable. Just no .log files are created. I can live without them if it all works. :)

Oh no! That is really odd I’ll try replicate. Did you try rename the *.failed back to json? Do you have a copy of the failed files?

Edited by ShaneP
Link to comment
Share on other sites

Junglejim
15 minutes ago, ShaneP said:

Oh no! That is really odd I’ll try replicate. Did you try rename the *.failed back to json? Do you have a copy of the failed files?

No sorry I deleted the .failed files. I did cat view in the terminal before I deleted them and they looked the same as the json files but with the failed ext. I suppose I could of renamed them back to .json.

I thought I'd start from scratch again and see if that made a difference. That's when I picked up the log errors above.

Link to comment
Share on other sites

ShaneP
24 minutes ago, Junglejim said:

No sorry I deleted the .failed files. I did cat view in the terminal before I deleted them and they looked the same as the json files but with the failed ext. I suppose I could of renamed them back to .json.

I thought I'd start from scratch again and see if that made a difference. That's when I picked up the log errors above.

Alrighty, was half asleep when I read your first message. I'll also add to the Emby log the reason why the load failed. Might help try trouble shoot this later.

Link to comment
Share on other sites

ShaneP

Version 2.4.0.1

Feature

  • Added Import/Export functionality allowing you to backup and restore playlists.
  • Added Regular Expression (Match and No Match) Operators for string values
  • Added 'Overview' Criteria
  • Added Readable to rules tree
  • Added playlist load failure reason to main Emby Log.
  • Added 'Smart Playlist (Execute)' Source item. This will first execute the playlist before reading the items from it.
  • Added More logging around errors and error handling.
  • Bug

    • Changed the way log files are transferred.

Thanks for testing!

 

Import/Export.  Remove single 'Add' button and created a hover over menu on the right hand side

.image.png.a590063b528714cbc3a8d25f5c6d63d7.png

image.png.8b944cdadb084163dc5e98c822087038.png

image.png.01dde466e432fe60c3c4a05beb5b6db8.png

Regular expressions for string values. Uses underling C# Regex engine, so ensure regex is C# standard. Also popup menu with Regex options.

image.thumb.png.fd4e8436d69b5466f6cf7aeaf9aff0fb.png

Readable rules tree, gives you a (hopefully) clearer view of your rules tree. Playlist does not need to be saved to view.

image.thumb.png.d9d9fbb280a09c37a31bf1bb5e9a1cdc.png

New "Source Type" Smart Playlist (Execute). This will show a list of smart playlists that are NOT live mode. The idea is that if the 'Source type' is used, that the underlying Smart Playlist will execute before the referencing playlist and then get the items from that source, so they are up-to-date. (This will appear in the logs as triggered by 'LinkedAsSource')

SmartPlaylist-2.4.0.1.zip

Edited by ShaneP
  • Thanks 2
Link to comment
Share on other sites

Junglejim
9 hours ago, ShaneP said:

Version 2.4.0.1

Feature

  • Added Import/Export functionality allowing you to backup and restore playlists.
  • Added Regular Expression (Match and No Match) Operators for string values
  • Added 'Overview' Criteria
  • Added Readable to rules tree
  • Added playlist load failure reason to main Emby Log.
  • Added 'Smart Playlist (Execute)' Source item. This will first execute the playlist before reading the items from it.
  • Added More logging around errors and error handling.
  • Bug

    • Changed the way log files are transferred.

Thanks for testing!

 

Import/Export.  Remove single 'Add' button and created a hover over menu on the right hand side

.image.png.a590063b528714cbc3a8d25f5c6d63d7.png

image.png.8b944cdadb084163dc5e98c822087038.png

image.png.01dde466e432fe60c3c4a05beb5b6db8.png

Regular expressions for string values. Uses underling C# Regex engine, so ensure regex is C# standard. Also popup menu with Regex options.

image.thumb.png.fd4e8436d69b5466f6cf7aeaf9aff0fb.png

Readable rules tree, gives you a (hopefully) clearer view of your rules tree. Playlist does not need to be saved to view.

image.thumb.png.d9d9fbb280a09c37a31bf1bb5e9a1cdc.png

New "Source Type" Smart Playlist (Execute). This will show a list of smart playlists that are NOT live mode. The idea is that if the 'Source type' is used, that the underlying Smart Playlist will execute before the referencing playlist and then get the items from that source, so they are up-to-date. (This will appear in the logs as triggered by 'LinkedAsSource')

SmartPlaylist-2.4.0.1.zip 305.94 kB · 6 downloads

Cheers mate, great update! Logs files now work on my system and no more Emby log errors when creating a playlist. 👍

root@mymediavault:/var/lib/docker/appdata/emby/data/smartplaylists/11d579cb-da97-46ff-add7-dfa97879e57e# ls
572bac80-d922-49e8-ade3-283a36023a66.json  63272662-e93c-4a34-811f-faff663b60e5.json  fbb2c52a-2e21-467c-b387-027961393041.json
572bac80-d922-49e8-ade3-283a36023a66.log   63272662-e93c-4a34-811f-faff663b60e5.log   fbb2c52a-2e21-467c-b387-027961393041.log

Some other cool stuff to investigate to like export/import.. looking good. 🍻

Edit: I did get one error in  the embyserver log, not to sure how important it is..

2022-07-22 15:34:06.860 Info Server: http/1.1 POST http://host1:8096/smartplaylist?v=2.4.0.1&X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=6c18db1a-0099-4fa1-a1c6-deb4086f42a2&X-Emby-Client-Version=4.7.5.0&reqformat=json. UserAgent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
2022-07-22 15:34:06.865 Info Server: http/1.1 Response 200 to host2. Time: 6ms. http://host1:8096/smartplaylist?v=2.4.0.1&X-Emby-Client=Emby Web&X-Emby-Device-Name=Firefox&X-Emby-Device-Id=6c18db1a-0099-4fa1-a1c6-deb4086f42a2&X-Emby-Client-Version=4.7.5.0&reqformat=json
2022-07-22 15:34:16.252 Error Server: Error processing request
	*** Error Report ***
	Version: 4.7.5.0
	Command line: /app/emby/EmbyServer.dll -programdata /config -ffdetect /app/emby/ffdetect -ffmpeg /app/emby/ffmpeg -ffprobe /app/emby/ffprobe -restartexitcode 3
	Operating system: Linux version 5.18.0-0.bpo.1-amd64 (debian-kernel@lists.debian.org) (gcc-10 (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
	Framework: .NET 6.0.2
	OS/Process: x64/x64
	Runtime: app/emby/System.Private.CoreLib.dll
	Processor count: 4
	Data path: /config
	Application path: /app/emby
	System.InvalidOperationException: System.InvalidOperationException: StatusCode cannot be set because the response has already started.
	   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ThrowResponseAlreadyStartedException(String value)
	   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.set_StatusCode(Int32 value)
	   at Emby.Server.Implementations.Services.ResponseHelper.WriteToResponse(HttpListenerHost httpListenerHost, IResponse response, IRequest request, Object result, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost 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: Microsoft.AspNetCore.Server.Kestrel.Core
	TargetSite: Void ThrowResponseAlreadyStartedException(System.String)

 

Edited by Junglejim
Link to comment
Share on other sites

nuentes

@ShaneP I overwrote my 2.2.0.1 install with 2.4.0.1. Unfortunately, SmartPlaylists still does not show up after this release.

image.png.b60e64107ef2447ab69efdd0af5dce04.png

Here is my log. You can see the dll is getting detected in /opt/ and copied to the /var/ path. I don't see any errors, though. I'm on Ubuntu, if that makes any difference to you.

Edited by nuentes
Link to comment
Share on other sites

BaiGanJia

dear@ShaneP 

Thank you very much for the update, very useful.

here is a new issue,

I just want to add a certain TV show (series) to the playlist, but it gives me all episodes of this TV show。

is there any solution?image.thumb.png.f40747f7c557f7d7bba4479f34934ede.png

 

but the result is bad look

 

image.thumb.png.c28834525709178b03d9163243ae7f0d.png

Link to comment
Share on other sites

ShaneP
11 hours ago, BaiGanJia said:

dear@ShaneP 

Thank you very much for the update, very useful.

here is a new issue,

I just want to add a certain TV show (series) to the playlist, but it gives me all episodes of this TV show。

is there any solution?image.thumb.png.f40747f7c557f7d7bba4479f34934ede.png

 

but the result is bad look

 

image.thumb.png.c28834525709178b03d9163243ae7f0d.png

Hey @BaiGanJia, Smart playlists just created standard Emby playlists in the background, Emby playlists do not support anything else other than the actual media item level. (No folders etc...) BUT there is a work around, Emby Collections do! And this is where 'Epimode' comes in... Smart playlists can roll up items to either there series or season. So you could do this.

image.thumb.png.db4788539fd56428571621139ae7f37d.png

Link to comment
Share on other sites

ShaneP
On 7/22/2022 at 1:38 PM, nuentes said:

@ShaneP I overwrote my 2.2.0.1 install with 2.4.0.1. Unfortunately, SmartPlaylists still does not show up after this release.

image.png.b60e64107ef2447ab69efdd0af5dce04.png

Here is my log. You can see the dll is getting detected in /opt/ and copied to the /var/ path. I don't see any errors, though. I'm on Ubuntu, if that makes any difference to you.

Hey @nuentes, Firstly any reason you don't want to upgrade to the latest version of Emby? Secondly, I am running Ubuntu as well, but the latest version of Emby so can't really debug. If I can I'll just create a new container and install 4.6.X.X and run it, if it's not a big fix I'll included in the next release. If you fire up Web Developer Tools in your browser do you see any javascript errors in the console that might shed some light on this?

 

Edited by ShaneP
Link to comment
Share on other sites

koopa8840

I'm running across this error, on Live Update:  Error Value cannot be null. (Parameter 'first')

As you can see, the Next Update time is set before Last Populated time. This morning I check the status and I have the error. You can see the Last Populated time has changed, but not the Next Update time. The log does not show anything. However, if you go to Scheduled Tasks and execute Refresh All Smart Playlists and Collections, the error is gone. Not sure what the cause is.create.thumb.png.7297cab10ce9204f29e260c759b23670.png

 

error.thumb.png.0b2f38bfbd956f4725bef534af8747d1.png

 

manual_run.thumb.png.f0a8d84adbafa4be884ff0ecc4e8ba32.png

 

log.png

 

I found this in the emby server log.

 

server_log.png.5327ff8d0c20a313444050009ac8c9b6.png

 

settings.png

Edited by koopa8840
Link to comment
Share on other sites

smernt

This looks great! I'm just about to get it installed. Thank you for doing this, it's sorely needed in default Emby.

For the Emby Devs: PLEASE just get this incorporated into Emby by default. People are doing the leg work & bringing features that should have been included years ago, so rather than just leave it like that, please make deals with these kind contributors & get these features built into Emby. I know it's definitely easier said than done, but it would certainly help tick off some of those feature requests which are buried under a few inches of dust. I'm sure the response will be 'this is planned for the future' 😂

Link to comment
Share on other sites

smernt

Ok, this seems to be working great so far! Question though, is there a way to combine a bunch of genres together into a single rule? I know there's the 'multiple values' option, but that requires typing out all of the values manually too. Being able to multi-select from the list version of the Genre rule would be great!

Also, 'Parental Rating' doesn't seem to be working. I'm trying to set a rule like this:
image.thumb.png.f18afd28c98eec062f20f9cd4173ef90.png

However, I keep getting the following kind of error:

Incomparable: 'Superbad', Field: 'Parental rating': 'No metadata value found'

This happens on all of the items, which means no items are being added to the playlist because it thinks they're all missing that metadata, even though they're not. For example, Superbad has the Parental Rating of 'R' in my metadata.

I wonder if the 'Parental Rating' rule is accidentally pulling from the 'Custom Rating' metadata field by mistake? As I don't use the custom ratings but all of my items have parental ratings attached.

Also, the list of Parental Ratings are a little confusing since they seem to only be US based. I'm in the UK and our ratings include U, 18, 12A etc, but they're not there, which also makes it difficult to filter in this way.

For example, here's what I see if I filter within Emby:

Spoiler

image.png.b82025aee65de63f836b28128ef273a7.png




And this is what I see as options within Smart Playlist:
 

Spoiler

image.thumb.png.4310c39c7e74486d8a9245f0e9f416c2.png

 

Edited by smernt
Link to comment
Share on other sites

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...