The Trials and Tribulations of Mobile Internet Radio

Most music lovers like to take their music with them and want to be able to stay tuned to their favourite internet radio station wherever they may be. Only a few years ago this would have been near impossible on internet radio.

We have produced two solutions that work on all resolutions from smart phones to smart TV’s and these will work on most devices although there are always some exceptions.

Both the CHAT https://pressureradio.com/mobilechat/ and the PLAYER https://pressureradio.com/player/ are close to app like experience especially on Android which supports PWA Progressive Web App you can SAVE TO DESKTOP and it will create an icon button on your smartphone so you can launch direct and it will go full screen (see text below)

Pressure Radio Mobile chat and player apps

If  the player or chat room  is not working on your device, update your browser or try a different browser, we recommend Chrome.

Progressive Web App (PWA)

On latest Android with chrome browser you may see a prompt pop-up saying:-
ADD TO HOMESCREEN
this creates an icon button on your smartphone desktop and gives you an app like experience (full screen and faster loading on next visit) On Next visit you will be asked if you want to open with “player” or chrome etc. Select “Player”

Pressure Chat Progressive Web App Add to Home Screen

Known Issues:-

  • Audio does not auto play on mobile devices, Reason: Mobile devices disallow auto start without human gesture
  • On Samsung galaxy native browser Audio cuts in and out or doesnt start. Workaround: make chrome browser your default browser, its more robust and better supported. (although we are trying to fix)
  • Audio Analyzer does not display or not sync with music on some devices and browsers: Reason: not supported on some Devices and browsers
  • Iphone: Volume slider does not operate, iphone does not allow, use phones hardware buttons to change volume
  • If no Audio after updating browser etc, try using tuneIN (link at the top of the main player page)

Trials and Tribulations (Why sometimes it doesn’t go to plan)

Technology has moved on but its moved in many directions. Microsoft Internet Explorer used to have about 90% share of the market, it wasn’t the best but its dominance did mean if you built a website that run on it then you knew 90% of people could see it just the way you intended.   We are now faced with a massive array of browsers and versions.

Then came the mobile smartphone explosion, there are now thousands of different types of smart devices that can be used to listen to internet radio.

Now each of those mobile devices could be running one of three main operating systems, IOS, Android and to a lesser extent Windows 10 and then each smartphone Manufacturer will have their own layered software or custom version of it.  Then we come back to browsers, the smartphone user can use one of hundreds of browsers available as an app or bundled with the device.

Every website will be running on one of these main servers Apache (linux based) Microsoft IIS, NGINX, or GWS (Google)

Websites use a basic language called HTML (Hypertext Markup Language) and more recently HTML5 which extends its capability and basically replaced the need for flash. But HTML rarely works alone and will run on a Database MSQL (linux) or Microsoft SQL

HTML is only markup not a full programming language so websites use languages such as PHP (Linux) ASP (Microsoft) then they will use java (installed on the users device) Javascript installed on the server plus many more…

There are some powerfully tools for creating rich media websites these days such as WordPress, whilst this is great at basic web pages and a few plugins  they are not the best for creating mobile apps or single pages.

Now we come to the streaming audio.  There are two main contenders Shoutcast and Icecast, if your doing things properly they will run on a separate server.  These use different technology and have a ICY header instead of HTTP which the World Wide Web is not always geared up for.  Still awake?

Our audio player is HTML5 based (front end) but uses both PHP to fetch stream info and JQuery (javascript Library) for the audio side the player has to run on HTML/ICY/JQuery/javascript/php/HTML5 its also fully SSL (Secure Socket Layer) HTTPS: instead of HTTP: so everything is piped to a secure encrypted pipe that can’t be intercepted or injected.  There are also multiple servers in play, so this is far more complex than a simple web page and with all the different devices, browsers and versions, so you see why it’s a tough job to make it run on everything!

Network Stream

When your viewing a normal website your browser will fetch information needed to display the page in one go and it will often cache (store) a lot of that info so if it needs it again it can grab it from the local device storage. So an interrupted or flaky network is not such as an issue.  When audio streaming, the device and browser need to continually download the stream, it will create a small buffer, but in general any network interruption (loss or weak signal) will result in loss of audio.  So a stream is more susceptible to network issues.

Do we test it?

Yes continually, I ask as many people as possible to test on all different devices, but for non techy people the feedback is not always the best, saying “it works”  or “it doesn’t work”  is not helpful. We need to know the Device, Firmware Version, the Browser type and Version, we need to know the exact symptoms ideally with a screen shot or very good explanation.  We need to know if the problem is all the time, some of the time, only when something else is running, do you have a strong internet connection, is it on Wifi or network…

If you got this far you might now appreciate the difficulties in bringing you a player that works on the move, on all devices and browsers and why we need your help and feedback. Please feedback any issues to admin @ pressureradio .com be as descriptive as possible with screenshots if you can.

Thanks
P