Jump to content

New WebStreams Plugin


Recommended Posts

Posted
6 minutes ago, sftech13 said:

Question. For TV Series if the name is something like this NameOfShow - 2018 will the meta pick up or does it need to be NameOfShow 

It uses the same name parsing like for files/folders on disk.

  • Thanks 1
Posted (edited)

While the plugin in the catalog is still broken, here's something you can test meanwhile:

Emby.WebStreams.Plugin.dll.zip

Instructions

  • copy this into the Plugins folder of your Emby installation
    (overwriting the existing one
  • Important: Delete the config file "webstreams.xml"
    (or rename or make a backup)
    You will need to re-setup everytthing anyway to get it all working properly
  • Restart Emby Server

Changes

  • Adds support for RSS and Atom feeds
  • Includes migration features for migrating settings from 
    • The IPTV plugin
    • The PodCasts plugin
  • New "Quick Add" button
  • Localization: Add translations for all 50 Emby languages
  • Uses the new parental rating selection
  • Use dynamic season folder management by the server
    (this let's you edit the season numbers of episodes)
  • Does no longer drop episodes where it cannot determine the season number
    (these will have a season number of -1 until we have a special display name handling for it)
  • Increased connection timeout (30s)
  • HTTP: Enable automatic transport compression
  • HTTP Headers: Supply "Accept" and "Language" headers (to be tter match browser behavior)
  • M3U Urls: Parse and pass extra header parameters behind a pipe char
  • Set the item name as "Original Title", so that it can still be seen after the title has been overwritten by metadata
  • Create automatic field mappings
  • Support feed image fallback and per-feed info fields
  • Support hyperlinks for items and folders
    ("Official Website" link)
  • Display stream errors in overview

Fixes

  • "Show at top level" is working now 
  • Fix M3U parsing with commas in titles
  • Fix playback of audio items
  • RSS: Add support for itunes:author field
  • Fix loading sources with GTTP basic auth
    (https://user:pass@host.com)
  • Metadata refresh indication: Fix percentage calculation
  • Always show metadata refresh queue when active
    (not only after adding or refreshing a source)
  • Broaden support for episode name patterns
  • Fix for unsupported episode patterns like "(S01/E01)"
  • Don't overwrite data from metadata retrieval
  • Provide a default set of library options to enable proper metadata retrieval (it cannot be customized yet)
  • HTTP: Don't force http version 1.1

 

Edited by softworkz
  • Like 1
  • Thanks 1
Posted
12 minutes ago, howllor said:

Emby crashes whenever I try to play a podcast 😬

embyserver (3).txt 728 kB · 0 downloads

 

Which source was it? The mixed one?

Did everything else work? Loading and display within Emby?

 

Did you delete the webstreams.xml config file?

Posted

Also I am sorry, you have done a lot of great work on this plugin, but this is still not a satisfactory replacement for a dedicated podcast app. I respect if that's not in line with your intentions, but if you like i can give you some concrete suggestions on how to improve the experience.

Posted
Just now, softworkz said:

 

Which source was it? The mixed one?

Did everything else work? Loading and display within Emby?

 

Did you delete the webstreams.xml config file?

Tried both the mixed and the single one. Everything else worked though, just not playback! Also there was no webstreams.xml file to delete, unless i looked in the wrong place (likely?)

Posted
2 minutes ago, howllor said:

Tried both the mixed and the single one. Everything else worked though, just not playback! Also there was no webstreams.xml file to delete, unless i looked in the wrong place (likely?)

(I looked in the wrong place)

Posted
1 minute ago, howllor said:

Also there was no webstreams.xml file to delete, unless i looked in the wrong place (likely?)

C:\Users\ASUS\AppData\Roaming\Emby-Server\programdata\config\

 

 

Posted
3 minutes ago, softworkz said:

C:\Users\ASUS\AppData\Roaming\Emby-Server\programdata\config\

 

 

Yeah i looked in plugins\configuration, my bad. Restarting now, will see if I can get them to play now 😅

Posted
Just now, howllor said:

Yeah i looked in plugins\configuration, my bad. Restarting now, will see if I can get them to play now 😅

Nope, still crashes 

embyserver (4).txt

Posted

It's working for me. I just tried with the release version of the server as well. Specifically, I played these ones:

image.png

 

Can you try from a web browser rather than Android, so that we're equal in testing?

Posted

Tried in a browser, plays no problem

Posted
1 minute ago, howllor said:

Tried in a browser, plays no problem

Okay, great! That's very good (because then it's not my fault :D )

  • Haha 2
Posted
37 minutes ago, howllor said:

Also I am sorry, you have done a lot of great work on this plugin, but this is still not a satisfactory replacement for a dedicated podcast app. I respect if that's not in line with your intentions,

Indeed - it has never been intended to be a full-featured podcast app. The goals are:

  • Enabling users to get all kinds of media sources into their Emby Server
  • Presenting all that media in a way that is similar to content in a local Emby library
  • Providing a high degree of flexbility regarding different sources by allowing custom field mapping and applying complex filtering on source media
  • Replacing the IPTV and the PodCast plugins and provide a better experience
  • Integrating VOD content exactly in the way it's meant to be, instead of having thousands ot fake "tv channels" causing EPGs for actual TV being hardly manageable anymore

Future goals are primarily about getting even better in all of these six bullets and supporting more source formats but rather not very specific functionality like the feature set of a dedicated podcast app.

But what I can very well imagine to happen would be some community developer creating another plugin that has those features you are looking for.
That plugin could be built to work on top of WebStreams, which means that WebStreams would fo the hard word and the plugin would only manipulate the configuration of WebStreams (via an exposed API). Backed by WebStreams, such plugin becomes easier to implement by a magnitude and development can focus alone on the management part

 

37 minutes ago, howllor said:

I can give you some concrete suggestions on how to improve the experience.

I'm still interested what you have in mind, of course..

 

Posted

Tested the plugin now - it's working a lot better! Now all the episodes are grabbed, but it's struggling with the current season as the metadata in the m3u file is wierd. Hoping this will find a solution either in m3u output or in this plugin. Please let me know it you need examples of data from my m3u file to use for testing. 

Posted
13 minutes ago, barazin said:

Tested the plugin now - it's working a lot better! Now all the episodes are grabbed, but it's struggling with the current season as the metadata in the m3u file is wierd. Hoping this will find a solution either in m3u output or in this plugin. Please let me know it you need examples of data from my m3u file to use for testing. 

Samples are always welcome! Feel free to PM me.

Thanks

Posted (edited)

WebStreams Tips for Metadata

Here are two essential ways to improve your experience with metadata for WebStreams content:

Setting the Metadata Language

Metadata settings per WebStreams source are not implemented yet. But when you have non-English content, it is highly important that you set the langauge for the metadata to retrieve. 
This does not only determine the language of the metadata you get - it also has a sigfificant influence on the identification of media. 
For example, when you use media sources from German public TV (like from the Streamfeeds site, you get metadata for much more content when setting the metadata language tio English German.

How to do it

  • Navigate to the home view and then click on WebStreams
  • Right-click the stream source for which you want to change the language
  • Click "Edit Metadata"
  • Find "Metadata Language", select the language and hit OK
  • Right-click the item again and choose "Refresh Metadata"
  • Check "Replace all images" and let it run
  • After a while, check back and compare

 

Fixing up Seasons

The plugin can not always determine the season. It does it's best, but when there's no such information available the season id ends up as being set to -1 (because 0 has a special meaning already).
But there's something you can do about now. You can edit the season number manually. Well - you could always do that, but it didn't have any effect.

How to do it

  • Right-click an episode
  • Choose "Edit Metadata"
  • Enter the desired number into the Season Number field
  • Save
  • Right-click again
  • Choose "Refresh Metadata"
  • IMPORTANT: Change Refresh mode to "Search for missing metadata"
    (it does not work with "Replace...")

You can also edit multiple season numbers first and then do Refresh Metadata on the series (but not "Replace...")

 

 

Edited by softworkz
Fixed typo
Posted

My testing seems to indicate that it fails to recognize current season/latest season IF there are more than one season. All previous seasons are recognized correctly, and if there's only one season it also seems to work. I've sent an example from my .m3u on PM, and as you can see it shows metadata differently for current season vs old seasons. Not sure if that is applicable for all providers. 

Posted

Is there plans to integrate this with the Trakt sync? Or is it supposed to work OOTB? I've tried syncing, and my watch status is not reflected after syncing my test library :)

Posted
58 minutes ago, barazin said:

My testing seems to indicate that it fails to recognize current season/latest season IF there are more than one season. All previous seasons are recognized correctly, and if there's only one season it also seems to work. I've sent an example from my .m3u on PM, and as you can see it shows metadata differently for current season vs old seasons. Not sure if that is applicable for all providers. 

Unfortunately, that's still and

Unresolved Problem with Seasons

Currently there are two ways for the plugin to deal with episodes where it cannot determine the season number:

1. Specify -1 for the season number

That's what it currently does. It keeps all episodes with unresolved seasons in a separate season "-1" (should be named accordingly).

The problem with that is that the metadata lookup by episode name doesn't work because the season number -1 is passed on to the metadata providers.

2. Leave the season number empty

This enables episode lookup by name, but it has a big drawback as well: It puts all spisodes with unresolved season number into "Season 1". And there it collides and pollutes the list of actual Season 1 episodes.

 

Example

This is with -1 season. For 315 episodes, the season number could not be resolved. Season 1 has 5 items.

image.png

 

Now, when setting an empty season number, it looks like this:

image.png

 

The unresolved ones are in Season 1 now. I don't know where the original 5 ones are - normally it should be 315 + 5 = 320 

But most importantly: A Season 1 with 315 items makes it impossible to find and see the actual 5 episodes in Season 1.

 

So, that part is still pending a proper solution.

  • Like 1
Posted (edited)
9 hours ago, softworkz said:

Indeed - it has never been intended to be a full-featured podcast app. The goals are:

  • Enabling users to get all kinds of media sources into their Emby Server
  • Presenting all that media in a way that is similar to content in a local Emby library
  • Providing a high degree of flexbility regarding different sources by allowing custom field mapping and applying complex filtering on source media
  • Replacing the IPTV and the PodCast plugins and provide a better experience
  • Integrating VOD content exactly in the way it's meant to be, instead of having thousands ot fake "tv channels" causing EPGs for actual TV being hardly manageable anymore

Future goals are primarily about getting even better in all of these six bullets and supporting more source formats but rather not very specific functionality like the feature set of a dedicated podcast app.

But what I can very well imagine to happen would be some community developer creating another plugin that has those features you are looking for.
That plugin could be built to work on top of WebStreams, which means that WebStreams would fo the hard word and the plugin would only manipulate the configuration of WebStreams (via an exposed API). Backed by WebStreams, such plugin becomes easier to implement by a magnitude and development can focus alone on the management part

 

I'm still interested what you have in mind, of course..

 

I think some of my frustration stems from being told "wait for the WebStreams plugin" when I've brought up issues with how podcasts are treated in emby, and has very little to do with my actual issues with the plugin. (And the only reason I need emby to handle podcasts is because *cough* Sonos *cough* f-ed up their app to the point where it's almost unusable, but casting from emby to Sonos still works well. So I download episodes to my server an point an audiobook library at the folder, but this is an unnecessary amount of work for a medium that's basically made to be streamed)

Here are some suggestions regarding podcasts in WebStreams:

1. More or less copy the view for a podcast from the view of an audiobook in the library. It only needs minor tweaks to be perfect:

- 1.1 Need to be able to mark episodes as listened to

- 1.2 Ability to choose between newest to oldest or oldest to newest sorting of episodes (chapters, if it was an audiobook)

- 1.3 Ability to hide episodes already listened to

2. In the view where you've got several podcasts or shows, the ability to sort by which one has the most recently added episode (last content date added does not appear to work for this). Badge with number of unlistened episodes would also be nice, just like for TV shows

3. You know my feelings about OPML import already 😅

In the mock-up there are covers for each episode which might not be necessary, prioritising displaying episode release date is probably better now that I think of it.

IMG_20251007_205809_251007210400.png

Edited by howllor
Posted
1 hour ago, howllor said:

* Need to be able to mark episodes as listened to

 

Right, that's a bug. Will look into it.

 

1 hour ago, howllor said:

* Ability to choose between newest to oldest or oldest to newest sorting of episodes

That's already possible - just tried it with "Eeler's Choice" (standalone feed). All you need to do is to sort by "Release Date".

It doesn't work with your aggregated feed, but that's exepected: All items have the same pubdate...

 

1 hour ago, howllor said:

* Ability to hide episodes already listened to

Once it is possible to mark as played, it's easy to do:

image.png

 


 

I'll leave 1 and 2 for @Luke to answer.

 

 

  • Like 1
Posted (edited)
23 minutes ago, softworkz said:

 

Right, that's a bug. Will look into it.

 

That's already possible - just tried it with "Eeler's Choice" (standalone feed). All you need to do is to sort by "Release Date".

It doesn't work with your aggregated feed, but that's exepected: All items have the same pubdate...

 

Once it is possible to mark as played, it's easy to do:

image.png

 


 

I'll leave 1 and 2 for @Luke to answer.

 

 

Oh I know a lot of the sorting and filtering functionality is already there and I appreciate it, I pointed out those things more so that... don't just slap the audiobook view onto it without keeping these important features. Made it clearer in my entry now what's supposed to be a sub-point to another point (wrote 1.1, 1.3 etc instead of just *)

And yeah I noticed the same thing about my compound feed, had to remove it. It was mostly something I was curious about whether it would work or not.

Edited by howllor
Posted

In the overall spirit of emby.  Is there plans to make things such as podcasts, strm, and other online stream formats downloadable and saved in an organized fashion for offline use ?  

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