HTML5 MP3 Player with Folder Feedburner Playlist

WordPress and Standalone HTML5 MP3 Music Player with Playlist for MP3 Folder / Feedburner XML compatible with iOS, Android and supports all browsers Firefox, Chrome, Safari, IE and Opera!

Read MP3 Folder URL

MP3 Folder Index
MP3 Folder Index

This plugin can read MP3 folder like and automatically create dynamic horizontal & vertical playlist

MP3 Folder with song’s index list (public) or (private)

Read Feedburner URL

This plugin can read feedburner url like and automatically create dynamic horizontal & vertical playlist


Folder: MP3 Songs folder or Feedburner XML
Prev / Loop / Next in playlist
Embed full playlist
Customize social link

Paid Features

Self hosted player files
Best support on email
Download songs option
MP3 Song’s information using ID3 Tags
Customize Social Share on Facebook & Twitter
Volume Control
Embed Code Option

Demo: Try sample MP3 Folder Playlist here

Wowza Live Cam Secure Expired Token

Wowza Live Cam Secure Expired Token
Wowza Live Cam Secure Expired Token

// Encrypt original stream URL http://wowza-server:port/stream/playlist.m3u8
$base64ized = encryptDecrypt($secret_key, $streamURL, 0);

// Decrypt stream URL
$streamURL = encryptDecrypt($secret_key, $base64ized, 1);


// Expire stream URL after time interval & check secure token
if (($current – $timestamp) <= $expired && ($checkhash == $hash)) { include("m3u8.php"); } m3u8.php

header(“content-type: application/”);
echo file_get_contents(“http://wowza-server:port/stream/playlist.m3u8”);

Install Airtime – open source radio automation software

Airtime is open source radio automation software (GPL v3) for GNU/Linux platforms. It’s recommend installing on Ubuntu Linux 12.04 LTS or Debian Squeeze on a computer with at least a 1 GHz processor and 512 MB of RAM for a Server Edition OS or 1GB of RAM for a Desktop Edition OS.

Download airtime-easy-setup

$ sudo wget
$ sudo apt-get install gdebi

$ sudo gdebi airtime-easy-setup.deb


Unpacking airtime-easy-setup (from airtime-easy-setup.deb) …
Setting up airtime-easy-setup (2.3.0-1) …
Installing Sourcefabric package signing key…
Setting up Airtime for Etc/UTC timezone…
Setting Icecast and Airtime domain names to ip-10-xxx-yy-74.ec2.internal…
Setting defaults for non-interactive installation…
Checking that the server has a UTF-8 locale…
en_US.UTF-8 is the default locale on this server and appears to support UTF-8 encoding.

Now please run the commands:

sudo apt-get update
sudo apt-get install airtime

After that, installation of Airtime should be complete in a couple of minutes.

You should then be able to log in to Airtime at http://ip-10-xxx-yy-74.ec2.internal/
Processing triggers for man-db …

Install Airtime

$ sudo apt-get update
$ sudo apt-get install airtime

*** Verifying your system environment, running airtime-check-system ***
AIRTIME_STATUS_URL = http://ip-10-xxx-yy-74.ec2.internal:80/api/status/format/json/api_key/%%api_key%%
KERNEL_VERSION = 3.5.0-21-generic
OS = Ubuntu 12.10 x86_64
CPU = Intel(R) Xeon(R) CPU E5430 @ 2.66GHz
WEB_SERVER = Apache/2.2.22 (Ubuntu)
— Your installation of Airtime looks OK!

******************************* Install Complete *******************************
Setting up liquidsoap-plugin-faad (1.0.1+repack1-1) …
Processing triggers for libc-bin …
ldconfig deferred processing now taking place



Best PHP Encryption Decryption

I was working on Secured & Expired MP3 Link in HTML5 MP3 Player. Hope you already read previous article “Amazon S3 Expiring Link”

You can use below code for hiding real mp3 link inside html source using base64_encode, mcrypt_encrypt, base64_decode, mcrypt_decrypt and md5.

This function is also useful when you need to secure & expire media links …

Remote Secure Token
Secure Token Plugin with PHP
JavaScript Encryption Library


function encryptDecrypt($key, $string, $decrypt)
        $string = str_replace("|", "/", $string);
        $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($string), MCRYPT_MODE_CBC, md5(md5($key))), "12");
        return $decrypted;
        $encrypted = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $string, MCRYPT_MODE_CBC, md5(md5($key))));        
        $stripping = true;
        while ($stripping){
         if(substr($encrypted, -1) == "="){
         $encrypted = substr($encrypted, 0, strlen($encrypted)-1);
        } else {
         $stripping = false;
        return str_replace("/", "|", $encrypted);

$echo = encryptDecrypt("123", "", 0);
echo $echo."<br>";
echo encryptDecrypt("123", $echo, 1);





Amazon S3 Expiring Link

I was working on Amazon S3 Cloud HTML5 MP3 Player for S3 Bucket security and Expiring Media links.

Amazon S3 Cloud HTML5 MP3 Player
Amazon S3 Cloud HTML5 MP3 Player

      * Calculate the HMAC SHA1 hash of a string.
      * @param string $key The key to hash against
      * @param string $data The data to hash
      * @param int $blocksize Optional blocksize
      * @return string HMAC SHA1
      function el_crypto_hmacSHA1($key,$data,$blocksize=64){

      * Create temporary URLs to your protected Amazon S3 files.
      * @param string $accessKey Your Amazon S3 access key
      * @param string $secretKey Your Amazon S3 secret key
      * @param string $bucket The bucket (
      * @param string $path The target file path
      * @param int $expires In minutes
      * @return string Temporary Amazon S3 URL
      * @see
      function el_s3_getTemporaryLink($accessKey,$secretKey,$bucket,$path,$expires=5){
          // Calculate expiry time
          // Fix the path; encode and sanitize
          // Path for signature starts with the bucket
          // S3 friendly string to sign
          // Calculate the hash
          $signature= el_crypto_hmacSHA1($secretKey,$signsz);
          // Glue the URL ...
          // ... to the query string ...
          // ... and return the URL!



$ExpiringLink = el_s3_getTemporaryLink(‘AWS-KEY’, ‘AWS-SECRET-KEY’, ‘BUCKET’, ‘FILENAME’, ‘EXPIRING-TIME’);

Demo Amazon S3 Cloud HTML5 MP3 Player


Kaltura Red5 iOS Live Streams Setup

We have a plugin that can be used for streaming kaltura live red5 rtmp to mobile devices.

Kaltura Red5 Live Plugin take below data to segment live video stream

– Red5 Live Video RTMP Stream Link
– Red5 Stream Name
– Publishing Folder
– Publishing Link

Configure Live Stream for Mobile on Kaltura Red5
Configure Live Stream for Mobile on Kaltura Red5

The Main feature of this plugin to show live RTMP streams using Adobe FMLE, on computers using the Kaltura Player and HTML5 player on mobile devices using M3U8 video iOS compatible format.

– Capture Red5 live kaltura stream for FFMpeg Segmentation
– Manage Segmented Clips in M3U8 format
– Stream iOS compatible video to iPhone / iPad in HTML5 Player
– Track Analytic / Stats for live stream in HTML5 Player
– Embed code for HTML5 Player
– Track process log

Live Stream for Mobile on Kaltura Red5
Live Stream for Mobile on Kaltura Red5
KMC - content - manage
KMC – content – manage

Process Log Live Stream for Mobile on Kaltura Red5

Process Log Live Stream for Mobile on Kaltura Red5
Process Log Live Stream for Mobile on Kaltura Red5

Embed Code Live Stream for Mobile on Kaltura Red5

Embed Live Stream for Mobile on Kaltura Red5
Embed Live Stream for Mobile on Kaltura Red5

Related Articles
* VOD to iOS
* Record Audio from Websites
* Red5 Media Server iOS Android Setup

Kaltura Live Red5 CAM RTMP to iOS (iPhone or iPad). Get more help for HTTP Live Video Stream Segmenter and Distributor Contact Us

RTMP (Red5) -> FFMpeg -> Segementer -> .ts files -> iOS (m3u8)

Swiffy converts Flash SWF files to HTML5

I was working on Video Ads system for a client. I need a solution that can display ads on devices like Android / iPhone / iPad where flash is not supported.

So, after few searches I got SWIFFY … this is really very good tool to convert Flash files to html5. I tried some flash files and output html5 is working awesome on all devices 😉

Swiffy converts Flash SWF files to HTML5, it allows to reuse Flash content on devices (iPhones, iPads and Androids) without a Flash player.

Swiffy 5.0 introduces experimental support for ActionScript 3.0.

Swiffy users can publish Flash files to HTML5 right from Adobe Flash Professional.

Google Swiffy Extension
Google Swiffy Extension

Swiffy converts a SWF file to an HTML5 page as a JSON object. The HTML5 page uses the Swiffy Runtime JavaScript library to render the animation using SVG. Compiled ActionScript code is also contained in the JSON file and executed as JavaScript in the browser.

Google Swiffy Features
Google Swiffy Features

Original Flash animation

Swiffy conversion

swiffyobject = JSON object returned from SWF File

var stage = new swiffy.Stage(document.getElementById(‘swiffycontainer’), swiffyobject);

Responsive One Page HTML5 Templates

I was searching one single page responsive HTML5 template for my product’s website. To sell your products you must have a introductory video and basic features on home page, that can help you to attract more customers..

You might include these items on home page…

– Top Navigation
– Introductory Video / Images
– Offer Price
– Featrues
– Technologies
– Payment Options
– Terms of Use
– Privacy
– Contact information

I have searched some templates .. hope you like below HTML5 themes 😉

Designed with the latest technologies and most advanced techniques, this one-page website loads lightning-fast!

The layout focus on usability, it offers enterprise-level features, design quality, technical implementation, compatibility, accessibility and performance.

Spark - Simple and effective
Spark – Simple and effective

Project Source bring Clarity and Efficiency to Your Content. It combines speed, usability and attractiveness.

Project Source – Lightning Speed
Project Source – Lightning Speed

Human is Responsive HTML5 theme, clean, simple theme, best suitable for company, personal or agency related websites. Please find bellow the main features of the theme.

Human Page
Human Page

Puree App Landing page if fully responsive, that means no matter what screen size your visitors are using your site will look and function great! The Puree App Template also comes touch enabled out of the box making the image slider and the rest of your site feel more native and freindly then ever on touch screen devices. The desktop has not been left out, Puree will also look good in pretty much every popular web browser on the internet!

Puree - Responsive App Landing Page Template
Puree – Responsive App Landing Page Template


LX Portfolio - Single Page Responsive Portfolio
LX Portfolio – Single Page Responsive Portfolio

SmartStart is a simple and clean but still professional template suitable for any business or portfolio, and it’s created by using the latest HTML5 and CSS3 techniques. With a responsive design it is easily usable with any device (Desktop, tablet, mobile phone), without removing any content!

Home - SmartStart
Home – SmartStart

Locus is a jQuery enhanced responsive HTML template with Filtered portfolio, One page news, three different skins and more.

Locus - Responsive One Page Template
Locus – Responsive One Page Template

Box Two, a responsive single page portfolio. Try using J and U buttons on your keyboard for quick scrolling.

Box Two - A Responsive One Page Theme
Box Two – A Responsive One Page Theme

Moloko is built with Twitter Bootstrap. It is Responsive, Sleek, intuitive, and powerful front-end framework for faster and easier web development.

Moloko By Josweb
Moloko By Josweb

Initializr is an HTML5 templates generator to help you getting started with a new project based on HTML5 Boilerplate. It generates for you a clean customizable template with just what you need to start!

Initializr - Start an HTML5 Boilerplate project in 15 seconds!
Initializr – Start an HTML5 Boilerplate project in 15 seconds!

Rythm is based on the Bootstrap CSS framework, which provides a future-proof foundation for the design and layout.

Rythm - Responsive One-Page Template
Rythm – Responsive One-Page Template

Artix, built with Twitter Bootstrap.

Artix By Josweb
Artix By Josweb

Aura is beautiful websites, elgant themes and stunning visual designs.

Aura v3.0 by Designova - Responsive Bootstrap HTML5
Aura v3.0 by Designova – Responsive Bootstrap HTML5

Aside360° is a responsive One-Page HTML5 template with grid system layout.

Aside360° - Responsive HTML5 One-Page Template
Aside360° – Responsive HTML5 One-Page Template

Amazon S3 Cloud HTML5 MP3 Player

Amazon S3 Cloud HTML5 Player plugin that allows you to link to your amazon S3 bucket and sets up a HTML5 Player playlist (horizontal or vertical). This plugin will support MP3 files only.

Amazon S3 Cloud HTML5 MP3 Player is not associated in any way to

Get Self Hosted Amazon S3 Cloud HTML5 MP3 Player for WordPress just in $24

You will need an amazon account to use this.

AWS access info

Add your amazon information amazon key and amazon secret key. Then just add the bucket to your account add folders.

Make sure you have public permission for all your music in your S3 buckets and folders.

Shortcode for Page or Post

[html5aws3mp3 player=”horizontal” bucket=”BUCKET” endpoint=”BUCKET-ENDPINT” folder=”FOLDER/”]

Plugin Page

Amazon S3 Error Handling

AWS CloudFront with PHP

Create sub buckets on amazon s3

Amazon S3 Cloud HTML5 MP3 Player is not associated in any way to

Adobe Flash ExternalInterface issues with Internet Explorer

I was working for HTML5 Audio.js Player… I really like calling ExternalInterface when using SWFObject on Windows XP IE 8. You can’t use an actionscript callback for a certain set of keywords (“play”, “stop”, “tags”, “item”, “length” etc.) will break in IE and cause a javascript error.

Object doesn’t support this property or method

public function audiojs():void {

this.playerInstance = root.loaderInfo.parameters.playerInstance+’.’;

ExternalInterface.addCallback(‘init’, init);
ExternalInterface.addCallback(‘load’, load);
ExternalInterface.addCallback(‘playPause’, playPause);
ExternalInterface.addCallback(‘pplay‘, play);
ExternalInterface.addCallback(‘ppause‘, pause);
ExternalInterface.addCallback(‘skipTo’, skipTo);
ExternalInterface.addCallback(‘setVolume’, setVolume);’loadStarted’);

IE doesn’t allow a method named play() to be exposed through ExternalInterface, so lets go with pplay().
Use ppause() for consistency with pplay(), even though it isn’t really required.

Avoid common names like play & pause when using ExternalInterface Call. 😉