I currently use Nimble Streamer http://nimblestreamer.com/ to stream. It has a security feature called WMSAUTH where as example, you have this URL for your live stream:
The modified URL would be:
To generate signature you need to modify your front-end source to include snippet like this one below written in PHP.
$today = gmdate("n/j/Y g:i:s A");
$initial_url = "http://stream.company.com:8081/vod/sample.mp4/playlist.m3u8";
$ip = $_SERVER['REMOTE_ADDR'];
$key = "defaultpassword"; //this is also set up in WMSPanel rule
$validminutes = 20;
$str2hash = $ip . $key . $today . $validminutes;
$md5raw = md5($str2hash, true);
$base64hash = base64_encode($md5raw);
$urlsignature = "server_time=" . $today ."&hash_value=" . $base64hash. "&validminutes=$validminutes";
$base64urlsignature = base64_encode($urlsignature);
$signedurlwithvalidinterval = "$initial_url?wmsAuthSign=$base64urlsignature";
Here, a key means a password which will be used later for setting up rule in control panel. The validminutes parameter means number of minutes while this signed link will be valid. This is done for the cases when people read the page and then start the playback with some delay.
Now I’ve noticed that on Android 6.1+ the streams do not play (keeps loading) if the WMSAUTH protection is active, but all below 6.1 do work. If I deactivate the protection it works for everybody.
On the new Samsung Galaxy S8 I get a black screen when I hit play. You can read more about WMSAUTH here http://blog.wmspanel.com/2013/11/nimble-streamer-protect-hotlinking-domain-lock.html
Is there anything you see here that could be the problem? I understand this might not be the correct place to ask about this.