1.2.27 • Published 10 months ago

@oplayer/hls v1.2.27

Weekly downloads
-
License
MIT
Repository
-
Last release
10 months ago

oplayer-plugin-hls

npm npm bundle size npm dm jsdelivr

HLS plugin for oplayer

Install

npm i @oplayer/hls hls.js
<script src="https://cdn.jsdelivr.net/npm/@oplayer/core@latest/dist/index.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@oplayer/hls@latest/dist/index.min.js"></script>

<div id="oplayer" />

<script>
  OPlayer.make('#oplayer', {
    source: {
      src: 'https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8',
      poster: 'https://cdn.jsdelivr.net/gh/shiyiya/QI-ABSL@master/o/poster.png'
    }
  })
    .use([OHls({ library: 'https://cdn.jsdelivr.net/npm/hls.js@0.14.17/dist/hls.min.js' })])
    .create()
</script>

Handle default Quality/Audio/Subtitle

OHls({
  forceHLS: true, // use hls.js not native
  defaultQuality(levels) {
    let id = -1 // -1 => 'auto'
    for (let i = 0; i < levels.length; i++) {
      if (levels[i].height <= 1080) id = i
    }

    return id
  },
  defaultAudio(tracks) {
    for (const { lang, id } of object) {
      if (lang == 'en' || lang.startsWith('en')) {
        return id
      }
    }

    return -1 // -1 => brower lang
  },
  defaultSubtitle(tracks) {
    for (const { lang, id } of object) {
      if (lang == 'en' || lang.startsWith('en')) {
        return id
      }
    }

    return -1 // -1 => brower lang
  }
})

Handle Hls.js Error

OHls({
  errorHandler(player, data) {
    // skip bufferAppendError
    if (data.details == 'bufferAppendError') return

    player.emit('error', {
      ...data,
      message: data.type + ': ' + data.details
    })
  }
})
1.2.27-beta.5

10 months ago

1.2.27

10 months ago

1.2.27-beta.4

10 months ago

1.2.27-beta.3

10 months ago

1.2.27-beta.2

10 months ago

1.2.27-beta.1

11 months ago

1.2.27-beta.0

1 year ago

1.2.26

1 year ago

1.2.26-beta.6

1 year ago

1.2.26-beta.5

1 year ago

1.2.26-beta.4

1 year ago

1.2.26-beta.3

1 year ago

1.2.26-beta.2

1 year ago

1.2.26-beta.1

1 year ago

1.2.26-beta.0

1 year ago

1.2.25

1 year ago

1.2.25-beta.0

1 year ago

1.2.24

1 year ago

1.2.2-4.beta.1

1 year ago

1.2.2-4.beta.0

1 year ago

1.2.23

2 years ago

1.2.20

2 years ago

1.2.21

2 years ago

1.2.22

2 years ago

1.2.20-alpha.0

2 years ago

1.2.20-alpha.1

2 years ago

1.2.20-alpha.2

2 years ago

1.2.8

2 years ago

1.2.0

3 years ago

1.2.7

3 years ago

1.2.6

3 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.5-alpha.0

3 years ago

1.2.1

3 years ago

1.1.9

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.0.56-beta.0

3 years ago

1.0.56-beta.1

3 years ago

1.1.1

3 years ago

1.1.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.0.55

3 years ago

1.0.54

3 years ago

1.0.57

3 years ago

1.0.48

3 years ago

1.0.47

3 years ago

1.0.45

3 years ago

1.0.49

3 years ago

1.0.46-beta.2

3 years ago

1.0.46-beta.1

3 years ago

1.0.46-beta.0

3 years ago

1.0.51

3 years ago

1.0.50

3 years ago

1.0.53

3 years ago

1.0.52

3 years ago

1.0.19

3 years ago

1.0.18

3 years ago

1.0.39

3 years ago

1.0.17

3 years ago

1.0.38

3 years ago

1.0.16

3 years ago

1.0.40

3 years ago

1.0.44

3 years ago

1.0.22

3 years ago

1.0.43

3 years ago

1.0.21

3 years ago

1.0.42

3 years ago

1.0.20

3 years ago

1.0.41

3 years ago

1.0.26

3 years ago

1.0.25

3 years ago

1.0.24

3 years ago

1.0.23

3 years ago

1.0.29

3 years ago

1.0.28

3 years ago

1.0.27

3 years ago

1.0.33

3 years ago

1.0.32

3 years ago

1.0.31

3 years ago

1.0.30

3 years ago

1.0.37

3 years ago

1.0.15

3 years ago

1.0.36

3 years ago

1.0.35

3 years ago

1.0.34

3 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago