Why it happens?
Some TVs strictly follow web security rules called CORS*.
The basic communication illustrated on the following request-response scheme:

If the response from "server with playlist" hasn't CORS headers the application can't get access of the playlist.
In this case app shows "Failed to load remote content".
Which TV models affected this?
Known examples: VEWD OS based, non-Android Sony, Philips, etc.
SS IPTV on LG, Samsung, Android TV is not affected this. (TV doesn't check CORS)
How to fix?
Add following header to HTTP response of the server with playlist:
Code: Select all
Access-Control-Allow-Origin: *
Repeats of the same headers is not allowed.
See more:
https://ss-iptv.com/en/operators/creating-playlist
Important
If you do not understand what it is about and how to use it, contact your content provider and provide it with this instruction.
Alternative?
Proxy
Requirements:
- Web Server (with php as example).
Example of the proxy in PHP (proxy.php):
Code: Select all
<?php
header("Access-Control-Allow-Origin: *");
if (isset($_GET['url'])) {
echo file_get_contents($_GET['url']);
}
else {
http_response_code(404);
}
For example, let's suppose that proxy.php is located by the address:
http://my.webserver.com/proxy.php
For example, your playlist URL is:
http://example.com/playlist.m3u
Do URL encoding** and put the result as hash parameter "proxy" of your playlist address:
http://example.com/playlist.m3u#proxy=http%3A%2F%2Fmy.server.com%2Fproxy.php
These steps eliminate "Fail to load remote content" issue.
Why sometimes playlist accessible and sometimes not?
When the app can't download playlist directly it asks to do that our app server.
But, even in this case we receive complaints that playlist can't be accessed.
Every our research shows that server with playlist is unavailable for our server, in other terms our server IP is banned from the content provider side manually or automatically.
If the content provider unban our IP it starts working again.
For technical proof, you can write to support@ss-iptv.com and share the link with the issue.
To fix the root cause of the issue and allows every TV direct access to the playlist:
Code: Select all
Access-Control-Allow-Origin: *
---
* - https://www.w3.org/TR/cors/
** How to do URL Encode:
1. https://meyerweb.com/eric/tools/dencoder/
2. Put your proxy server address.
3. Click "Encode" button.