Wink Streaming - Main PageDiscover our ServicesAbout Us

Wink Player

Features of Wink Player

Here are some of the features of Wink Player:

  • Plays all supported fomats of Flash Player, including mp3 files over HTTP.
  • Stream audio or video over HTTP, HTTPS, RTMP, RTMPS and RTMPE
  • Small footprint - the player is only 19KB in size.
  • Supports Fullscreen mode.
  • Supports latest H.264 AVC and AAC codecs.
  • Player remembers users audio prefrence.
  • Simple XML configuration.
  • Supports any size video and resizes video automatically.
  • Mixed mode playlist - you can mix both video and audio formats into one playlist.
  • Displays ID3 Tags from MP3 files both over RTMP and HTTP.
  • Debug mode allows you to easily troubleshoot any issues.
  • Dynamic Buffer - allows for a normal and extended playback buffer.

 

Updates

Feburary 12 2012 - WINK Player Version 3.0 now available

  • Intelligent buffer management
  • Smaller memory utilization
  • Updated to work better with Adobe Flash Player 11.x

March 3 2009 - Wink Player Version 1.5 now available.

  • Control of play button position - Top Left or Right, Center, Bottom Left or Right.
  • Rollovers fixed Vertical position for better useablity.
  • Minor Changes to the XML Config.
  • Start player in Full screen mode (optional).
  • Hide Track Info Bar on start (optional).
  • Fixed video stretching param being ignored on full screen.
  • Fixed small buffering issue on Pause Resume.

Sept 6 2008 - Wink Player Version 1.3 now available.

  • Support for loading URL parameters into the XML config file.
  • Dynamic Buffer
  • Minor Changes to the XML config.

 

License

Wink Player can be used as you wish for both commercial and personal use.  In short it is freeware and comes with no warranty or support and is presented 'as is'. Source code will not be made available.

 

Download

Download Wink PlayerYou can get a copy of Wink Player here.  The Zip package contains a configuration example to help you get started.  The configuration is fairly flexible so feel free to tailor it to your specific need.
 

 

XML Config for the Player


Streams Node:


Buffer - The number of seconds to buffer the video file.  Live Streams override this value and use a 500 ms buffer instead.

buffer_factor - the amount to multiply the buffer by for the dynamic buffer.  If the buffer is 4 seconds, and the buffer_factor is set to 5 - that means the upper buffer will be 20 seconds.  The dynamic buffer enables the smoothest possible video playback and a fast start to video playback.

Volume - this is the default volume level.  Once a user makes an adjustment to the volume a cookie is stored and that volume is used instead.

Debug - If debug is set to true, you will see all the commands and messages occurring in the player.  This is handy if you are trying to debug connection problems etc.

 

Skin Node:
 

Hidecontrols - The Wink Player has two modes. If this parameter is set to 'true' the player controls hide after 2 seconds, only reappearing when the user rolls their mouse cursor over the player window. If you are not using autohide (false) remember to add 25px to the height of your player to have an exact fit for your video.

Trackinfo - if set to false and with hide control set to 'true' the top bar that displays the track info will be automatically hidden until the user clicks the button to show it.  True is the default.

Playbutton - this can be set to TopLeft 'tl', TopRight 'tr', in the middle 'center', BottomLeft 'bl' or BottomRight 'br'. Center is the default.

Autoplay - If 'true' the player start play back when it is loaded. The play button is not presented to the user until the playlist has finished playing.

Fullscreen - If set to 'true' the player will automatically go into fullscreen mode when the user hits the play button.  This will not work with the Autoplay set to true as a user MUST click on a button.

Stretch_vid - If set to 'true', videos that are smaller than the player are up-scaled to fit the area of the player. Video that is larger than the player are always down-scaled to fit the player area.

 

Playlist Node:


In this version of the player you may only have one playlist, the next version will support unlimited playlists such that content can be streaming from mixed servers and mixed protocols.

Proto - the protocol parameter is where you set the protocol of how you will transfer the data from the server.  Supported are http, https, rtmp, rtmps, rtmpe.  Remember due to Flash Player sandboxing you cannot call a HTTPS from HTTP and vice versa - so if you are doing http make sure the file (video or audio) is the same as the page you are embedding the player in.

Server - This is the host name of you server (www.iamyourserver.com) do not specify HTTP or anything else, just the host name you will be using.  If you are calling files (video, audio, thumbnails) make sure that you have a 'crossdomain.xml' files set up on that server to allow Flash to playback from that other server.

Path - For Flash media server this would be the path to your application like 'VOD' or 'LIVE'.  For HTTP this would be the folder that contains your videos or music.  For example if the path to you video and audio files were 'www.iamyourserver.com/media' you would simply enter in 'media' for the path variable in the config. You can also go down further levels as well like 'media/something/something'.  Remember you can use backslashes in between but not at the front or back of this variable as they are added in automatically.

Port - if you are using 'rtmp' you would use port  1935 if this is how you configured your server.  If you are using regular HTTP use port 80 or whatever port you are using.  The port parameter can be left blank if you choose to do so.

Playlist items

You may have just one file in your playlist or you can have as many as you like - the items in the playlist will play back-to-back until the list is completed. 

Title - This is the title that will be displayed to the user.  If the file is an Mp3 the player will try to retrieve any ID3 data that might exist and  display that to the user.

File -  This is simply the path to the file.  Unless the file is a live stream you must include the file extension that you are trying to play - live streams do not require an extension.  The player will take care of any necessary transformations.  All file types that Flash Player supports are supported in the Wink Player both for rtmp and http these include flv, mp4v, mp4, mov, 3gp, 3g2, f4v, f4p, m4a, f4a, f4b, mp3 and live.  It should be noted however that not all files with these extensions can be handled by flash - they must also be properly encoded with the correct codec.  For example a MP4 file from a Nokia Phone will not play in flash as the encoding is not properly supported unless you re-encode it first.

Pmode - this is the play mode of the file.  There are three options for this - 1. Leave it blank.  2. 'noseek' - this disables the seeking of the video or audio, great for commercials. 3. 'live' - this sets the wink player to use controls that are suited to live streams.

Thumbnail - this is the picture that will show at the start of the video (if autoplay is false) and at the end of the video. This image is centered in the middle of the player.

 

Embedding the Player:

You can use any method you like to embed the Wink Player into your webpage.  Without question the simplest and most effective is using the SWFObject (blog.deconcept.com/swfobject/).  The only parameters that need be set in the Wink Player are:

  • allowfullscreen = "true"  - if this is not set obviously the ‘full screen button’ will not work.

  • The path to the XML playlist – this can be anything you like so long as the XML structure is the same as the included example with the correct parameters.  Typically this would be a path to a ASP, JSP or PHP page that retrieves playlist information from your database. Your javascript embed might look like the following:

    var flashvars = {};  
    var params = {};  
    var attributes = {};  
    params.allowfullscreen = "true"; 
    flashvars.config = "playlist.xml";  
    swfobject.embedSWF("_flash/wink_player.swf", "video1", "656", "352", "9.0.115", 
    "_flash/expressInstall.swf", flashvars, params, attributes);

    If you are using a server side page to generate your XML playlist files, you can specify URL parameters like you see below - note that variables are seperated with a pipe (|) and not a ampersand (&) - they are converted back to ampersands once they are loaded into Flash.

    flashvars.config = "/play.wink?item=videoID|app=vod|b=4|d=0|a=true";
  • The size of the video – this will be the player size as seen on your webpage the videos will automatically resize to the optimal area based on the meta data in the video.   Using a width less that 300 pixels it not recommended as there is not enough area to properly display the controls.
    It should be noted that older versions of Flash Media Server (such as version 1.5) do not support meta data in the live streams therefore you must set the player size to the actual size of the live video you are publishing.  Older version of the FLV format also neglect to include the video size in the meta data, nothing that a quick pass through a re-encoder can’t fix.  You will be able to see if the video size is absent in the Track Info Bar – if there is no size there that means it is absent from the video file.

Compatibility issues:

  1. The player is published for Flash Player 9 – as this is the lowest version that supports full screen mode and Flash Player 9 has several significant improvements over earlier versions. 

  2. If you are going to use H.264 AVC  video (Advanced Video Coding) or AAC (Advanced Audio Coding) make sure that your users have at least Flash Player 9.0.115 installed.  The easiest way to do this is use the ‘expressinstall.swf’ and include 9.0.115 in the version number.  This will quickly update the Flash Player and return the user to your page once the install is complete.

  3. There is a bit of a bug with H.264 video if you are streaming over HTTP – make sure that the MOOV ATOM is at the start of the video file – otherwise the user will have to download the entire file before playback begins.  This is a simple and quick process to fix the moov atom.  This issue does not occur over rtmp.

  4. In order to get the most out of Wink Player it helps to have the duration and size in the meta data of video files.