Closed xlash123 closed 11 months ago
Thank you for the PR! The body size problem drove me crazy, I didn't realize a +1 was necessary 🙈
I will test this out as soon as I can. Playing content on Kodi shouldn't be that hard, but I never tried with an MP-DASH stream which is sent by GrayJay (at least for YouTube playback).
Glad I could help. I was also really confused why the client wasn't receiving any updates from the receiver. Turns out the packet length includes the opcode.
I made a few more changes to the test script to support the message.url
method of playback, since I only tested it with message.content
. Both of them now work great.
I also updated the readme to show how to create a dev environment. As I have never created a Kodi addon before, I was confused for a while on where to get the xbmc*
modules from for autocomplete, until I found that section in the Kodi docs.
I went ahead and tried out implementing receiver support in Kodi. I've got pretty far with supporting message.url
. I have not approached message.content
.
My apologies for including this on my main branch. I forgot it would attach the new commits to this PR.
Thank you again! Code seems fine, I will try to check and test everything out today or tomorrow so I can merge this PR.
To handle message.content
I think we could use this as a dependency: https://github.com/xbmc/inputstream.adaptive
It is used by many add-ons to handle streams from DRM protected services, but I never used it before so I'm not 100% sure
I was trying out test.py trying to get it to work with Grayjay as the client, and I noticed that the body size was off by one. According to the protocol docs, packet size is 1 + the body size. After changing that, the client was able receive packets correctly.
I then modified the test.py to include callbacks for pause, resume, and seek. Additionally, I added a listener to the MPV player for pause state and timestamp so that it'll sync the state with the client.
I hope this helps, and I look forward to seeing this addon mature!