Jump to content

Could use some SSDP help


deathbybandaid
 Share

Recommended Posts

deathbybandaid

I'm developing a python script that emulates being an HDHomerun for use with both Plex and Emby.

I've put together an SSDP service that seems to send and receive properly, but the data I'm sending seems to not be detected by Plex or Emby for autodetect.

 

What kind of SSDP data is Emby expecting to see?

 

Additionally, my script supports M3U, and I see that Emby has the ability to autodetect M3U tuners as well? What kind of SSDP data is Emby expecting to see for this?

 

 

Thanks in advance!

Link to comment
Share on other sites

  • 4 months later...
wouterdebie

Necromancing this thread.. 

Any of the Emby devs that can tell us how Emby does tuner discovery? Is Emby using SSDP or some other mechanism?

Link to comment
Share on other sites

21 minutes ago, wouterdebie said:

Necromancing this thread.. 

Any of the Emby devs that can tell us how Emby does tuner discovery? Is Emby using SSDP or some other mechanism?

We discover hdhomerun devices by sending a udp broadcast on port 65001. 

Link to comment
Share on other sites

Guys if you need to see how emby is discovering services on it's local network - just install wireshark, filter by emby as the source and watch the broadcasts .. :) 

Edited by rbjtech
Link to comment
Share on other sites

wouterdebie
18 hours ago, rbjtech said:

Guys if you need to see how emby is discovering services on it's local network - just install wireshark, filter by emby as the source and watch the broadcasts .. :) 

Sure, but asking the dev's is easier, no? Next to that, I don't have a tuner that responds, so wireshark isn't going to tell me what the response should look like, or what Emby expects..

Link to comment
Share on other sites

18 hours ago, wouterdebie said:

discovering m3u tuners?

There is no discovery of that. You enter the url into the setup screen.

Link to comment
Share on other sites

wouterdebie

I'm looking at some Jellyfin code (hoping that Emby still does the same thing) and is it true that Emby just listens to 255.255.255.255:65001, checks if the 2nd byte is "3" and uses the sending IP address as the tuner IP? And completely ignores any of the HDHR packet?

Link to comment
Share on other sites

Probably  yes, I'd have to check to confirm, but this is all designed by silicondust so their developer docs would be the best possible source of information. They may have code for it in libhdhomerun.

Link to comment
Share on other sites

wouterdebie

I checked the docs from sillicondust and their lib is very specific, but then I found the Jellyfin code that does something pretty crude and different. The hdhr packet protocol specifies a base url and a discovery url, but Jellyfin completely ignores any of that.

Link to comment
Share on other sites

On 4/20/2021 at 8:39 PM, wouterdebie said:

is it true that Emby just listens to 255.255.255.255:65001, checks if the 2nd byte is "3" and uses the sending IP address as the tuner IP? And completely ignores any of the HDHR packet?

Yes this is correct. What we need to do is read the data and get certain values from it, which we're not currently doing.

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
 Share

×
×
  • Create New...