mediaquad-video-component
Version:
112 lines (81 loc) • 2.08 kB
Markdown
# HLS.js Video Component with Customized UI for Vue
This component is built on the [HLS.js](https://www.npmjs.com/package/hls.js) library, which adds support for m3u8 file formats to enable HTTP Live Streaming.
### Features
- Support for m3u8, mp4, and webm file formats
- Custom preview image
- Display title and subtitle
- Playlists
- Color customization
- Button customization
- Keyboard shortcuts
- Playback speed control
### Installation
```sh
npm i mediaquad-video-component
```
### Usage
Add `app.use(Player)` to main.js
```js
import { createApp } from 'vue'
import App from './App.vue'
import './index.css'
import Player from 'mediaquad-video-component'
const app = createApp(App)
app.use(Player)
app.mount('#app')
```
Import component
```js
import { Player } from 'mediaquad-video-component'
import 'mediaquad-video-component/dist/mediaquad-video-component.css'
```
Usage component
```vue
<Player :playlist="playlist" :buttons="buttons" :colors="colors" :remove-borders="true" :default-volume="0" />
```
### Props Reference
```ts
enum autoStartOps {
Always = 'Always',
Never = 'Never',
}
// Playlist item
class playlistItem {
source: string = ''
poster: string =''
title: string =''
subTitle: string =''
}
// Player colors
interface colors {
buttonColor: string
activeRangeColor: string
backgroundColor: string
preloadColor: string
textColor: string
}
// Visible buttons
class playerButtons {
playBtn: boolean = true
prevNbtn: boolean = true
skipNbtn: boolean = true
speedBtn: boolean = true
nextChapterBtn: boolean = true
prevChapterBtn: boolean = true
volumeBtn: boolean = true
timer: boolean = true
pipBtn: boolean = true
fullscreenBtn: boolean = true
autoplayBtn: boolean = true
playlistBtn: boolean = true
}
// Other options
class playerOptions {
showProgress: boolean = true
autoStart: autoStartOps = autoStartOps.Always
defaultVolume: number = 1.0
removeBorders: boolean = false
autoPlaylist: boolean = false
skipStep: number = 5.0
}
```