clappr-rtmp

    0.0.19 • Public • Published

    clappr-rtmp-plugin

    RTMP support for Clappr player. Supports both RTMP direct and SMIL (dynamic streaming).

    How to use

    Import rtmp.min.js

    <script type="text/javascript" src="http://cdn.jsdelivr.net/clappr.rtmp/latest/rtmp.min.js">
    </script>

    and create Clappr Player adding the external plugin:

    var player = new Clappr.Player({
        source: "rtmp://source_here",
        parentId: "#player-wrapper",
        plugins: {'playback': [RTMP]},
        rtmpConfig: {
            swfPath: 'dist/assets/RTMP.swf',
            scaling:'stretch',
            playbackType: 'live',
            bufferTime: 1,
            startLevel: 0,
            switchRules: {
                "SufficientBandwidthRule": {
                    "bandwidthSafetyMultiple": 1.15,
                    "minDroppedFps": 2
                },
                "InsufficientBufferRule": {
                    "minBufferLength": 2
                },
                "DroppedFramesRule": {
                    "downSwitchByOne": 10,
                    "downSwitchByTwo": 20,
                    "downSwitchToZero": 24
                },
                "InsufficientBandwidthRule": {
                    "bitrateMultiplier": 1.15
                }
            }
        },
    });

    Configuration

    The plugin accepts several optional configuration options, such as:

    • swfPath (default //cdn.jsdelivr.net/clappr.rtmp/latest/assets/RTMP.swf) - Path to the SWF responsible for the playback.
    • scaling (default letterbox) - Scaling behavior.
    • playbackType (default live if the source contains live on its URL, vod otherwise).
    • bufferTime (default 0.1) - How long to buffer before start playing the media.
    • startLevel (default -1) - Initial quality level index.
    • autoSwitch (default false) - Whether video should autoSwitch quality
    • useAppInstance (default false) - Set it to true if your source url contains the app instance (not required if the app instance is _definst_).
    • proxyType (default none) - Determines which fallback methods are tried if an initial connection attempt to Flash Media Server fails.
    • switchRules (default system defined) - Rules defined to autoSwitch video quality based in some conditions.

    Building

    Requirements

    1. AirSDK
    2. Webpack

    Compile SWF

    cd src
    sh build_player.sh

    Download JS dependencies

    npm install

    Build the final dist

    webpack

    Install

    npm i clappr-rtmp

    Homepage

    clappr.io

    DownloadsWeekly Downloads

    16

    Version

    0.0.19

    License

    none

    Last publish

    Collaborators

    • flavioribeiro
    • gfronza