Plyr - Video Player Plugin

Demo to preview the settings

Introduction

Zeroqode Video Player Plugin Plyr's simple, lightweight, accessible and customizable library with HTML5, YouTube, and Vimeo media player that supports modern browsers.
This video player comes with a range of Events, Actions and States to work with out of the box.

Plugin Element proprieties

The plugin comes with 3 visual elements which can be used for video playback by configuring them accordingly.
💡
In Chrome, uncheck “Use hardware acceleration when available” If you’re using the plugin on the new responsive version to avoid video player flicker.
Image without caption

Bubble Video

Image without caption
Image without caption
Fields:
Title
Description
Type
Video Source
Video Source
Static file : upload a single file via static file Dynamic link: provide a dynamic link from db or list of files from database
File
HLS Source
HLS source
Used for HLS Streaming content (m3u8 playlist)
Text (optional)
Video Quality Sources
Video sources type
Represent a videos with sources
App Type (optional)
Video Sources
Represent a list of video URLs
Filed of Video sources type, represent Text, image or file(list)
Qualities
Represent a list of video source quality (integer). Example: 576, 720, 1080
Filed of Video sources type, represent Number(list)
Video Data source
List of items representing “Video Sources”
Item reperesenting Video sources type (optional)
Default Quality
Quality of video on page load
Number (optional)
____________________________________
Poster
Static file: upload an image via uploader to set as poster Dynamic link: provide a dynamic link source to file from database
File (optional)
Enable ads?
Yes/no field which let's you enable or disable ads for your bubble video
Checkbox (yes/no)
VI publisher ID
Unique publisher identifier from https://www.vi.ai/
Text (optional)
VAST URL
Unique url tag with parameters for advertising
Text (optional)
Stretch player
Specify whether the player needs to stretch to the entire parent group
Checkbox (yes/no)
Playsinline
Video player playsinline with IOS
Checkbox (yes/no)
Control Bar Style:
Elements color
Specify the color of the control bar button.
Color (optional)
Progress bar color
Specify the color of the time progress bar.
Color (optional)
Volume bar color
Specify the color of the volume bar.
Color (optional)
____________________________________
Center Play Button Style:
Button color
Specify the color of the play button center element.
Color (optional)
Background color
Specify the color of the play button background.
Color (optional)
____________________________________
Hover effect color
Color that appears on hover over the element (play, sound, settings etc.).
Color (optional)
Landscape on
The field locks the screen orientation to landscape mode when the fullscreen mode is active.
Checkbox (yes/no)

YouTube Video

Image without caption
Proprieties fields:
Video ID: provide an video ID from youtube (ex: EGn-QtxMEPI) Poster : provide a poster image (either dynamic or static file) Static file: upload an image via uploader to set as poster Dynamic link: provide a dynamic link source to file from database Playsinline (NEW!) : Enable the playsinline attribute

Vimeo Video

Image without caption
Proprieties fields:
Video ID: provide an video ID from vimeo (ex: 480825325) Poster: provide a poster image (either dynamic or static file) Static file: upload an image via uploader to set as poster Dynamic link: provide a dynamic link source to file from database

Installation and Setup

Plugin installation and setup

All you need to do is to install the plugin, drag one of three visual elements of the plugin onto the page, give it a source and you're ready to go.
Once one of the elements is placed on the page, the user immediately gets access to all of the states and events, also actions that control the element itself.

Setting up VAST and vi.ai profiles

For creating a VAST Tag URL you can use:

  1. Google AdManager Account If you use Google Ad Manager (Google DFP), generating a VAST Tag is pretty straightforward.
    1. 1. Sign in to Google Ad Manager.
  1. Click Inventory and then Ad units.
  1. Locate and click your video ad unit.
  1. Click Generate tags.
  1. Complete the 3-step process and click Continue after each step (Tag type, Tag Options, and Tag Results)
  1. Click done.
2. Third-Party Tools In addition, there are a couple of VAST tag generators (offered by the video players) in the market which can help you generate the template.
If you already have a vast tag, then you can use it in the player. Just paste it into the dedicated field and check the enable ads checkbox
Image without caption
For enabling ads using vi.ai platform
You must create a new account (or use the one created) at https://www.vi.ai/ as an advertiser. Integrate your content into the VI platform per their instructions and get your publisher ID which can be used in the dedicated field and check the enable ads checkbox.
Paste your publisher ID into the same field in the element properties and check the box.
Image without caption

Plugin Events, Actions and States

Each element of the plugin has the exposed states shown on the screens below. See their Title and Type

Exposed states

Title
Description
Type
Playing
Returns a boolean indicating if the current player is playing.
Checkbox (yes/no)
Paused
Returns a boolean indicating if the current player is paused.
Checkbox (yes/no)
Stoped
Returns a boolean indicating if the current player is stopped.
Checkbox (yes/no)
Ended
Returns a boolean indicating if the current player has finished playback.
Checkbox (yes/no)
Buffered
Returns a float between 0 and 100 indicating how much of the media is buffered
Number
Current Time
Gets the current time for the player.
Number
Seeking
Returns a boolean indicating if the current player is seeking.
Checkbox (yes/no)
Duration
Returns the duration for the current media.
Number
Volume
Gets the volume for the player.
Number
Muted
Gets the muted state of the player.
Checkbox (yes/no)
Has Audio
Returns a boolean indicating if the current media has an audio track.
Checkbox (yes/no)
Speed
Gets the speed for the player.
Number
Loop
Gets the current loop state of the player.
Checkbox (yes/no)
Source
Gets the current source for the player.
File
Poster
Gets the current poster image for the player.
File
PiP
Gets the picture-in-picture state of the player. This currently only supported on Safari 10+ (on MacOS Sierra+ and iOS 10+) and Chrome 70+.
Checkbox (yes/no)
Ratio
Gets the video aspect ratio.
Number
Quality
Current quality level
Number
Each element of the plugin can trigger events shown on the screenshot below.

Element Events

Title
Description
Ready
Triggered when the player instance is ready.
Play
Sent when playback of the media starts after having been paused; that is, when playback is resumed after a prior pause event.
Pause
Sent when playback is paused.
Time Update
The time indicated by the element’s current time attribute has changed.
Volume Change
Sent when the audio volume changes (both when the volume is set and when the muted state is changed).
Seeking
Sent when a seek operation begins.
Seeked
Sent when a seek operation completes.
Rate Change
Sent when the playback speed changes.
Ended
Sent when playback completes.
Controls Hidden
Sent when the controls are hidden.
Controls Shown
Sent when the controls are shown.
Playing
Sent when the media begins to play (either for the first time, after having been paused, or after ending and then restarting).
Captions Enabled
Sent when captions are enabled.
Captions Disabled
Sent when captions are disabled.
Language Change
Sent when the caption language is changed.
Error
Sent when an error occurs.
And also each element of the plugin has a set of actions available for the user.

Element Actions

Toggle Mute

Enter fullscreen

Exit fullscreen

Open airplay (iOS)

Play

Pause

Stop

Restart

Forward

Rewind

Seek To

Set Volume

Toggle Controls

Toggle Play

Toggle Loop

Change Video ID

Changelogs

Update: 27/11/2020 -

  • Added the ability to display ads to the bubble video player element from the vi.ai platform and from the VAST URL.
  • Fixed bugs with elements size

Update: 18/12/2020 -

  • Added new ability to add the HLS streaming videos for 'Bubble video' plugin element

Update: 28/04/2021 -

  • Fixed display issues

Update: 24/05/2021

  • Added new option to stretch player to the parent group
Image without caption

Update: 29/08/2021 - Version: 1.15.0

  • Added the ability to customize control bar color​​
Image without caption
Image without caption

Update: 28/09/2021 - Version: 1.16.0

  • Added custom style settings for the control panel and the playsinline checkbox for iOS
Image without caption
Note: When playsinline checkbox on the plugin video element is checked - the played video is displayed within the frame of the plugin video element, and plugin element states are not available. When playsinline checkbox is unchecked - the played video is displayed in the fullscreen regime, and plugin element states are available.

​Update: 28/10/2021 - Version: 1.17.0

  • Added the ability to lock the screen in landscape mode
Image without caption

Update: 08/12/2021 - Version: 1.18.0

  • Minor fix

Update: 20/12/2021 - Version: 1.19.0

  • Removed Element ID field

Update: 08/04/2022 - Version: 1.20.0

  • Fixed display of video parameters on IOS

Update: 09/06/2022 - Version: 1.21.0

  • Updated for new responsive

Update: 11/10/2022 - Version: 1.22.0

  • Adapted to the new responsive engine

Update 01/12/22 - Version: 1.23.0.

  • Removed full-screen button on IOS only.

Update 5/12/22 - Version: 1.24.0.

  • Minor fixes

Update 13/12/22 - Version: 1.25.0

  • minor fixes

Update 16/12/22 - Version: 1.27.0

  • minor fixes

Update 27/01/23 - Version: 1.28.0

  • Added new action "change video id" for youtube and vimeo elements

Update 15/02/23 - Version: 1.29.0

  • Minor Fixes.

Update: 22.02.23 - Version 1.30.0

  • updated the description

Update: 23.02.23 - Version 1.31.0

  • deleted the icons

Update: 19.06.23 - Version 1.32.0

  • Updated the description

Update: 11.07.23 - Version 1.33.0

  • updated description

Update: 06.09.23 - Version 1.34.0

  • Obfuscation

Update: 12.09.23 - Version 1.35.0

  • minor updates

Update: 15.09.23 - Version 1.36.0

  • updated description

Update: 09.10.23 - Version 1.37.0

  • updated description

Update: 19.10.23 - Version 1.38.0

  • updated description

Update: 19.06.24 - Version 1.39.0

  • Minor update

Update: 02.07.24 - Version 1.40.0

  • Added quality switcher for HLS videos, added new fields for list video sources with different qualities

Update: 02.07.24 - Version 1.41.0

  • Fixed unnecessary re-render HLS video

Update: 10.09.24 - Version 1.43.0

  • Added border roundness for all players
Share
Content