Launch Week Day 1: Socket for Jira Is Now Available.Learn More
Socket
Book a DemoSign in
Socket

vue-howler

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue-howler

A Howler.js mixin for Vue 2 that makes it easy to create custom audio player components

latest
Source
npmnpm
Version
0.7.0
Version published
Weekly downloads
184
43.75%
Maintainers
1
Weekly downloads
 
Created
Source

vue-howler Version

A Howler.js mixin for Vue 2 that makes it easy to create custom audio player components

Installation

$ npm install vue-howler

Usage

First create a component that uses the mixin

audio-player.vue

<script>
  import VueHowler from 'vue-howler'

  export default {
    mixins: [VueHowler]
  }
</script>

<template>
  <div>
    <span>Total duration: {{ duration }} seconds</span>
    <span>Progress: {{ (progress * 100) }}%</span>
    <button @click="togglePlayback">{{ playing ? 'Pause' : 'Play' }}</button>
    <button @click="stop">Stop</button>
  </div>
</template>

Then you can use that component in your templates

home.vue

<script>
  import AudioPlayer from './audio-player.vue'

  export default {
    components: {
      AudioPlayer
    },

    data () {
      return {
        audioSources: [
          "assets/audio/music.webm",
          "assets/audio/fallback.mp3",
          "assets/audio/fallback2.wav"
        ]
      }
    }
  }
</script>

<template>
  <div>
    <audio-player :sources="audioSources" :loop="true"></audio-player>
  </div>
</template>

API

Props

sources

Type: String[] - Required

An array of audio file urls

html5

Type: Boolean - Default: false

Whether to force HTML5 Audio

loop

Type: Boolean - Default: false

Whether to start the playback again automatically after it is done playing

preload

Type: Boolean - Default: true

Whether to start downloading the audio file when the component is mounted

autoplay

Type: Boolean - Default: false

Whether to start the playback when the component is mounted

formats

Type: String[] - Default: []

Howler.js automatically detects your file format from the extension, but you may also specify a format in situations where extraction won't work (such as with a SoundCloud stream)

xhrWithCredentials

Type: Boolean - Default: false

Whether to enable the withCredentials flag on XHR requests used to fetch audio files when using Web Audio API (see reference)

Data

playing

Type: Boolean

Whether audio is currently playing

muted

Type: Boolean

Whether the audio playback is muted

volume

Type: Number

The volume of the playback on a scale of 0 to 1

rate

Type: Number

The rate (speed) of the playback on a scale of 0.5 to 4

seek

Type: Number

The position of the playback in seconds

duration

Type: Number

The duration of the audio in seconds

progress

Type: Number

The progress of the playback on a scale of 0 to 1

Methods

play()

Start the playback

pause()

Pause the playback

togglePlayback()

Toggle playing or pausing the playback

stop()

Stop the playback (also resets the seek to 0)

mute()

Mute the playback

unmute()

Unmute the playback

toggleMute()

Toggle muting and unmuting the playback

setVolume(volume)

Set the volume of the playback (value is clamped between 0 and 1)

setRate(rate)

Set the rate (speed) of the playback (value is clamped between 0.5 and 4)

setSeek(seek)

Set the position of the playback (value is clamped between 0 and duration)

setProgress(progress)

Set the progress of the playback (value is clamped between 0 and 1)

License

MIT © Mick Dekkers

Keywords

aac

FAQs

Package last updated on 25 Nov 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts