Coder Social home page Coder Social logo

dnish / react-video-play Goto Github PK

View Code? Open in Web Editor NEW

This project forked from egorovsa/react-video-play

0.0 1.0 0.0 32.36 MB

React video player for TypeScript and JavaScript like youtube

JavaScript 38.08% Shell 0.36% CSS 25.46% HTML 0.52% TypeScript 35.57%

react-video-play's Introduction

react-video-play

React video player for TypeScript and JavaScript like youtube

react-stores

Demo react-video-play

How to install

npm i react-video-play --save

How to import

For TypeScript usage there is an index.d.ts in node_modules folder

import {ReactVideoPlay, VideoSourceType} from 'react-video-play';

or

var ReactVideoPlay =  require('react-video-play');
var VideoSourceType =  require('react-video-play').VideoSourceType;

Also use css and images. There is a public folder in node_modules/react-video-play

How to use

//JSX
    <ReactVideoPlay
        sources={src}
        poster="http://lorempixel.com/900/450/people/"
        advComponent={<UIVideoAdvTest/>}
        enableSlider={true}
        sliderSlides={slides}
        autoplay={true}
        muted={true}
    />

Options

  • sources (Source[], required) - video source
    export interface Source {
    	name: string,
    	default?: boolean,
    	source: VideoSource[]
    }

    export enum VideoSourceType{
        video_mp4,
        video_webm,
        video_ogg
    }

    export interface VideoSource {
        source: string,
        type: VideoSourceType,
        codecs?: string
    }

Source example

    let src: Source[] = [
        {
            name: '1080p',
            source: [{
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.mp4',
                type: VideoSourceType.video_mp4
            }, {
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.webm',
                type: VideoSourceType.video_webm
            }, {
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.ogv',
                type: VideoSourceType.video_ogg
            }]
        }, {
            name: '720p',
            default: true,
            source: [{
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.mp4',
                type: VideoSourceType.video_mp4
            }, {
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.webm',
                type: VideoSourceType.video_webm
            }, {
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.ogv',
                type: VideoSourceType.video_ogg
            }, {
                source: 'http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.m4v',
                type: VideoSourceType.video_mp4
            }]
         }
    ];
  • enableSlider (boolean, default: false) - enable preview slider
  • hideSliderInMobile (boolean, default: true) - hide slider in mobile devices
  • sliderSlides (VideoSliderSlide[], required if enableSlider installed true) - slides
    export interface VideoSliderSlide {
    	img: string,
    	link: string
    }

sliderSlides example

    slides: [
        {
            img: "http://lorempixel.com/100/75/people/",
            link: "http://video.egorov.pw",
        },
        {
            img: "http://lorempixel.com/100/75/city/",
            link: "http://video.egorov.pw",
        }
    ]
  • enableAdv (boolean, default: true) - enable ADV, it will be shown whenever player pause
  • advComponent (JSX.Element, required if enableAdv installed true) - React component for ADV
  • poster (string, default: none) - show preview video image
  • width (number, default: none) - video container width
  • height (number, default: none) - video container height
  • controls (boolean, default: true) - controls
  • autoplay (boolean, default: false) - autoplay video after start
  • muted (boolean, default: false) - muted by default
  • showSourceName (boolean, default: false) - prefer source name to HQ icon
  • ambiLight (boolean, default: false) - switch on Philips ambilight
  • loaderColor (string, default: "#fff") - default loader color

For development

just use:

  • $ yarn or $ npm i
  • $ gulp

open your browser http://localhost:3000

For Build

$ ./production

react-video-play's People

Contributors

egorovsa avatar dnish avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.