boclips / boclips-player Goto Github PK
View Code? Open in Web Editor NEWA framework agnostic player for serving boclips videos
License: BSD 3-Clause "New" or "Revised" License
A framework agnostic player for serving boclips videos
License: BSD 3-Clause "New" or "Revised" License
Currently, when the BoCips Player fails to load the video because of some error, it reflects on the UI but I could not find a way to catch the error on the component level where we are loading the BoClips player.
It's important to have this feature:
If we can have a callback function onError
similar to onEnd
which passes the error as a callback argument.
const player = PlayerFactory.get(playerContainer);
player.onError((error) => {
monitorError(error);
});
Working towards resolving vulnerabilities. We have an outstanding one that tracks back to this package.
[email protected] requires axios@>=0.21.1 <1.0.0
No patched version available for axios
Are you locked out of 1.x because of the breaking changes or anything in specific?
Currently player's forward button fast forward the video by 10s. If a user click forward button when < 10s are left for a video, video is paused at random point in player's progress bar and video is paused.
This is only happening only in Safari browser.
Video's progress bar should be updated correctly at video end time.
High priority - Our most of the user base use Chrome & Safari and this is happening for all videos.
OS: macOS Big Sur v11.3.1
Browser - Safari Version 14.1 (16611.1.21.161.6)
We have found multiple accessibility issues on player.
contrast between video current time text colour and background colours does not meet WCAG 2 AA contrast ratio thresholds. -- This is happening for videos with light background colour. For example: 5fb64a0cac970d61b36682bb (first screenshot)
Solution could be that we increase the gradient of controls background.
Priority - Critical
Setting options are not closing after the tabbing away to next video button.
Steps to reproduce:
This is causing more issues like if menu option is opened, enter key press is always captured by setting menu element.
Priority - Critical
track
element should be used to show captions.
Captions are available for most of the videos but they are not shown correctly as per a11y practice. As per deque, captions should be shown using track element - https://dequeuniversity.com/rules/axe/4.3/video-caption?application=AxeChrome
Priority - Moderate
For video current time, aria-label is used but no role is added.
Priority - Moderate
Tab is not working as expected for player controls.
Steps to reproduce:
Priority - Critical
Hello,
I use the video longer then 20 minute, if i set frameCount = 1200(1 sec : 1 pic), the image api will crash. Image loading time will be to long if api does not crash.
But if i set frameCount = 120(10 sec : 1 pic), it may not be accurate.
If my video's time is getting longer, seekpreview accuracy is getting lower.
Have any solution to fix it?
Currently there is very limited support to send analytics event outside of Boclips. For example, a third party wants to consume this player with boclips videos, they would like to send events to their analytics system. But right now, the option to configure analytics is: https://github.com/boclips/boclips-player/blob/master/demo/static/index.html#L17. handleOnSegmentPlayback
helps but this handler is only triggered on pausing the video or forwarding / seeking the video by clicking on progress bar. This function does not return how the event was triggered (By clicking on pause button or clicking on progress bar), which can cause data discrepancy.
boclips-player should support following use-cases for analytics:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.