Changes between the 3.x and 4.x player

From an architecture point of view, the 4.x player is written in actionscript version 3, while the 3.x player is written in Actionscript 2. This means the 4.x player can only be run in the Flash plugin version 9 or later. The 3.x player will run in the Flash player version 7 or later. The plugin installbases are presently about 95% (9+) and 98% (7+). Here is Adobe's latest plugin survey.


Added to the 4.x player

The most important addition to the 4.0 player is its skinning functionality. By loading an external SWF through the skin flashvar, the players' look can be completely changed. The external skin doesn't need an code; all logic is attached through nameconventions - the play button should be called playButton etc. Other new features include:

  • Playback of live streams (RTMP MP3 and FLV, images without duration)
  • Efficient HTTP streaming (when seeking to loaded parts, no servercall is made).
  • SMIL playlists (PAR and SEQ sequences; no positioning).
  • ATOM playlists (Youtube!)
  • RTMP publishing of DV devices or webcams.
  • Error handling (error messages are shown in the display).
  • Playlist can also be placed on top of the display, controlbar can be hidden. No more awkward displayheight controls.
  • Extended rightclick-menu (captions, fullscreen and quality toggles).
  • Extended displayclick setting (not only link or play, but also fullscreen, next, mute).
  • Separated muting from volume control.
  • 3GPP captions support (in addition to the already-supported Captionate data).
  • Styling of Timedtext captions.
  • Load and display duration for files without metadata.
  • Chapterizing each file format (long podcasts, videos).
  • More flexible, extensive javascript support (subscribe to events and request config and playlist objects).
  • Javascript tracing call (for debugging).
  • Real-time resizing (when a player width/height is XX%, it will scale when the window is scaled).

Changed between the 3.x and 4.x player

  • RTMP streams can now be played by only entering the (entire) url to the file. No removing of the .flv is needed, and no id nether. Example: so.addVariable("file","rtmp://www.myserver.com/application/content/video_320.flv");
  • Replaced smoothing with more generic quality toggle (aliasing in images, camera framerate).
  • Replaced 'allowfullscreen' with fullscreen flashvar. Fullscreen is now disabled by default.
  • Replaced the fallback flashvar with query parameters sent to the FLV location. With HTTP and RTMP streaming, the player now send a list of parameters so the server can determine any fallback. This is a lot more flexible, since fallbacks can now also be set based upon screen size and player version.
  • The displayheight and displaywidth variables have been replaced by the controlbar, playlist and playlistsize flashvars. Now they directly reflect what one wants to achieve by setting these vars.
  • The default skin will now show title + description in the playlist, instead of title + author. Additional skins can still change this.
  • Overstretch is now called stretching. This variable can be set to fill, exactfit or none. The default is uniform.
  • abouttxt and aboutlnk are now called abouttext and aboutlink.

Removed from the 4.x player

These features have all become obsolete because of the skinning functionality:

  • Flashvars for colors (you can now set any color to any button).
  • Thumbsinplaylist flashvar (you can now add any playlist element to a playlist button).
  • Flashvars for showstop, showdigits, showdownload, largecontrols (you can now throw away or add the buttons you want).
  • Autoscrolling in playlist (you can now add a decent, custom scrollbar).
  • Links in playlist-buttons (due to skinning, a button can only have one action).

These features have become obsolete because of the more extensive javascript API:

  • Callback flashvar.
  • Enablejs and javascriptid flashvar (javascript API is always enabled).
  • addItem / removeItem javascript calls (the LOAD call is more flexible now).

These features didn't make it to the 4.0 player but are on he 4.1 list:

  • Bandwidth checking (not with JPG image; mid-stream bw-checking).
  • Token-based security (replacing the flawing prefix flashvar).
  • SRT caption parsing (don't worry, won't be dropped).
  • Audiodescription.

These features will become a plugin:

  • Recommendations (along with embed/mailafriend).
  • Searchbar.
  • Equalizer.