Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Version History

Version #Description
3.0.0

Changes:

  • New method for loading channels feed
  • New method for loading video

Braking changes:

  • loadVideo method and video object constructor expecting video_id string instead of object
2.2.0

Changes:

  • deprecated loadVideo method
  • additional controls elements
  • removed Dailymotion and Vimeo players

Bugfixes:

  • autoplay issue on ios
  • events memory leaks
2.1.2

Pending release...

  • Ad fixes
2.1.1

Pending release...

  • Ad fixes
2.1.0

Pending release...

  • support for VAST error trackers
  • support for DNT
  • support for forcing ad delivery protocol
  • maximum and minimum Ad resolution support
  • maximum and minimum bitrate Ad support
  • additional player controls UI
  • New events
    • onActivity
    • onAd

Bugfixes:

  • State PLAYING not received after SEEKING
  • Edge Incorrect handling for SEEKING status for some videos.
  • Video doesn't pause at starting playback
  • Watch10 request is sent after forwarding the video
  • Player doesn't playback picked video after advertising ends.
  • Memory leaks for advertisements
2.0.4

Bugfixes:

  • API url is not supported in constructor call
2.0.3

Bugfixes:

  • "autoplay" is ignored
  • playerLite memory leaks
  • VAST impression support
2.0.2

Bugfixes:

  • Player does not emit onVolumeChange event during playing ads 
  • Current time is not equal to Duration on video End 
  • Video doesn't pause at starting playback
  • Infinite SEEKING state after advertisement 
  • "autoplay" is ignored

Breaking changes:

  •  please provide source instead of source_id in video object for ads 
2.0.1
  • ad_tag no longer required - configuration kept in ad server
2.0.0
  • Ad handled via decisioning server
  • Unified constructors for Player and PlayerLite version
  • Accept resolution and bitrate parameters within player for ad request
  • [Player] Player can't use ad_tag provided by frequency services if player is loaded over HTTPS

  • [Player] Impossible to change AdsConfiguration for loadVideo method.

  • [Player] Event onProgress is received after state PAUSED

  • [Player] Subtitles are enabled by default on YouTube

Breaking changes:

  • Unified constructor for both versions
  • setSesion method is now asynchronous
  • adConfig object no longer accepts adCuePoints and adTag
  • video object is now compatible with API video object
1.3.7

Fixes:

  • AC-227 Youtube videos are not filling the entire player field of view
  • LG-154 [Player] versioning support when loading from CDN - Base path param
  • AC-212 All videos cease to play
  • LG-157 [Player] youtube video breaks play

 

1.3.6

Fixes:

  • LG-154 - [Player] versioning support when loading from CDN
  • LG-146 - [Player][Android 4.1.2] There is playback in the corner in small size
1.3.5Fixes:
  • Player doesn't save mute state for videos.
  • Edge Incorrect handling for Ended and Seek statuses for some videos. 
  • Player throws incorrect state ENDED (Nexus 7)
  • Duplicated events listeners

Player light build (with mp4 player only)

1.3.4Internal testing
1.3.3Support for different video urls (direct, embed)
1.3.2Offline events, bugfixes.
1.3.0

Fullscreen API, Activity events errors and change session support

1.2.1Possibility to change API url for activities
1.2.0Video activities, poster, bugfixes

1.1.0

 

Volume control functions and bugfixes.
1.0.0This is the first version of the Frequency player that supports VMAP, VPAID, VAST 2.0, VAST 3.0 advertising standards and MP4 and HLS video formats.
  


Browsers & Device Support

...

Code Block
languagejs
new Frequency.Player({
    config: {// optional
        basePath: '.'
    },
    session: {// mandatory
        'x-frequency-auth': '013ffaa2-a64e-4974-a9ee',
        'x-frequency-deviceid': '5680c4f2-e3fd'
    },
    adConfig: {// optional
        minBitrate: 100,// kbps
        maxBitrate: 5000,// kbps
        maxResolution: '720p',
        minResolution: '720p',
        deliveryFormat: 'progressive',// progressive / streaming
		deliveryProtocol: 'https',// http / https
		format: 'video/mp4'
    },
	controls: { // boolean or object [default: false]
    	player: { // boolean or object [default: true]
			// css: 'sample-link-to--player.css'
        },
		ads: { // boolean or object [default: true]
			// css: 'sample-link-to--adsplayer.css',
            strings: { // optional
	            VIDEO_WILL_START_SOON: 'Keep calm and watch the ad, video will start in [time_left]s...',
                SKIP_AD: 'Skip'
            }
        }
    },
    video: {// mandatory
        "video_id": "12345""1234567",//optional
mandatory         "title"autoplay: "Gangnam Style",
        "description": "Good Dance Video",
        "image_url": "http://image1.frequency.com/uri/w{width}_h{height}_ctrim_tt1406242656000/_/item/1/8/3/2/Kelsey_Grammer_Welcomes_6th_Child_183236961_thumbnail.jpg",
        "deep_link": "frequency://video/12345/-/4-895",
        "media_url": "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4",// mandatory
        "media_type": "h264",
        "media_types": ["h264", "hls"],
        "resolution": "1080p",
        "resolutions": ["1080p", "720"],
        "duration": 3600,
        "source": "Online",// mandatory
        "source_id": "X8yZ4f",
        "source_url": "http://www.eonline.com/videos/223996/kelsey-grammer-welcomes-6th-child",
        "score": 126,
        "meta_tags": [
            {"network": "Machinima"},
            {"genre": "Gaming"},
            {"subgenre": "Action"},
            {"series": "Random LOL Moments"},
            {"season": "1"},
            {"episode": "489"}
        ],
        "channel": {
            "channel_id": "4-1234",
            "title": "News",
            "image_url": "http://image1.frequency.com/uri/w{width}_h{height}/_/user/1/8/5/0/1385085551000_abc_nightly_news_1850953_avatar.jpg",
        },
        "referrer_link": "https://twitter.com/zgutierrez90/status/446459061161451520",
        "ad_tag": "https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=%2F105934051%2FtestAdUnit&impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&url=[referrer_url]&description_url=[description_url]&correlator=1485732061110",// optional
        "ad_cue_points": [0],// mandatory for ads
        "date_publish": "2014-07-29T14:18:10Z",
        "date_available": "2014-07-29T14:18:10Z",
        "date_expired": "2014-07-29T14:18:10Z",
        "last_updated": "2014-07-29T14:18:10Z",
        "autoplay": true
    },
    true, //optional default false
    events: {// optional
    	onStateChange(state) {
			...
		}  
    }
})

           

...

Code Block
loadVideo(video_id[, autoplay:boolean])

Loads the video specified by the video object. This does not auto play the video. _id string. The onMediaReady event would need to be monitored along with a subsequent video play() method call to cause the loaded video to play.

Parameters:

video_id - string with video_id that will be played

Returns:

void

 

loadChannel

 

Code Block
loadChannel(channel_id[, autoplay:boolean])

 

Loads video feed for specified channel_id. The onMediaReady event would need to be monitored along with a subsequent video play() method call to cause the loaded video to play.

 

Parameters:

video - video object described in Player Fields section.

 

channel_id - string with channel_id that will be played

 

Returns:

 

void

 

 

 

setVolume

Code Block
setVolume(volume:Number)

...

Parameters:

 none

Returns:

 Number

 

isFullscreen 

Code Block
isFullscreen()

...