1.2.2 • Published 2 years ago

@mkhuda/react-shaka-player v1.2.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

@mkhuda/react-shaka-player

Build Status npm version npm

React video player built on top of Shaka Player.

DEMO

CODESANDBOX

ROADMAP

EXAMPLE & USAGES

Installation

Use the package manager yarn or npm to install @mkhuda/react-shaka-player.

yarn add @mkhuda/react-shaka-player shaka-player

or

npm install @mkhuda/react-shaka-player shaka-player

Usage

// import the css. Now we have custom ui.css
import "@mkhuda/react-shaka-player/dist/ui.css";
import { ReactShakaPlayer } from "@mkhuda/react-shaka-player";

function App() {
  return <ReactShakaPlayer autoPlay={true} src={"https://yourvideohere.mpd"} />;
}

Manual Handle Usage

import "@mkhuda/react-shaka-player/dist/ui.css";
import { ReactShakaPlayer } from "@mkhuda/react-shaka-player";

function App() {
  let [mainPlayer, setMainPlayer] = useState({});

  useEffect(() => {
    const { player, videoElement } = mainPlayer;

    if (player) {
      async function play() {
        await player.load("https://yourvideomaster.mpd");
        videoElement.play();
      }
      play();
    }
  }, [mainPlayer]);

  return (
    <div className="App">
      <div className="App-main">
        <ReactShakaPlayer
          playerClassName="player-class-name"
          onLoad={(player) => setMainPlayer(player)}
        />
      </div>
    </div>
  );
}

Props

This is main props for the components:

PropsOptionalDescriptionType
srcNoMPD or HLS to playstring
classNameYesstring of ui overlay classnamestring
autoPlayYesas it describedboolean
superConfigYesThe special configs for Streaming or VOD. Will add more superConfig soon.string ("STREAMING" / "VOD")
configYesChanges configuration settings on Shaka Player. Reference: shaka.extern.PlayerConfiguration. This config will override superConfig.object
uiConfigYesChanges configuration settings for UI elements. Reference: shaka.extern.UIConfiguration. This config will override superConfig.object
onLoadYesCatch Shaka.Player, Shaka.ui.Overlay and HTMLVideoElement for manual usages or improvement of configuration. see: PlayerRefsobject: PlayerRefs => func
onPlayYesCatch when media is playingfunc
onPlauseYesCatch when media is pausedfunc
onEndedYesCatch when video is endfunc
onBufferingYesCatch onBuffering status when playingbool => func
onPlayerErrorYesCatch error when playing. Reference: Shaka.Player.ErrorEvent{Shaka.extern.Error} => func
onStatsChangedYesCatch stats when playing video, including currentTime (current seek position), and currentEndTime (length of video duration if VOD) (in seconds) of media player element IStats. Reference: IStats & Shaka.extern.Stats{Shaka.extern.Stats} => func

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

1.2.2-beta.0

2 years ago

1.2.2

2 years ago

1.2.1

3 years ago

1.2.1-beta.0

3 years ago

1.2.0

3 years ago

1.1.10-beta.3

3 years ago

1.1.10-beta.2

3 years ago

1.1.10-beta.1

3 years ago

1.1.10-beta.0

3 years ago

1.1.9

3 years ago

1.1.9-beta.0

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.7-beta.3

3 years ago

1.1.7-beta.1

3 years ago

1.1.7-beta.0

3 years ago

1.1.7-beta.2

3 years ago

1.1.6-beta.1

3 years ago

1.1.6

3 years ago

1.1.6-beta.0

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago