wwwcorpus/metadataplayer/AutoPlayer.js
author cavaliet
Fri, 28 Mar 2014 17:35:10 +0100
changeset 55 b9781a162351
parent 17 d8b6ea26da6e
permissions -rw-r--r--
Added tag V00.04.0 for changeset e1110b5e0955
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     1
IriSP.Widgets.AutoPlayer = function(player, config) {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     2
    IriSP.Widgets.Widget.call(this, player, config);
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     3
};
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     4
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     5
IriSP.Widgets.AutoPlayer.prototype = new IriSP.Widgets.Widget();
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     6
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     7
IriSP.Widgets.AutoPlayer.prototype.defaults = {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     8
    default_type: "JwpPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
     9
};
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    10
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    11
IriSP.Widgets.AutoPlayer.prototype.draw = function() {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    12
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    13
    if (typeof this.video === "undefined") {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    14
        this.video = this.media.video;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    15
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    16
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    17
    var _props = [ "live", "provider", "autostart", "streamer", "video", "height", "width", "url_transform" ],
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    18
        _opts = {},
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    19
        _types = [
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    20
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    21
                regexp: /^rtmp:\/\//,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    22
                type: "JwpPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    23
            },
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    24
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    25
                regexp: /\.(mp4|m4v)$/,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    26
                type: "AdaptivePlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    27
            },
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    28
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    29
                regexp: /\.(ogg|ogv|webm)$/,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    30
                type: "HtmlPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    31
            },
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    32
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    33
                regexp: /^(https?:\/\/)?(www\.)?youtube\.com/,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    34
                type: "PopcornPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    35
            },
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    36
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    37
                regexp: /^(https?:\/\/)?(www\.)?vimeo\.com/,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    38
                type: "PopcornPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    39
            },
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    40
            {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    41
                regexp: /^(https?:\/\/)?(www\.)?dailymotion\.com/,
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    42
                type: "DailymotionPlayer"
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    43
            }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    44
        ],
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    45
        _rtmprgx = /^rtmp:\/\//;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    46
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    47
    for (var i = 0; i < _types.length; i++) {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    48
        if (_types[i].regexp.test(this.video)) {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    49
            _opts.type =  _types[i].type;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    50
            break;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    51
        }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    52
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    53
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    54
    if (typeof _opts.type === "undefined") {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    55
        _opts.type = this.default_type;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    56
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    57
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    58
    if (_opts.type === "AdaptivePlayer") {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    59
        var _canPlayType = document.createElement('video').canPlayType("video/mp4");
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    60
        _opts.type = (_canPlayType == "maybe" || _canPlayType == "probably") ? "HtmlPlayer" : "JwpPlayer";
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    61
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    62
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    63
    if (_rtmprgx.test(this.video)) {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    64
        _opts.provider = "rtmp";
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    65
        _opts.live = true;
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    66
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    67
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    68
    for (var i = 0; i < _props.length; i++) {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    69
        if (typeof this[_props[i]] !== "undefined") {
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    70
            _opts[_props[i]] = this[_props[i]];
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    71
        }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    72
    }
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    73
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    74
    this.insertSubwidget(this.$, _opts);
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    75
    
d8b6ea26da6e Add interface d'accès au corpus sur le serveur spectacleenlignes.fr/corpus/ alias http://spectacleenlignes.insa-lyon.fr/corpus/
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff changeset
    76
};