{
    "adapter,registerListeners":"var Events = dashjs.MediaPlayer.events;this.references = {};this.references[Events.MANIFEST_LOADED] = this.manifestLoaded.bind(this);this.references[Events.PLAYBACK_STARTED] = this.playbackStarted.bind(this);this.references[Events.PLAYBACK_WAITING] = this.playbackWaiting.bind(this);this.references[Events.PLAYBACK_STALLED] = this.playbackWaiting.bind(this);this.references[Events.PLAYBACK_PLAYING] = this.playbackPlaying.bind(this);this.references[Events.PLAYBACK_SEEKED] = this.playbackPlaying.bind(this);this.references[Events.PLAYBACK_PAUSED] = this.playbackPaused.bind(this);this.references[Events.PLAYBACK_ENDED] = this.playbackEnded.bind(this);this.references[Events.ERROR] = this.errorListener.bind(this);this.references[Events.PLAYBACK_ERROR] = this.playbackError.bind(this);this.references[Events.PLAYBACK_SEEKING] = this.playbackSeeking.bind(this);if(this.player){for(var key in this.references){this.player.on(key, this.references[key])}}",
    "adapter,getPlayrate":"if(this.player){return this.player.getPlaybackRate()};return 1",
    "adapter,getPlayhead":"var ret=null;if(this.player){ret=this.isLive?this.player.timeAsUTC():this.player.time()};return ret",
    "adapter,getResource":"var ret=null;if(this.player){var src=this.player.getSource();if(typeof src==='string'){ret=src}}return ret",
    "adapter,getDroppedFrames":"var ret=0;if(this.player){var metrics=this.player.getDashMetrics();ret=metrics.getCurrentDroppedFrames()};return ret",
    "adapter,getDuration":"var ret=null;if(this.player){ret=this.player.duration()};return ret",
    "adapter,playbackEnded,e":"this.firePlayerLog('playbackEnded',{});this.fireStop({},'playbackEnded')",
    "adapter,getPlayerName":"return 'dashJS'",
    "adapter,getLatency":"var ret=null;if(this.getIsLive()&&this.player&&this.player.getCurrentLiveLatency){ret=this.player.getCurrentLiveLatency()*1000};return ret",
    "adapter,getPlayerVersion":"var ret=null;if(this.player){ret=this.player.getVersion()};return ret",
    "adapter,errorListener,e":"this.firePlayerLog('errorListener',{});if(e.error.code){this.fireError(e.error.code,e.error.message,undefined,undefined,'errorListener')}else{this.fireError(e.error, 'Error', undefined, undefined, 'errorListener')}",
    "adapter,playbackError,e":"this.firePlayerLog('playbackError',{});if(e.error.code){this.fireError(e.error.code,e.error.message,undefined,undefined,'playbackError')}else{this.fireError(e.error,'Playback error',undefined,undefined,'playbackError')}",
    "adapter,getBitrate":"var rendition=this._getRenditionInfo();return rendition?rendition.bitrate:null",
    "adapter,getThroughput":"if(this.getCdnTraffic()&&this.getCdnTraffic()!==0){if(!this.lastDataValue){this.lastDataValue=0};var prevDataValue=this.lastDataValue;this.lastDataValue=this.getCdnTraffic()+this.getP2PTraffic();return Math.round((this.lastDataValue-prevDataValue)/(this.plugin._ping.interval/1000))};if(!this.throughput&&this.player&&this.player.getMetricsFor){var metrics=this.player.getMetricsFor('video');var dashMetrics=this.player.getDashMetrics();var requests=dashMetrics.getHttpRequests(metrics);if(!requests)return null;var bps=0;var bpsCount=0;for(var i=0;i<requests.length;i++){var req=requests[i];if(req.type==='MediaSegment'&&req.responsecode>=200&&req.responsecode<400&&req._stream==='video'){var match=req._responseHeaders.match(/Content-Length:(.+)/i);if(match){var time=(req.interval-(req.tresponse-req.trequest))/1000;bps+=(match[1]/time)*8;bpsCount++}}}if(!bps)return null;this.throughput=bps/bpsCount};return this.throughput",
    "adapter,getRendition":"var rendition=this._getRenditionInfo();return rendition?this.getNpawUtils().buildRenditionString(rendition.width,rendition.height,rendition.bitrate):null",
    "adapter,_getRenditionInfo":"var ret=null;if(this.player){var level=this.player.getQualityFor('video');if(level){ret=this.player.getBitrateInfoListFor('video')[level]}}return ret",
    "adapter,getVersion":"return '7.0.1-dashjs-js'",
    "adapter,playbackStarted,e":"this.firePlayerLog('playbackStarted',{});this.fireStart({}, 'playbackStarted')",
    "adapter,playbackPaused,e":"this.firePlayerLog('playbackPaused',{});this.firePause({}, 'playbackPaused')",
    "adapter,playbackWaiting,e":"this.firePlayerLog('playbackWaiting',{});this.fireBufferBegin({},false,'playbackWaiting')",
    "adapter,playbackPlaying,e":"this.firePlayerLog('playbackPlaying',{});if(this.flags.isPaused){this.fireResume({},'playbackPlaying')};if(!this.player.isPaused()&&this.flags.isSeeking){this.fireSeekEnd({},'playbackPlaying')};this.fireBufferEnd({},'playbackPlaying');this.fireJoin({},'playbackPlaying')",
    "adapter,manifestLoaded,e":"this.isLive=e.data&&e.data.type==='dynamic'",
    "adapter,playbackSeeking,e":"this.firePlayerLog('playbackSeeking',{});if(this.isLive){this.fireStart({},'playbackSeeking')};this.fireSeekBegin({},false,'playbackSeeking')",
    "adapter,unregisterListeners":"if(this.player&&this.references){for(var key in this.references){this.player.off(key, this.references[key])}delete this.references}",
    "adapter,getCdnTraffic":"if(this.player.getMetricsFor){var allMetrics=this.player.getMetricsFor('p2pweb');if(!allMetrics)return npaw.Adapter.prototype.getCdnTraffic();var metrics=allMetrics.metricsP2PWeb;return metrics.videoAvgLength*metrics.chunksFromCDN+metrics.audioAvgLength*metrics.chunksFromCDN}return null",
    "adapter,getP2PTraffic":"if(this.player.getMetricsFor){var allMetrics=this.player.getMetricsFor('p2pweb');if(!allMetrics)return npaw.prototype.getP2PTraffic();var metrics=allMetrics.metricsP2PWeb;return metrics.videoAvgLength*metrics.chunksFromP2P+metrics.audioAvgLength*metrics.chunksFromP2P}return null"
}