doc/widget_tutorial/tutorial.htm
author hamidouk
Fri, 17 Feb 2012 10:22:39 +0100
branchpopcorn-port
changeset 813 25a241b6688a
permissions -rw-r--r--
added a tutorial on how to write a plugin.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
813
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     2
<html dir="ltr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml" lang="fr">
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     3
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     4
<head>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     5
<title>Metadataplayer - Widget tutorial</title>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     6
</head>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     7
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     8
<body>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
     9
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    10
  <div style="width:650px;font-family: 'Trebuchet MS', 'Helvetica', 'Arial',  'Verdana', 'sans-serif';">
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    11
    <h1>MetaDataPlayer</h1>  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    12
  </div>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    13
  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    14
  If you're seeing nothing, it's because you've probably forgotten to run the build script.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    15
  Run sbin/build/compil.sh to compile the files together.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    16
  <!-- load the player file, and then our tutorial widget -->
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    17
  <script type="text/javascript" src="../../build/LdtPlayer-release.js" type="text/javascript"></script>   
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    18
  <script type="text/javascript" src="LdtPlayer-tutorial.js" type="text/javascript"></script>   
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    19
  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    20
  <!-- this is the div the player will instantiate itself-->
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    21
  <div id="LdtPlayer"></div>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    22
  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    23
  <script  type="text/javascript">  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    24
    var file = "../../test/integration/polemic_fr.json";
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    25
    
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    26
    /* This is the player configuration */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    27
    var config = {
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    28
        /* The first part of the config, config.gui, describes the gui options and the widgets. */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    29
      gui:{
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    30
            width:650,            
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    31
            container:'LdtPlayer', /* container div where the player will instantiate itself */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    32
            css:'../../src/css/LdtPlayer.css', /* where to get the css from */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    33
            
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    34
            /* default options for the widgets, to keep things DRY.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    35
               We put the metadata config there because the widgets often get their data from the same sources,
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    36
               Also not that re-defining a field that was defined in default_options overrides its value.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    37
            */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    38
            default_options : {
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    39
                metadata:{                
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    40
                  src:file,
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    41
                  type:'json' /* determines how the data will be loaded */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    42
                }
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    43
            },
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    44
            /* this is the list of the widget that are going to be instantiated 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    45
               We're going for a minimal player here, so we're only going to instantiate
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    46
               a basic gui, a seekbar and our tutorial widget.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    47
            */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    48
            widgets: [
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    49
                /* the type of the widget corresponds to the name of its constructor.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    50
                   For instance, type: "SliderWidget" means to instantiate IriSP.SliderWidget
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    51
                */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    52
                {type: "SliderWidget"},
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    53
                {type: "PlayerWidget"},
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    54
                {type: "TutorialWidget"},            
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    55
            ]
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    56
        },
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    57
      /* second part of the config - player options */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    58
      player:{
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    59
        /* type of the player to instantiate - available values are 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    60
           jwplayer, html5, youtube, etc. 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    61
        */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    62
        type:'jwplayer',
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    63
        /* the rest are options for the jwplayer */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    64
        live: true, 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    65
        height: 300, 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    66
        width: 640, 
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    67
        provider: "rtmp",
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    68
        file: "video/ldtplatform/museologie_inaugurale_20111018_flat.f4v",        
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    69
        streamer: "rtmp://media.iri.centrepompidou.fr/ddc_player/"
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    70
      },
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    71
      /* modules - modules are things similar to widgets, except that they
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    72
         don't live in a div.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    73
      */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    74
      modules: [
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    75
               /* the mediafragment module updates the url of the video to allow
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    76
                  sharing a specific moment in a video
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    77
                */
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    78
               { type: "MediaFragment",
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    79
                  metadata:{
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    80
                  format:'cinelab',
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    81
                  src:file,
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    82
                  type:'json'}
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    83
                }]
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    84
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    85
    };
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    86
    
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    87
    // init the player, specifying the config and a basic config file
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    88
    // for media autoconfig.
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    89
    IriSP.initPlayer(config, file);
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    90
    </script>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    91
  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    92
  
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    93
 </body>
25a241b6688a added a tutorial on how to write a plugin.
hamidouk
parents:
diff changeset
    94
 </html>