Menu

[r317]: / trunk / player / StrobeMediaPlayback / html-template / lib / StrobeMediaPlayer.js  Maximize  Restore  History

Download this file

100 lines (92 with data), 3.2 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
var strobeMediaPlayback = function () {
var settings = {
"tablet": {
"startSize": {"width":480, "height":268},
"wmode": "direct"
},
"smartphone": {
"startSize": {"width":120, "height":67},
"wmode": "direct"
},
"default": {
"startSize": {"width":480, "height":268},
"wmode": "direct"
}
};
var flashvars = {};
function getSettingByDeviceType(setting, deviceType, defaultValue) {
if (deviceType in settings) {
return (settings[deviceType][setting] ? settings[deviceType][setting] : defaultValue);
}
else {
return (settings["default"][setting] ? settings["default"][setting] : defaultValue);
}
}
return {
settings: function(object) {
settings = $.extend(true, settings, object);
},
flashvars: function(object) {
flashvars = $.extend(true, flashvars, object);
},
draw: function(element) {
if (element && flashvars && flashvars["src"]) {
var agent = window.location.hash.replace(/^#/, "");
function onDeviceDetection(device) {
var startSize = getSettingByDeviceType("startSize", device.getProfile().type, "");
if (device.profileDetected() && device.useFlash()) {
if (device.getProfile().type == "tablet" || device.getProfile().type == "smartphone"){
flashvars.skin = "skins/"+device.getProfile().type+"-skin.xml";
flashvars.controlBarType = device.getProfile().type;
flashvars.playButtonOverlay = false;
}
var params = settings[(device.getProfile().type in settings ? device.getProfile().type : "default")];
params["movie"] = "StrobeMediaPlayback.swf";
params["allowfullscreen"] = "true";
params["allowscriptaccess"] = "always";
var attributes = {};
$("#" + element).parent().css("width",startSize["width"]);
$("#" + element).parent().css("height",startSize["height"]);
swfobject.embedSWF(
"StrobeMediaPlayback.swf",
element,
startSize["width"],
startSize["height"],
"10.1.0",
"",
flashvars,
params,
attributes
);
}
else {
var html5divs =
'<div class="html5player">' +
'<div class="errorwindow"></div>' +
'<div class="controls">' +
'<div class="icon playtoggle">Play/Pause</div>' +
'<div class="timestamp current">0:00</div>' +
'<div class="progress">' +
'<a class="slider"></a>' +
'<div class="tracks">' +
'<div class="seeking"></div>' +
'<div class="played"></div>' +
'<div class="buffered"></div>' +
'</div>' +
'</div>' +
'<div class="timestamp duration">0:00</div>' +
'<div class="icon fullview">Full View</div>' +
'</div>' +
'<video width="' + startSize["width"] + '" height="' + startSize["height"] + '" preload="none" poster="' + flashvars["poster"] + '">' +
'<source src="' + flashvars["src"] + '" />' +
'</video>' +
'</div>';
$("#" + element).html(html5divs);
$("#" + element + " .html5player").strobemediaplaybackhtml5();
}
}
new DeviceDetection(agent).addCallback(onDeviceDetection).addProfiles(profiles).detect();
}
}
}
}();
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.