Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hulu live content stops working after several minutes #584

Closed
Apt-get-CupRamen opened this issue Oct 6, 2023 · 56 comments
Closed

Hulu live content stops working after several minutes #584

Apt-get-CupRamen opened this issue Oct 6, 2023 · 56 comments

Comments

@Apt-get-CupRamen
Copy link

kodi.log
This has been an issue for both Linux and Windows devices whenever I try the Hulu addon with Live TV content. Judging that the it gives "Failed: HTTP returned code 403" I assume it's a DRM issue?

@kcook98765
Copy link

I am also getting the same type errors for live Hulu content, getting the 403 error after aproximatly 5 minutes (tested multiple times on different channels) :

2023-10-11 23:04:01.907 T:24461 error : CCurlFile::CReadState::FillBuffer - (0x6a2d31e0) Failed: HTTP returned code 403
2023-10-11 23:04:01.909 T:24461 error : CCurlFile::Open - http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/initial/a2da138b-b686-4ec7-b008-f47c2babcef4/manifest.mpd?acquired_source_name=NBC_KING_SEA_MMA_CLT2-USW2&cdns=af&cluster=green&cver=0&duration=10800s&manifest_cdn=ak&origin=us-west-2&patch=true&query_params_v2=false&repeat=true&segment_type_enabled=false&stream_filter=fhd_high_stereo&uas_enabled=false&authToken=1697090640_1af222c63bc7cdd07bb365ff0e7ebeb1d0238ba827f82824097860ebb40abe54 Failed with code 403:

2023-10-11 23:04:01.909 T:24461 error : AddOnLog: inputstream.adaptive: CURLOpen returned an error, download failed: http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/initial/a2da138b-b686-4ec7-b008-f47c2babcef4/manifest.mpd?acquired_source_name=NBC_KING_SEA_MMA_CLT2-USW2&cdns=af&cluster=green&cver=0&duration=10800s&manifest_cdn=ak&origin=us-west-2&patch=true&query_params_v2=false&repeat=true&segment_type_enabled=false&stream_filter=fhd_high_stereo&uas_enabled=false&authToken=1697090640_1af222c63bc7cdd07bb365ff0e7ebeb1d0238ba827f82824097860ebb40abe54
2023-10-11 23:04:06.474 T:24461 error : CCurlFile::CReadState::FillBuffer - (0x6a2d5300) Failed: HTTP returned code 403
2023-10-11 23:04:06.475 T:24461 error : CCurlFile::Open - http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/initial/a2da138b-b686-4ec7-b008-f47c2babcef4/manifest.mpd?acquired_source_name=NBC_KING_SEA_MMA_CLT2-USW2&cdns=af&cluster=green&cver=0&duration=10800s&manifest_cdn=ak&origin=us-west-2&patch=true&query_params_v2=false&repeat=true&segment_type_enabled=false&stream_filter=fhd_high_stereo&uas_enabled=false&authToken=1697090640_1af222c63bc7cdd07bb365ff0e7ebeb1d0238ba827f82824097860ebb40abe54 Failed with code 403:
And repeated over and over until stopping the playback.

If it matters , the key parts of the log file are:

2023-10-11 18:19:09.308 T:4199 info : -----------------------------------------------------------------------
2023-10-11 18:19:09.308 T:4199 info : Starting Kodi (20.2 (20.2.0) Git:20230629-5f418d0b13). Platform: Android ARM 32-bit
2023-10-11 18:19:09.308 T:4199 info : Using Release Kodi x32
2023-10-11 18:19:09.308 T:4199 info : Kodi compiled 2023-06-29 by Clang 9.0.9 (https://android.googlesource.com/toolchain/llvm-project a2a1e703c0edb03ba29944e529ccbf457742737b) for Android ARM 32-bit API level 21 (API level 21)
2023-10-11 18:19:09.308 T:4199 info : Running on Amazon AFTMM with Android TV 7.1.2 API level 25, kernel: Linux ARM 32-bit version 4.4.120+
2023-10-11 18:19:09.310 T:4199 info : FFmpeg version/source: 4.4.1-Kodi
2023-10-11 18:19:09.310 T:4199 info : Host CPU: ARMv7 Processor rev 4 (v7l), 4 cores available
2023-10-11 18:19:09.310 T:4199 info : Product: mantis, Device: mantis, Board: mantis - Manufacturer: Amazon, Brand: Amazon, Model: AFTMM, Hardware: mt8695
.....
2023-10-11 18:19:09.803 T:4199 info : CAddonMgr::FindAddons: inputstream.adaptive v20.3.13 installed
2023-10-11 18:19:09.804 T:4199 info : CAddonMgr::FindAddons: inputstream.ffmpegdirect v20.5.0 installed
2023-10-11 18:19:09.805 T:4199 info : CAddonMgr::FindAddons: inputstream.rtmp v20.3.0 installed
2023-10-11 18:19:09.843 T:4199 info : CAddonMgr::FindAddons: plugin.program.iptv.merge v0.24.7 installed
2023-10-11 18:19:09.844 T:4199 info : CAddonMgr::FindAddons: pvr.iptvsimple v20.11.0 installed
2023-10-11 18:19:09.847 T:4199 info : CAddonMgr::FindAddons: repository.slyguy v0.0.8 installed
2023-10-11 18:19:09.856 T:4199 info : CAddonMgr::FindAddons: script.module.slyguy v0.74.0 installed
2023-10-11 18:19:09.863 T:4199 info : CAddonMgr::FindAddons: slyguy.dependencies v0.0.16 installed
2023-10-11 18:19:09.864 T:4199 info : CAddonMgr::FindAddons: slyguy.hulu v0.3.0 installed

@matthuisman
Copy link
Owner

matthuisman commented Oct 12, 2023 via email

@kcook98765
Copy link

I am running 20.2 currently, I guess Omega is 21 , This is a device I am testing on, so I suppose I can try getting Omega installed to see if it is an issue. It is on a FireTV Stick 4K , I'll hunt down an apk and try it out, thanks.

@matthuisman
Copy link
Owner

matthuisman commented Oct 12, 2023 via email

@gmjh123
Copy link

gmjh123 commented Oct 12, 2023

I'm using Omega 21 on Android and I've never been able to watch any live channels other than the local ones (CBS NBC etc) it doesn't bother me as I never watch live TV.

@kcook98765
Copy link

I upgraded to Omega, but still seems to be an issue, aproximatly 5 minutes into stream, get the 403 errors again.

Log file:
https://paste.kodi.tv/ekunenaqaw

Note, there is a "service.IPTVEncoderRedirect v0.0.102 installed" , it is my own Addon ( https://github.com/kcook98765/service.IPTVEncoderRedirect ) I am developing that utilizes your great addons to setup a middle man between kodi and an external DVR , whereby it can stream the video (using a video encoder) to the external DVR , but it only interacts with kodi via JsonRPC to "start" and "stop" playback.

The timeout issue occurs if I manually try to watch, or via my addon, after 5 minutes it stalls and the 403 errors begin.

This is a dedicated Kodi device, no local library, etc, so I can easily test changes on it to help address the issue.

@kcook98765
Copy link

kcook98765 commented Oct 12, 2023

And I should note, I have also tried same setup, but Nexus on a RPI 3B, and the stream does not stall.

EDIT: it did stall in same way. Also upgrade to Omega on Rpi 3B and again the same result, 5 minutes in.

@matthuisman
Copy link
Owner

matthuisman commented Oct 12, 2023 via email

@kcook98765
Copy link

in case it helps, here is another log, this time I enabled debug logging before starting stream, which closed again after apx 5 minutes:

https://paste.kodi.tv/okapemuzac

Thank you for looking into this.

@kcook98765
Copy link

I've been looking into this a bit more, and from my logs, it looks like this is probably related to xbmc/inputstream.adaptive#804 Where the manifest "Location" tag needs to be used, but I can see in Debug logs that it is not, as the urls are all "initial" ones, never see the "continue" ones.

I am going to try to work out a hack/fix in your proxy code to see if I can utilize the location url in the manifest to see if I can get past the 5 minute live tv duration issue for now, but looks like real fix needs to be done in inputstream.adaptive (and I don't have any C/C++ programming experience).

@kcook98765
Copy link

One additional note, I also set debug for inputstream.adaptive manifest files, and the very first one shows the "Location" data had been modified to include the proxy url , IE "http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/continue......." (though this was not used in the actual request the next time). but after that one, the rest of the manifests did not show this change to "Location", as they were all "/v1/live/dash/continue/..........". Just noting as it seemed odd to see the first one updated like that (but not utilized) and then to not see changes in the later ones).

@kcook98765
Copy link

in ref to my last debug file posted above ( https://paste.kodi.tv/okapemuzac ) :

At 2023-10-13 12:07:40.867 T:7338 (condensed details):

script.module.slyguy/resources/lib/proxy.py, line 395, in _quality_select
return qualities[self._session['selected_quality']]

IndexError: list index out of range

When I temporarily fixed this to double check and return None, live TV then failed within a couple minutes (instead of 5 minutes).

This is because of fixing this error, in turn, it tried to allow this manifest, but it had no "Representation elements" in it. (which is why the error is seen in the first place originally)

I'm still trying to get up to speed on how DASH works and how inputstream.adaptive is supposed to work, etc, but somewhere in this flow, the only reason the stream lasts 5 minutes is because the first manifest has that much data in it.

And since the request for the next manifest happens but fails due to error, it happily keeps going until original manifest is exhausted.

So I do not know if the second manifest is being requested too soon (does seem like it starts to fill in after first attempt), or something else is going on.

@stnufc
Copy link

stnufc commented Oct 21, 2023

So for now its not fixable? Its inputstream adaptive problem or no? Have same issue, happens only after 5 mins of playing live tv channels.

@kcook98765
Copy link

@matthuisman

I can gladly help with logs/testing and even supply login credentials for testing if you need them.

@kcook98765
Copy link

kcook98765 commented Oct 24, 2023

The issue is somehow tied to "Location" element of the manifests.

The initial manifest (as seen in the debug manifests files generated by inputstream.adaptive) shows:

http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/initial/531124fc-2566-4206-b155-1b4f216e9ec8/manifest.mpd?acquired_source_name=ABC_KOMO_SEA_MMA_CLT2-USW2&cdns=af&cluster=green&cver=0&duration=10800s&manifest_cdn=ak&origin=us-west-2&patch=true&query_params_v2=false&repeat=true&segment_type_enabled=false&stream_filter=fhd_high_surround&uas_enabled=false&authToken=1698191335_d88e97e86147866578d038e1caf8f033febc46a4504309c12907e7d4c3421cb2

And includes "Location" :

<Location>http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/continue/531124fc-2566-4206-b155-1b4f216e9ec8/manifest.mpd?cdns=af&amp;cluster=green&amp;origin=us-west-2&amp;duration=10800s&amp;manifest_cdn=ak&amp;repeat=true&amp;patch=true&amp;hpbsid_enabled=false&amp;uas_enabled=false&amp;segment_type_enabled=false&amp;query_params_v2=false&amp;unencrypted=false&amp;cver=0&amp;acquired_source_name=ABC_KOMO_SEA_MMA_CLT2-USW2&amp;stream_filter=fhd_high_surround&amp;prev_start=1698191022074&amp;prev_boundary_start=1697130402514&amp;prev_pts_values=AAC_1_CMAF_CENC_CTR%3D51881341952%7CEC3_1_CMAF_CENC_CTR%3D51881341991%7CH264_1_CMAF_CENC_CTR%3D64851676890&amp;authToken=1698191635_9b5429687009640ada2965b2e6c1aa8c0b4a10e2c31072cabd73024108771ecb</Location>

And the it looks like Location is followed, as the next manifest has:

http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/continue/531124fc-2566-4206-b155-1b4f216e9ec8/manifest.mpd?cdns=af&cluster=green&origin=us-west-2&duration=10800s&manifest_cdn=ak&repeat=true&patch=true&hpbsid_enabled=false&uas_enabled=false&segment_type_enabled=false&query_params_v2=false&unencrypted=false&cver=0&acquired_source_name=ABC_KOMO_SEA_MMA_CLT2-USW2&stream_filter=fhd_high_surround&prev_start=1698191022074&prev_boundary_start=1697130402514&prev_pts_values=AAC_1_CMAF_CENC_CTR%3D51881341952%7CEC3_1_CMAF_CENC_CTR%3D51881341991%7CH264_1_CMAF_CENC_CTR%3D64851676890&authToken=1698191635_9b5429687009640ada2965b2e6c1aa8c0b4a10e2c31072cabd73024108771ecb

<MPD><Period><AdaptationSet id="1" contentType="video" mimeType="video/mp4"><SegmentTemplate initialization="http://127.0.0.1:52103/error.m3u8" media="http://127.0.0.1:52103/" startNumber="1"><SegmentTimeline><S d="540000" r="1" t="263007000000"/></SegmentTimeline></SegmentTemplate><Representation bandwidth="300000" codecs="avc1.42001e" frameRate="25" height="224" id="videosd-400x224" sar="224:225" scanType="progressive" width="400"></Representation></AdaptationSet></Period></MPD>

note it shows :

<SegmentTemplate initialization="http://127.0.0.1:52103/error.m3u8" media="http://127.0.0.1:52103/" startNumber="1">

(maybe a clue here).

And apparently after that inputstream.adaptive is always calling the original "initial" manifest, though authToken is updated :

http://127.0.0.1:52103/https://livem-akc-na.media.hulustream.com/v1/live/dash/initial/531124fc-2566-4206-b155-1b4f216e9ec8/manifest.mpd?acquired_source_name=ABC_KOMO_SEA_MMA_CLT2-USW2&cdns=af&cluster=green&cver=0&duration=10800s&manifest_cdn=ak&origin=us-west-2&patch=true&query_params_v2=false&repeat=true&segment_type_enabled=false&stream_filter=fhd_high_surround&uas_enabled=false&authToken=1698191335_d88e97e86147866578d038e1caf8f033febc46a4504309c12907e7d4c3421cb2

but Location is relative:

<Location>/v1/live/dash/continue/531124fc-2566-4206-b155-1b4f216e9ec8/manifest.mpd?cdns=af&amp;cluster=green&amp;origin=us-west-2&amp;duration=10800s&amp;manifest_cdn=ak&amp;repeat=true&amp;patch=true&amp;hpbsid_enabled=false&amp;uas_enabled=false&amp;segment_type_enabled=false&amp;query_params_v2=false&amp;unencrypted=false&amp;cver=0&amp;acquired_source_name=ABC_KOMO_SEA_MMA_CLT2-USW2&amp;stream_filter=fhd_high_surround&amp;prev_start=1698191027079&amp;prev_boundary_start=1697130402514&amp;prev_pts_values=AAC_1_CMAF_CENC_CTR%3D51881582592%7CEC3_1_CMAF_CENC_CTR%3D51881583143%7CH264_1_CMAF_CENC_CTR%3D64851977190&amp;authToken=1698191643_4d7e420d212d3db2a035ff47708014295219e45b931fd071a87aaf6b2ea75b7b</Location>

so it never tries any Location (correctly setup or not) again after the first failed one, and plays out until 5 minutes later when it halts with the 403.

Should'nt the "Location" urls process and be the ones used after the "Initial" one?

@matthuisman
Copy link
Owner

but then IA eventually tries to call the initial manifest i've found

@kcook98765
Copy link

The initial manifest includes the "Location"and it is followed (though maybe not processed correctly?), but then when it requests the next "initial" manifest, there is a "Location", but it is a relative URL ... maybe this is the issue?

@matthuisman
Copy link
Owner

also try with my proxy turned off. i think it fails a lot quicker then for some reason. that could be a clue with thats wrong with IA

@kcook98765
Copy link

With Slyproxy shut off, the same 5 minutes of live, then fails.

But, even though the manifests include "Location" (though relative, not absolute), there is never a manifest from these "Continue" urls logged by IA, like it is skipping them?

With Slyguyproxy enabled, the first issue is the error in your proxy code (see above "IndexError: list index out of range"), which in turn sends IA a bad response, which IA then in turn never uses the Location again.

I followed the code, and your proxy is trying to determine qualities in the update manifest data, but maybe it should not even be doing this with these update manifests, and just updating the Location url (and any other required changes) for the update manifests?

@kcook98765
Copy link

  1. Watching hulu live in windows browser, first Manifest includes these in url (ignoring the rest that match and authToken):

/v1/live/dash/initial/xxxxx/manifest.mpd?
&cdns=af%2Csf
&segment_type_enabled=true
&stream_filter=hd_high_stereo

  1. Watching via Kodi, reviewing IA Manifest details of the calling url :

/v1/live/dash/initial/xxxxx/manifest.mpd?
&cdns=sf
&segment_type_enabled=false
&stream_filter=fhd_high_stereo

Could the "cdns" values difference or the "segment_type_enabled" flag play into this issue?

@kcook98765
Copy link

Also, when watching via Windows browser, the update manifests always seem to have segment data, but kodi IA update manifests mostly don't.

@kcook98765
Copy link

With latest comment on above IA #1407 , Partial Manifest updates are not currently supported, which means Live Hulu is not possible at this time unless a hack is added (if possible) to modify the partial updates to full updates (IE keep history of initial Manifest and somehow update it within the Proxy to become a completely updated manifest, though not sure how complex this would be, as I already tried just keeping the "Representation" data from the first one and adding it to the Update ones, which did not work (insertions of data were correct, but stream stalled anyway), so likely need to also manipulate/add additional data from first Manifest).

@kcook98765
Copy link

Progress is being made. As noted in xbmc/inputstream.adaptive#1407 I now have a change that mostly works (mostly because there is an odd Kodi timeline issue, where stream tries to start nearend of 3 hour mark, but rewind and it plays fine).

Tried multiple channels and all played past 5 minute mark, so the update manifests are processing and working.

@kcook98765
Copy link

I really think I have it working this time.

https://github.com/kcook98765/slyguy.addons/commits/master/script.module.slyguy/resources/lib/proxy.py

The changes made here now seem to populate the sparse hulu manifest update files with data from the initial (or added elements should they appear in an update).

I can now play from the live edge of the stream forward (and can rewind a coupe hours via the initial manifest entries). This is working on multiple channels, some with multiple periods.

There is some oddities in the kodi timeline display, so I might need to tweak something to fix that, but this does seem to allow partial hulu updates to at least process and play now.

Thanks for all your help, and I'll submit a PR to Matt to see if he will integrate this to allow Hulu Live to once again work.

Have a great weekend all!

@kcook98765
Copy link

I have submitted a PR and am continuing to test, but so far it seems to be working.

PR is #625

Will be testing over the weekend to verify if any issues creep up.

@stnufc
Copy link

stnufc commented Nov 25, 2023

Thanks so much for your work with this fix, kcook98765!

Can you explain in any quick way (without you wasting much time on me) to a noob, how to update/patch this thing? I tried to put proxy.py file into /resources/lib/ folder, but it didnt worked, stream stops even earlier, even with rewinding. Or should I just wait for whole update?

Also some files I didnt even had in my /lib/ folder... And I think I'm up to date with addon itself, 0.30. I'm on Kodi 21.0, build from June.

@kcook98765
Copy link

@stnufc ,

My testing via Firestick was hit and miss, unsure why yet, as there was no log entry, but it seemed kodi would occasionally crash on Firestick.

Windows still seems solid. I may have to debug some more.

It sounds like maybe your install is not right, or you are not in right directory.

The path for the proxy.py file should end something like (in my windows machine) :

\Kodi\addons\script.module.slyguy\resources\lib

And you should see the other files there, as seen:

https://github.com/kcook98765/slyguy.addons/tree/master/script.module.slyguy/resources/lib

The proxy.py file above from my fork is the one to use.

If still have issue, try turning on debug level logging in kodi, restart kodi and navigate to replicate the issue, then upload log file.

@kcook98765
Copy link

@stnufc ,

One more note, make sure you have settings for hulu Live channels to "Play from Live" (not "From start") as there maybe issues trying to play near the beginning (3 hours ago) data, as I have not yet worked out how to prune old segments, so playing from Beginning, or rewinding too far may cause an issues for now).

@kcook98765
Copy link

@gmjh123 ,

I have not personally seen audio dropouts like you noted for VOD (not live) content. Though I do not often use VOD Hulu via Kodi.

you'd probably have better luck if you post to Kodi forums and supply a log file, as it may have some details to help figure out the issue.

@gmjh123
Copy link

gmjh123 commented Nov 28, 2023

Ok thanks. I did give a log file to Matt but he didn't respond so I presume there were either no errors or errors he couldn't do anything about. Sorry for the interruption 😊

@matthuisman
Copy link
Owner

matthuisman commented Nov 28, 2023

any playback stuff i pretty much put at bottom of my pile. it really needs to be Inputsream Adaptive fixing these things.
But there is only 2 of them and 1 is pretty busy lately.
Also, there is quite heavy development and some things break that used to work etc.

I also dont have the time to try reproduce these bugs and then get all the files inputstream adaptive requires to open issues there

@gmjh123
Copy link

gmjh123 commented Nov 28, 2023 via email

@matthuisman
Copy link
Owner

yes, its very important but its basically out-of-my-hands which is frustrating.
If we could get more devs working on inputstream adaptive - that would be great :)

@kcook98765
Copy link

I modified code to use less xml DOM calls by using a dictionary in python to maintain needed Manifest data. It seems quicker to process updates now, and so far, it has not crashed Fire TV Stick device.
Current code is at :

https://github.com/kcook98765/slyguy.addons/blob/master/script.module.slyguy/resources/lib/proxy.py

I even tested a stream that had many (5+) Periods, and let it run long enough that it produced a new Period, which incorporated as expected in the modified Manifest data :-)

I may still want to revisit to see about pruning outdated segments and Periods, but for now the extras do not seem to cause any issue as I expect IA is limiting access to older segments/periods based on it's own logic.

I am testing multiple channels tonight to see how it holds up.

@matthuisman
Copy link
Owner

yes, my parsing is verry in-effeceint. it uses the dom a lot and repeats a bunch of loopings.
I was aware of this but as it was "do once" at the start - didn't really matter.
But doing it for every manifest coming in makes it more important to speed it up

@matthuisman
Copy link
Owner

but just to check - IA will be fixing this at some point? these changes should only be temporary?

@kcook98765
Copy link

kcook98765 commented Nov 29, 2023

I just posted a request for this at IA

xbmc/inputstream.adaptive#1426

They had mentioned previously it could be done, so I closed the original issue I had (following relative urls) and opened up this official request to see if they

@matthuisman
Copy link
Owner

thank you :)

I think the issue of relative urls in location still doesnt work in IA right?

@kcook98765
Copy link

actually I believe they did implement a fix for that, but of course in Hulu case while it did call the relative url (when not using your proxy), it got the small Patch manifest which IA currently can not handle.

@kcook98765
Copy link

closed prev PR and opened a new one with updated code that is working quite well for me now.

I can watch any stream now , from the live edge without issues for couple of hours.

This work around would only need to be in place until IA makes changes to handle these special "patch" manifests that Hulu uses.

If anyone wants to test this PR I'd love some feedback on how it performs, and any issues that may occur.

#633

@gmjh123
Copy link

gmjh123 commented Dec 1, 2023 via email

@kcook98765
Copy link

I might get corrected here, but I don't think this addon gets around much of anything (though there is a lat/long entry, I don't use it myself).

I only use this from home, so I can't really comment on anything else related to "Away" from home.

@gmjh123
Copy link

gmjh123 commented Dec 1, 2023 via email

@ZaphodBeeblebrox24
Copy link

Replaced proxy.py from script.module.slyguy but still getting freezes trying to watch non-live content on Hulu. Any other things to try?

@kcook98765
Copy link

See:
#633 (comment)

Patch won't work with newer changes in this addon.

@kcook98765
Copy link

I have modified patch so it "should" work with the newer changes, see:

#714

@ZaphodBeeblebrox24
Copy link

Replaced proxy.py with the latest, still no dice:

2024-04-12 13:14:42.735 T:3987 info : script.module.slyguy - Python Version: 3.11.9 (main, Apr 9 2024, 09:48:27) [GCC 13.2.0]
2024-04-12 13:14:42.762 T:3987 info : script.module.slyguy - Proxy Started: http://127.0.0.1:58959/
2024-04-12 13:14:42.764 T:3987 info : script.module.slyguy - Widevine Level (fallback): 3
2024-04-12 13:14:42.764 T:3987 info : script.module.slyguy - HDCP Level (fallback): 0.0
2024-04-12 13:14:45.138 T:3929 info : Loading skin file: MyVideoNav.xml, load type: KEEP_IN_MEMORY
2024-04-12 13:14:59.933 T:4089 info : slyguy.hulu - Widevine - System: Linux | Arch: armv7
2024-04-12 13:15:00.033 T:4089 info : slyguy.hulu - Widevine Current MD5: 9aff9fa1f4d1b97532a6f5c8ef2cc914
2024-04-12 13:15:00.136 T:3929 info : VideoPlayer::OpenFile: plugin://slyguy.hulu/?_=play&_play=1&id=EAB%3A%3Ad641cafe-0c2a-482c-976a-dbe1adbbe3f4%3A%3A50034155%3A%3A22854999&profile_id=188877992
2024-04-12 13:15:00.140 T:4122 info : Creating InputStream
2024-04-12 13:15:00.190 T:4122 warning : AddOnLog: inputstream.adaptive: Warning "inputstream.adaptive.manifest_type" property is deprecated and will be removed next Kodi version, the manifest type is now automatically detected.
If you are using a proxy remember to add the appropriate "content-type" header to the HTTP manifest response
See Wiki page "How to provide custom manifest/license" to learn more about it.
2024-04-12 13:15:00.192 T:4122 info : AddOnLog: inputstream.adaptive: [Repr. chooser] Resolution set: 1920x1080, max allowed: 1920x1080, Adjust refresh rate: 1
2024-04-12 13:15:00.563 T:4122 info : AddOnLog: inputstream.adaptive: Manifest successfully parsed (Periods: 3, Streams in first period: 3, Type: VOD)
2024-04-12 13:15:00.564 T:4122 info : Creating Demuxer
2024-04-12 13:15:00.565 T:4122 info : Opening stream: 1001 source: 256
2024-04-12 13:15:00.828 T:4122 info : Creating video codec with codec id: 173
2024-04-12 13:15:00.829 T:4122 info : CBitstreamConverter::Open bitstream to annexb init
2024-04-12 13:15:00.833 T:4122 info : DVDVideoCodecAmlogic: Opened Amlogic Codec
2024-04-12 13:15:00.833 T:4122 info : Creating video thread
2024-04-12 13:15:00.833 T:4128 info : running thread: video_thread
2024-04-12 13:15:00.833 T:4122 info : Opening stream: 1002 source: 256
2024-04-12 13:15:00.964 T:4122 info : Finding audio codec for: 86056
2024-04-12 13:15:00.965 T:4122 info : CDVDAudioCodecFFmpeg::Open() Successful opened audio decoder eac3
2024-04-12 13:15:00.965 T:4122 info : OpenStream: Allowing max Out-Of-Sync Value of 10 ms
2024-04-12 13:15:00.965 T:4122 info : Creating audio thread
2024-04-12 13:15:00.966 T:4132 info : running thread: CVideoPlayerAudio::Process()
2024-04-12 13:15:01.459 T:4128 info : DVDVideoCodecAmlogic::AddData Open decoder: fps:24000/1001
2024-04-12 13:15:01.477 T:4132 info : Creating audio stream (codec id: 86056, channels: 2, sample rate: 48000, no pass-through)
2024-04-12 13:15:01.482 T:3960 info : CActiveAESink::OpenSink - initialize sink
2024-04-12 13:15:01.520 T:3929 info : Constructing CRendererAML
2024-04-12 13:15:01.522 T:3929 info : CAMLCodec::Enable_vadj1 - vadj1 brightness/contrast control got enabled
2024-04-12 13:15:01.536 T:4122 info : Opening stream: 2001 source: 256
2024-04-12 13:15:01.641 T:4122 info : Creating video codec with codec id: 173
2024-04-12 13:15:01.641 T:4122 info : CBitstreamConverter::Open bitstream to annexb init
2024-04-12 13:15:01.641 T:4122 info : DVDVideoCodecAmlogic: Opened Amlogic Codec
2024-04-12 13:15:01.641 T:4122 info : Opening stream: 2002 source: 256
2024-04-12 13:15:01.684 T:3960 info : CAESinkALSA::Initialize - Configure simple control for "AUGESOUND"
2024-04-12 13:15:01.685 T:3960 info : CAESinkALSA - Use card "hw:0" and set codec format "2 CH PCM"
2024-04-12 13:15:01.687 T:3960 info : CAESinkALSA - Set Spdif to HDMITX to "Spdif"
2024-04-12 13:15:01.687 T:3960 info : CAESinkALSA - Set codec for "Audio spdif_b format"
2024-04-12 13:15:01.687 T:3960 info : CAESinkALSA - Set codec for "Audio spdif format"
2024-04-12 13:15:01.687 T:3960 info : CAESinkALSA::Initialize - Attempting to open device "surround71:CARD=AMLAUGESOUND,DEV=0"
2024-04-12 13:15:01.697 T:3960 info : CAESinkALSA::Initialize - Opened device "surround71:CARD=AMLAUGESOUND,DEV=0"
2024-04-12 13:15:01.698 T:3960 info : CAESinkALSA::InitializeHW - Your hardware does not support AE_FMT_FLOAT, trying other formats
2024-04-12 13:15:01.698 T:3960 info : CAESinkALSA::InitializeHW - Using data format AE_FMT_S24NE4
2024-04-12 13:15:01.764 T:4122 info : Finding audio codec for: 86056
2024-04-12 13:15:01.764 T:4122 info : CDVDAudioCodecFFmpeg::Open() Successful opened audio decoder eac3
2024-04-12 13:15:01.779 T:3929 info : Loading skin file: VideoFullScreen.xml, load type: KEEP_IN_MEMORY
2024-04-12 13:15:01.781 T:3929 info : [WHITELIST] Searching the whitelist for: width: 1920, height: 1080, fps: 23.976, 3D: false
2024-04-12 13:15:01.782 T:3929 info : Display resolution ADJUST : 1920x1080 @ 23.98 - Full Screen (16) (weight: 0.000)
2024-04-12 13:15:01.782 T:3929 info : GLES: Maximum texture width: 8192
2024-04-12 13:15:02.600 T:3929 info : Loading skin file: DialogFullScreenInfo.xml, load type: KEEP_IN_MEMORY
2024-04-12 13:15:03.537 T:4714 info : script.module.slyguy - WV License response OK and returned data
2024-04-12 13:15:06.082 T:4132 info : Skipped 2 duplicate messages..
2024-04-12 13:15:06.082 T:4132 info : OpenStream: Allowing max Out-Of-Sync Value of 63 ms
2024-04-12 13:15:06.324 T:4122 info : Opening stream: 3001 source: 256
2024-04-12 13:15:06.332 T:4128 info : DVDVideoCodecAmlogic::AddData Open decoder: fps:24000/1001
2024-04-12 13:15:06.460 T:4122 info : Creating video codec with codec id: 173
2024-04-12 13:15:11.367 T:4014 info : PVR Manager: Starting cleanup of cached images.
2024-04-12 13:15:11.787 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5006ms (11:Resource temporarily unavailable)
2024-04-12 13:15:11.847 T:4014 info : PVR Manager: Cleaned up 0 cached images.
2024-04-12 13:15:15.322 T:3929 info : CVideoPlayer::CloseFile()
2024-04-12 13:15:15.322 T:3929 info : VideoPlayer: waiting for threads to exit
2024-04-12 13:15:16.838 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5050ms (11:Resource temporarily unavailable)
2024-04-12 13:15:21.846 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5008ms (11:Resource temporarily unavailable)
2024-04-12 13:15:31.865 T:4128 info : Skipped 1 duplicate messages..
2024-04-12 13:15:31.865 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5009ms (11:Resource temporarily unavailable)
2024-04-12 13:15:36.877 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5012ms (11:Resource temporarily unavailable)
2024-04-12 13:15:41.889 T:4128 error : CAMLCodec::GetPicture: time elapsed since last frame: 5011ms (11:Resource temporarily unavailable)

@kcook98765
Copy link

That log snippet does not show details needed to verify the issue. I ca not tell if there was an issue in this patch code, the main addon code or some network/server issue.

Would need full logs with debug enabled.

@ZaphodBeeblebrox24
Copy link

Reproduced with debug logs, logs at

https://paste.coreelec.org/jLEsEk

@kcook98765
Copy link

Not seeing any live media being played (thus this patch does not attempt to do anything). I re-read previous note and you mentioned non-live ... if it is a non-live show you are trying, then this patch does not apply and there is something else going on.

You do not need this patch unless you are trying to watch Live channels. It should not cause any issues for non-live, but I would revert to original addon code, run in debug and post a new issue for Matt to look into, as it must be a deeper issues somewhere, not related to live streams (or this patch).

@ZaphodBeeblebrox24
Copy link

Yep, definitely not live streams. I would guess anyone on Omega using the Hulu plugin for non-live will see the issue

@ZaphodBeeblebrox24
Copy link

proxy.py reverted and issue reproduced with debug logging

https://paste.coreelec.org/Dh8F1I

@kcook98765
Copy link

@ZaphodBeeblebrox24

You will want to start (or find similar for VOD issues) a new issue at https://github.com/matthuisman/slyguy.addons/issues

As I do not work on this addon , just trying to work on a patch specific to Hulu Live TV streaming.

You should be able to use the same log file as I believe it has what Matt needs to look into it.

@ZaphodBeeblebrox24
Copy link

I tried but it was closed and referenced here

#713

@matthuisman
Copy link
Owner

suspect this has been fixed with some IA updates since

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants