iPlayer stopped working?

it also raises the question why, having trashed functionality for presumably quite a lot of people, they can't/don't just roll back whatever change caused it and we can all get back to it working like it used to
Humax iplayer users are a small minority of the total iplayer audience and the BBC are not going to hold back (what they see as) advances for the majority while waiting for Humax to get their act together, if they rolled back Humax would have no incentive to make changes. Whether they have sufficient incentive o change now is another matter and whether any changes would roll back to no longer supported machines like the T2 is even more unlikely.
 
Maybe, but as the Humax servers act as a conduit between the content provider and the audience, it might be something central rather than something local.
 
Maybe, but as the Humax servers act as a conduit between the content provider and the audience, it might be something central rather than something local.

I'm completely oblivious to the iplayer architecture, and which bits are actually run by the BBC/ISPs/box vendors etc. I do remember being quite surprised by some big change to iPlayer on the Humax (that must be years ago now) which changed it from being basic but pretty usable to looking slicker but becoming quite clunky/marginally usable... and thinking it implied there was a lot less of iPlayer hard-coded into the Humax and a lot more downloaded on demand than I'd previously assumed.

Is there a good explanation anywhere? (I do know enough about web development, internet protocols etc to make sense of anything technical).
 
Is there a good explanation anywhere?
Probably, but I'm not going looking. The big change you are talking about is when the iPlayer API went HTML5, and the HDR-FOX firmware had to be updated with new web browser software (based on Opera) to accommodate it.

Humax have implemented the TV Portal in such a way that their servers act as an intermediary. If the Humax servers are having a bad day, you can't start the TV Portal regardless of whether the actual services are available from the providers.

Go CF and use qtube!
 
...
Is there a good explanation anywhere? (I do know enough about web development, internet protocols etc to make sense of anything technical).
With the new-portal package installed, iPlayer is accessed at http://az341951.vo.msecnd.net/webapps/iplayer/default.htm. You can set your browser's user agent to match a Humax box Opera/9.80 (Linux 7405b0-smp; U; HbbTV/1.1.1 (; Humax; HD-FOX T2; 1.03.02; 1.0; ); ce-html/1.0; en) Presto/2.10.250 Version/11.60, enable JS for www.bbc.co.uk, files.bbci.co.uk and www.live.bbctvapps.co.uk, then see what happens when you navigate to the quoted url. In my browser I see the iPlayer home page for HDR (no links work, though you can navigate with the cursor keys and the Enter key == OK as if with the remote).

At this point you will have loaded quite a large number of JavaScript components together with CSS and JSON configuration, and your browser development tools may assist in investigating them:
Code:
GET http://www.bbc.co.uk/iplayer#tv/home [HTTP/1.1 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/style/base.css [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/core_appstart.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/style/css/540.min.css [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/device.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/mediaplayer/mediaplayer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/bigscreenplayer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/mockbigscreenplayer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/mediakinds.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/mediastate.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackspinner.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/windowtypes.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/broadcastsource/basetvsource.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/app/settings/continuousplay/autoplaysettingstypes.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/external/tv-module-stats/script/lib/echo.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/browserdevice.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/mediasources.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/version.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/storage/session.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playercomponent.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/pausetriggers.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/dynamicwindowutils.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/plugins.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/debugger/chronicle.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/debugger/debugtool.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/utils/timeutils.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/utils/playbackutils.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/plugindata.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/pluginenums.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/sanitiser.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/manifest/manifestloader.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/playbackstrategy.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/transferformats.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/livesupport.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/subtitles/captionscontainer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/nativestrategy.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/debugger/debugpresenter.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/debugger/debugview.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/manifest/manifestparser.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/utils/loadurl.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/subtitles/renderer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/models/transportcontrolposition.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/domhelpers.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/legacyplayeradapter.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/modifiers/html5.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/modifiers/live/playable.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/subtitles/transformer.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/allowedmediatransitions.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/liveglitchcurtain.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/playbackstrategy/modifiers/mediaplayerbase.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/bigscreenplayer/subtitles/timedtext.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/anim/noanim.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/mediaplayer/html5.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/mediaplayer/live/playable.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/data/nativejson.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/logging/default.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/logging/onscreen.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/storage/cookie.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/exit/history.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/parentalguidance/appdefaultpghandler.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/parentalguidance/basepghandler.js [HTTP/2.0 200 OK 0ms]
GET https://interactive-tv.files.bbci.co.uk/tap/16.28.2.0/minified/script/tal/devices/anim/shared/transitionendpoints.js [HTTP/2.0 200 OK 0ms]
GET https://mybbc-analytics.files.bbci.co.uk/analytics-remote-config/producers.json [HTTP/2.0 200 OK 39ms]
GET https://mybbc-analytics.files.bbci.co.uk/analytics-remote-config/masterbrands.json [HTTP/2.0 200 OK 41ms]
GET https://mybbc-analytics.files.bbci.co.uk/analytics-remote-config/producers.json [HTTP/2.0 200 OK 81ms]
GET https://mybbc-analytics.files.bbci.co.uk/analytics-remote-config/masterbrands.json [HTTP/2.0 200 OK 84ms]
SyntaxError: missing ; before statement[Learn More]  producers.json:2:10
SyntaxError: missing ; before statement[Learn More]  producers.json:2:10
SyntaxError: missing ; before statement[Learn More]  masterbrands.json:2:12
SyntaxError: missing ; before statement[Learn More]  masterbrands.json:2:12
GET https://a1.api.bbc.co.uk/hit.xiti [HTTP/2.0 200 OK 24ms]
GET https://a1.api.bbc.co.uk/hit.xiti [HTTP/2.0 200 OK 27ms]
GET https://a1.api.bbc.co.uk/hit.xiti [HTTP/2.0 200 OK 29ms]
OPTIONS XHR https://www.live.bbctvapps.co.uk/taf-private/mvt/iplayer/enable-features [HTTP/1.1 204 No Content 951ms]
POST XHR https://www.live.bbctvapps.co.uk/taf-private/mvt/iplayer/enable-features [HTTP/1.1 200 OK 763ms]
GET https://www.live.bbctvapps.co.uk/taf/iplayer/home/ssr [HTTP/1.1 200 OK 477ms]
GET https://a1.api.bbc.co.uk/hit.xiti [HTTP/2.0 200 OK 23ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/static/dist.js [HTTP/2.0 200 OK 19ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/logos/logo.540.png [HTTP/2.0 200 OK 29ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/icons/home/home-focus.540.png [HTTP/2.0 200 OK 26ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/icons/channels/channels-unfocus.540.png [HTTP/2.0 200 OK 26ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/icons/categories/categories-unfocus.540.png [HTTP/2.0 200 OK 27ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/icons/search/search-unfocus.540.png [HTTP/2.0 200 OK 69ms]
GET https://interactive-tv.files.bbci.co.uk/tv-module-asgard/6.8.0/assets/icons/settings/settings-unfocus.540.png [HTTP/2.0 200 OK 62ms]
GET https://ichef.bbci.co.uk/images/ic/288x162/p08sfpgf.jpg [HTTP/2.0 200 OK 34ms]
GET https://ichef.bbci.co.uk/images/ic/288x162/p08r6567.jpg [HTTP/2.0 200 OK 58ms]
GET https://ichef.bbci.co.uk/images/ic/288x162/p08ps82l.jpg [HTTP/2.0 200 OK 80ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/live-pulse-tag.iplayer.540.gif [HTTP/2.0 200 OK 62ms]
GET https://ichef.bbci.co.uk/images/ic/288x162/p08t8lhn.jpg [HTTP/2.0 200 OK 103ms]
GET https://ichef.bbci.co.uk/images/ic/288x162/p08sfk2q.jpg [HTTP/2.0 200 OK 117ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/images/divider-fade-light.base.540.png [HTTP/2.0 200 OK 59ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/recently-watched-silver.540.png [HTTP/2.0 200 OK 76ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/favourites-silver.540.png [HTTP/2.0 200 OK 76ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/search-silver.540.png [HTTP/2.0 200 OK 77ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfp59.jpg [HTTP/2.0 200 OK 138ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08s39ng.jpg [HTTP/2.0 200 OK 126ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08njr26.jpg [HTTP/2.0 200 OK 133ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08p0zgr.jpg [HTTP/2.0 200 OK 143ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08qfgkz.jpg [HTTP/2.0 200 OK 154ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08t2gqz.jpg [HTTP/2.0 200 OK 157ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08r6567.jpg [HTTP/2.0 200 OK 167ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfpgf.jpg [HTTP/2.0 200 OK 184ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfk2q.jpg [HTTP/2.0 200 OK 188ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08rrvlb.jpg [HTTP/2.0 200 OK 170ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08gpc17.jpg [HTTP/2.0 200 OK 181ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08qm4yj.jpg [HTTP/2.0 200 OK 199ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07k2wy7.jpg [HTTP/2.0 200 OK 168ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p06ltdcm.jpg [HTTP/2.0 200 OK 169ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07k2wc9.jpg [HTTP/2.0 200 OK 182ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfpw5.jpg [HTTP/2.0 200 OK 187ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08r1t57.jpg [HTTP/2.0 200 OK 189ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sjpc0.jpg [HTTP/2.0 200 OK 190ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfmny.jpg [HTTP/2.0 200 OK 201ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sfplt.jpg [HTTP/2.0 200 OK 203ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08b5xnf.jpg [HTTP/2.0 200 OK 205ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07r6l6x.jpg [HTTP/2.0 200 OK 220ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08lm0fp.jpg [HTTP/2.0 200 OK 223ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p085wf5w.jpg [HTTP/2.0 200 OK 226ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08qy6t6.jpg [HTTP/2.0 200 OK 229ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08r64h3.jpg [HTTP/2.0 200 OK 245ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08mtsy2.jpg [HTTP/2.0 200 OK 247ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08dslpk.jpg [HTTP/2.0 200 OK 250ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07l28yr.jpg [HTTP/2.0 200 OK 263ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sjpq7.jpg [HTTP/2.0 200 OK 331ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08sj0q8.jpg [HTTP/2.0 200 OK 345ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08t32ns.jpg [HTTP/2.0 200 OK 267ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07tcsbm.jpg [HTTP/2.0 200 OK 269ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p07jzp13.jpg [HTTP/2.0 200 OK 284ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08hrp4h.jpg [HTTP/2.0 200 OK 287ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08g4cv8.jpg [HTTP/2.0 200 OK 292ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08lq3x2.jpg [HTTP/2.0 200 OK 307ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08r65k8.jpg [HTTP/2.0 200 OK 309ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08qw7sc.jpg [HTTP/2.0 200 OK 342ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p0816f58.jpg [HTTP/2.0 200 OK 311ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p088s5ql.jpg [HTTP/2.0 200 OK 321ms]
GET https://ichef.bbci.co.uk/images/ic/203x114/p08qjxs7.jpg [HTTP/2.0 200 OK 327ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/channel-silver.540.png [HTTP/2.0 200 OK 52ms]
GET https://interactive-tv.files.bbci.co.uk/taf-service-clegane/6.0.0/assets/icons/category-silver.540.png [HTTP/2.0 200 OK 64ms]
OPTIONS XHR https://www.live.bbctvapps.co.uk/taf-private/mvt/iplayer/activate-features/home [HTTP/1.1 204 No Content 100ms]
POST XHR https://www.live.bbctvapps.co.uk/taf-private/mvt/iplayer/activate-features/home [HTTP/1.1 200 OK 66ms]
GET https://a1.api.bbc.co.uk/hit.xiti [HTTP/2.0 200 OK 29ms]
It seems clear from this that anything to do with iPlayer functionality controlled by Humax is in the platform as delivered from the retailer and/or CF developer, and not served by Humax, in line with what I suggested earlier (and those links may also be of interest).

With the standard Portal, I expect that some Humax server redirects the iPlayer link to something like the one quoted above, but that's all.
 
Last edited:
Is there a good explanation anywhere? (I do know enough about web development, internet protocols etc to make sense of anything technical).
With the new-portal package installed, iPlayer is accessed at http://az341951.vo.msecnd.net/webapps/iplayer/default.htm. You can set your browser's user agent to match a Humax box Opera/9.80 (Linux 7405b0-smp; U; HbbTV/1.1.1 (; Humax; HD-FOX T2; 1.03.02; 1.0; ); ce-html/1.0; en) Presto/2.10.250 Version/11.60, enable JS for www.bbc.co.uk, files.bbci.co.uk and www.live.bbctvapps.co.uk, then see what happens when you navigate to the quoted url. In my browser I see the iPlayer home page for HDR (no links work, though you can navigate with the cursor keys and the Enter key == OK as if with the remote).

At this point you will have loaded quite a large number of JavaScript components together with CSS and JSON configuration, and your browser development tools may assist in investigating them:
I don't think this qualifies as the non-technical explanation ! :eek:
 
Thanks. This is interesting... hadn't realized that big change was a major shift to HTML5/browser tech (what was it before? Flash? Native software?) Can see that move would make sense... but it would also explain how the performance fell off a cliff for a humble system.

The only not-obviously BBC thing there in those logs is that initial az341951.vo.msecnd.net URL. vo.msecnd.net seems to be some MS Azure content delivery thing, and googling mentions of that specific path mainly just turns up links to here (hummy.tv) so presumably that's where any Humax-supplied Humax-specific bit lives. I don't see anything else in the log which would seem to be it obviously talking to a "Humax server" though.

Taking a look at what's in http://az341951.vo.msecnd.net/webapps/iplayer/default.htm ... it's pretty short; an "iplayer launch page" copyright to "ANT Software"... and indeed googling them plus iplayer/Humax turns up multiple mentions of them doing work for Humax.

I have an idea another bit of the iPlayer ecosystem is CDN "edge" boxes out with the ISPs - seems to be confirmed by https://www.bbc.co.uk/blogs/internet/entries/4d747541-8ecf-48a7-b13e-b4ddf8ffa99e - but that's presumably all dealt with transparently by DNS wrangling (although what web development I have done over the years I've seen Squid caches cause enough trouble - often "temporary" until the cached content automagically updates - to take any claims of completely transparent caching with a grain of salt).
 
Last edited:
Thanks. This is interesting... hadn't realized that big change was a major shift to HTML5/browser tech (what was it before? Flash? Native software?) Can see that move would make sense... but it would also explain how the performance fell off a cliff for a humble system.
Personally, I don't find the actual streaming such an issue, though the UI of the player is pretty dire. My beef is the terrible navigation where everything tries to refresh as you move the "cursor", which would be just about acceptable with a pointing device but is rubbish when you have to use keys to navigate. Eg, to select Search, you have to left-arrow across the top line with each intervening "tab" being displayed as the selection changes.

The actual streaming is now done with DASH or similar. Once upon a time, when Flash was used, the BBC had to provide plain MP4 streams for iThing users, but now you need a tool like youtube-dl to reassemble the video and audio chunks and multiplex them into a suitable container.
...[good stuff that I agree with]...
I have an idea another bit of the iPlayer ecosystem is CDN "edge" boxes out with the ISPs - seems to be confirmed by https://www.bbc.co.uk/blogs/internet/entries/4d747541-8ecf-48a7-b13e-b4ddf8ffa99e - ...
The manifest that specifies the various available streams, so I hear, gives the CDN URL template for each stream. These are provided through services like Akamai.
 
My beef is the terrible navigation where everything tries to refresh as you move the "cursor", which would be just about acceptable with a pointing device but is rubbish when you have to use keys to navigate. Eg, to select Search, you have to left-arrow across the top line with each intervening "tab" being displayed as the selection changes.
Not only that, but I have to 'scroll down' to get past all the stupid dumbed down picture things that are of no interest, with the subsequent refresh, until I can get to where I want to be: the EPG right at the 'bottom'
 
Not only that, but I have to 'scroll down' to get past all the stupid dumbed down picture things that are of no interest, with the subsequent refresh, until I can get to where I want to be: the EPG right at the 'bottom'
Indeed, fancy image-rich interfaces are all very well when competing with other services for visual appeal, but they don't give any quarter to low-powered equipment or connections. There should always be a "low bandwidth, text only interface" option available!
 
The Apollo 13 rescue plan would have had a very different outcome if it had had to cope with the a modern resource-hungry computer interface.
 
If anyone cared enough it might be possible (in the other forum) to modify the way the iPlayer app works.

The Opera browser loads JS that you could provide for it from its ${OPERA_DIR}/userjs directory. When I used to use Opera on Windows, this facility was typically used to load per-site shims to fix browser-specific code created by hopeless web developers.

One could add a listener to run on loading the iPlayer page which would be able to modify behaviour in some way, perhaps by binding additional remote keys or wrapping a function. The default userjs directory is RO but changing the setting User Prefs>User JavaScript File in /var/lib/humaxtv/browser/opera.ini might allow it to be moved to a writeable location.
 
the UI of the player is pretty dire. My beef is the terrible navigation where everything tries to refresh as you move the "cursor", which would be just about acceptable with a pointing device but is rubbish when you have to use keys to navigate. Eg, to select Search, you have to left-arrow across the top line with each intervening "tab" being displayed as the selection changes.

Yes, that's another thing drives me nuts. The page I am usually trying to get to is the "search" one, mainly because it remembers what I've last searched for and watched... but also because tediously keying in a programme name there is actually less painful than trying to find it on the other pages. Having to wait for the intervening pages to download and render their full content before you can move on to the next one is irritating... however I recently discovered that if you click "right" really quickly you seem to be able to skip over them without them getting stuck into needing to fully render.

I see the BBC have at least updated their https://www.bbc.co.uk/iplayer/help/issues/bbc-iplayer/humax-playback-fault page with a "* Monday 5 October *" line. Text may have changed slightly from last week? Now says "unable to playback content from within BBC applications (including iPlayer, News and Sport), despite being able to open the apps"... think last week it just mentioned iPlayer, but if it is some problem with the streaming I can imagine other things accessing them would be affected similarly.
 
I see the BBC updated their page on the issue yesterday... and it now includes a link to https://uk.humaxdigital.com/humax-service-announcements/ which says

Issues with BBC iPlayer on all Humax devices
We have become aware of an issue affecting free to air customers with Humax set top boxes whereby they are unable to playback BBC iPlayer content, despite being able to open the app. We appreciate that this is frustrating and would like to apologise for the inconvenience. We are working hard to resolve this issue as soon as possible and restore Humax customers’ full viewing experience.​

Maybe they'll discover the root of the problem is that the system relies on a list of stream URLs being handed over via an Excel spreadsheet or something. Has Dido Harding been involved at any point?
 
The Queen of Carnage?

Testing the current iPlayer, which warns of the issue, whatever is broken appears to break streaming (code 02001) but also intermittently affects browsing (codes 01114, 01119, which the iPlayer help pages don't mention) as well.

Well, I think we can see what the problem is:
Code:
# openssl pkcs12 -in /usr/browser/opera_dir/certs/client/hdrfoxt2_20101001.p12 | openssl x509 -text -noout
WARNING: can't open config file: /usr/local/ssl/openssl.cnf
WARNING: can't open config file: /usr/local/ssl/openssl.cnf
Enter Import Password:
MAC verified OK
Enter PEM pass phrase:
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            85:6c:ad:6e:6e:c1:ae:94
        Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=KR, ST=KYUNG-GI, L=SUNG-NAM, O=HUMAX Co., CN=humaxdigital.com/emailAddress=info@humaxdigital.com
        Validity
            Not Before: Oct  1 07:40:49 2010 GMT
            Not After : Sep 28 07:40:49 2020 GMT
        Subject: C=KR, ST=KYUNG-GI, L=SUNG-NAM, O=HUMAX Co., CN=hdrfoxt2.humaxdigital.com/emailAddress=info@humaxdigital.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (1024 bit)
                Modulus:
                    00:c7:d6:eb:d6:2d:82:c9:d7:09:92:93:2c:cc:b0:
                    66:82:38:37:11:35:45:8e:23:e3:66:2f:ce:ea:16:
                    ee:e1:cf:bc:5a:fa:72:45:ce:7a:0c:5d:4d:67:f2:
                    ea:29:10:df:3a:9a:1f:9e:0b:da:14:1d:36:af:cd:
                    71:72:c7:57:6c:e2:75:f2:27:d8:91:1c:21:11:35:
                    50:ad:2a:7d:78:d9:79:32:66:fe:14:e5:d2:bb:8d:
                    fc:3b:02:fb:9a:e0:03:d8:da:e5:71:b1:12:b8:5b:
                    b4:18:62:ee:fd:d1:eb:f3:c7:08:e6:ea:16:1e:d5:
                    83:d3:e8:46:5e:9d:5e:48:c5
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Basic Constraints: 
                CA:FALSE
            Netscape Cert Type: 
                SSL Client
            Netscape Comment: 
                OpenSSL Generated Certificate
            X509v3 Subject Key Identifier: 
                18:DC:8A:DC:82:DD:C7:C7:FA:8D:45:CF:5D:42:0D:B7:EF:FC:B0:3C
            X509v3 Authority Key Identifier: 
                keyid:FA:D1:A9:71:6D:71:C4:4B:6D:C0:FC:CF:17:56:08:BC:76:D2:3A:4A
                DirName:/C=KR/ST=KYUNG-GI/L=SUNG-NAM/O=HUMAX Co./CN=humaxdigital.com/emailAddress=info@humaxdigital.com
                serial:AD:D7:D3:D8:F0:9C:E3:E4

    Signature Algorithm: sha1WithRSAEncryption
        97:5f:3a:07:4d:fd:71:5b:53:8e:81:76:f1:f8:7b:f2:97:f0:
        f2:24:fa:84:de:86:01:81:9a:25:23:fa:04:66:17:9e:e1:b7:
        84:42:b9:4f:5c:d9:07:bf:04:77:2b:5f:3e:08:3a:a2:e6:82:
        38:a0:61:5c:13:02:6a:58:d2:f9:e0:50:1f:30:fd:00:9f:af:
        b4:67:14:4c:63:d6:21:70:26:5e:4b:81:96:fa:6a:ec:29:ce:
        2e:f5:47:6c:b0:31:14:81:21:8d:8c:e7:0d:c1:09:2e:b2:5a:
        fb:e4:41:f6:65:f5:bd:29:c3:58:ca:36:8f:5d:0a:e3:2e:9b:
        a6:b4
humax#
Yes, that's the one: "Validity ... Not After : Sep 28 07:40:49 2020 GMT"!

So something that uses this certificate to prove that the device is a hdrfoxt2.humaxdigital.com/emailAddress=info@humaxdigital.com is complaining.

This puts the ball firmly not just in Humax's half but in their penalty area with the keeper stranded. To update this P12 certificate, stored in RO flash, Humax would have to distribute some updated firmware; or they may be able to find some way of updating the working certificate store that's held in /var/lib/humaxtv/browser/ (can't imagine how that could be robust, though).

There's also a HumaxTVPortal certificate, but that doesn't expire for 10 years. Let's all meet up in the year 2030 (Nov 4 PM).
 
Planned obsolescence!
No, some incompetent idiot at Humax just used the 'standard' 3650 days which is littered over all examples on the internet of how to do such things as setting up certificates etc., without thinking of the consequences. Now they've discovered them. I expect they won't care anyway, so nothing will fix this. Say goodbye to iPlayer on the T2. (I was wrong, on 2 counts. They did care, and issued a fix - see iplfix package. We also had /df's interim iplhack package.)
 
Last edited:
Back
Top