Neatly Punctuated Musings

    @ptv.js/videojs-ptv

    1.5.0 • Public • Published

    videojs-ptv

    npm version npm publish

    Table of Contents

    Installation

    npm install --save @ptv.js/videojs-ptv

    Usage

    To include videojs-ptv on your website or web application, use any of the following methods.

    <script> Tag

    This is the simplest case. Get the script in whatever way you prefer and include the plugin after you include video.js, so that the videojs global is available.

    <!-- Path to videojs (example for v7.10.2) -->
    <script src="//cdn.jsdelivr.net/npm/video.js@7.10.2/dist/video.min.js"></script>
    <!-- Path to videojs-ptv (example for v1.2.0) -->
    <script src="//cdn.jsdelivr.net/npm/@ptv.js/videojs-ptv@1.2.0/dist/videojs-ptv.min.js"></script>
    <script>
      var player = videojs("my-video");
    
      // Promethean TV SDK configuration (see options below).
      var config = {
        channelId: "your-channel-id",
        streamId: "your-stream-id",
      };
    
      var ptv = player.ptv(config);
    </script>

    Browserify/CommonJS

    When using with Browserify, install videojs-ptv via npm and require the plugin as you would any other module.

    var videojs = require("video.js");
    
    // The actual plugin function is exported by this module, but it is also
    // attached to the `Player.prototype`; so, there is no need to assign it
    // to a variable.
    require("@ptv.js/videojs-ptv");
    
    // Promethean TV SDK configuration (see options below).
    var config = {
      channelId: "your-channel-id",
      streamId: "your-stream-id",
    };
    
    var ptv = player.ptv(config);

    RequireJS/AMD

    When using with RequireJS (or another AMD library), get the script in whatever way you prefer and require the plugin as you normally would:

    require(["video.js", "@ptv.js/videojs-ptv"], function (videojs) {
      var player = videojs("my-video");
    
      // Promethean TV SDK configuration (see options below).
      var config = {
        channelId: "your-channel-id",
        streamId: "your-stream-id",
      };
    
      var ptv = player.ptv(config);
    });

    Examples

    Documentation

    Please reference the Web SDK documentation for more information about the SDK.

    Plugin Options

    You may pass in an options object to the plugin upon initialization. This object may contain any of the following properties:

    Name Description Type Default Example
    apiHost Api host url override for testing String null
    channelId Identifier of the Promethean channel String null
    debug Whether to show debug messages in the console Boolean false
    embedHost Embed host url override for testing String null
    enableGeoBlock Enable geo-blocking, useful for GDPR. Boolean false
    loadingPosterUrl Specify a loading poster url, overrides Broadcast Center setting. String null
    offlinePosterUrl Specify a offline poster url, overrides Broadcast Center setting. String null
    platformId Vendor CMS platform identifier String null
    platformName Vendor CMS name String null PtvTypes.PlatformNames.TRUE
    platformType Vendor CMS platform key String null PtvTypes.PlatformTypes.CMS_ID
    previewMode Whether to show overlays for in preview mode Boolean false
    showOverlays Whether to initially show overlays on load Boolean false
    showPoster Whether to show poster on load and when offline Boolean false
    streamId Identifier of the Promethean stream String null
    viewerId Identifier of the viewer String null
    viewerLatitude Geographic latitude of the viewer String null
    viewerLongitude Geographic longitude of the viewer String null

    Static Types

    The plugin provides a few top-level static types to help construct the configuration options. The types can be access on the window global window.PtvTypes or as a named import (e.g. import { PtvTypes } from '@ptv.js/videojs-ptv').

    Name Description Usage
    ApiHosts API hosts for testing PtvTypes.ApiHosts.<COMDEV|QA|STAGING|PRODUCTION>
    EmbedHosts Embed hosts for testing PtvTypes.EmbedHosts.<COMDEV|QA|STAGING|PRODUCTION>
    PlatformNames Platform names for integrated partner CMS PtvTypes.PlatformNames.<TRUE>
    PlatformTypes Platform types for integrated partner CMS PtvTypes.PlatformTypes.<CMS_ID>

    High-level API

    The plugin provides a top-level API to manually interact with the SDK.

    Method Description Arguments Usage
    hide Hides all overlays ptv.hide()
    load Removes current overlays and loads new overlays (see configuration options) ptv.load(config)
    show Shows all overlays ptv.show()
    start Starts the overlay rendering engine and shows all overlays ptv.start()
    stop Stops the overlay rendering engine and hides all overlays ptv.stop()
    timeUpdate Update the player time in seconds. number in seconds ptv.timeUpdate(seconds)

    License

    MIT. Copyright (c) Promethean TV

    Install

    npm i @ptv.js/videojs-ptv

    DownloadsWeekly Downloads

    2

    Version

    1.5.0

    License

    MIT

    Unpacked Size

    235 kB

    Total Files

    22

    Last publish

    Collaborators

    • ptvandi
    • px-dev