Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ngx-video-timeline

Package Overview
Dependencies
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ngx-video-timeline

a video timeline for ng2+

  • 0.10.16
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
68
decreased by-12.82%
Maintainers
1
Weekly downloads
 
Created
Source

NgxVideoTimeline

Demo

example

samplePic

Installation

Compatibility
AngularLatest ngx-video-timeline compatible
170.10.17
160.10.16
150.10.15
140.10.14
130.10.13
120.10.12
110.10.11
100.10.10
90.10.9

Getting Started

npm i ngx-video-timeline --save

or

yarn add ngx-video-timeline

Usage

Import the module into your module

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { NgxVideoTimelineModule } from 'projects/timeline/src/lib/timeline.module';

@NgModule({
    declarations: [
        AppComponent
    ],
    imports: [
        BrowserModule,
        NgxVideoTimelineModule
    ],
    providers: [],
    bootstrap: [AppComponent]
})
export class AppModule { }

then use it in html

<ngx-video-timeline 
    class="canvas"
    [speed]="speed" 
    [playTime]="playTime" 
    [isPlayClick]="isPlayClick" 
    [videoCells]="videoCells" 
    [startTimeThreshold]="startTimeThreshold" 
    [endTimeThreshold]="endTimeThreshold" 
    [canvasHeight]="canvasHeight" 
    (playClick)="onPlayClick($event)"
>
</ngx-video-timeline>

in ts file

import { Component, OnInit } from '@angular/core';
import { VideoCellType } from 'projects/timeline/src/lib/timeline.component';

@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.scss']
})
export class AppComponent implements OnInit {
    title = 'ngx-video-timeline';

    speed: number;
    canvasHeight: number;
    startTimeThreshold: number;
    endTimeThreshold: number;
    videoCells: VideoCellType[];
    playTime: Date;
    isPlayClick: boolean;

    constructor() {
        this.speed = 10;
        this.isPlayClick = false;
        this.canvasHeight = 80;
        this.startTimeThreshold = new Date().getTime() - 1 * 3600 * 1000;
        this.endTimeThreshold = new Date().getTime() + 1 * 3600 * 1000;
        this.videoCells = [];
        this.playTime = new Date();
    }

    onPlay(): void {

        this.isPlayClick = true;
        this.startTimeThreshold = new Date().getTime() - 1 * 3600 * 1000;
    }

    onPause(): void {

        this.isPlayClick = false;
        // this.endTimeThreshold = new Date().getTime() + 1 * 3600 * 1000;
    }

    onPlayClick(date: number): void {
        // console.log(new Date(date));
        // this.canvasHeight = 60;
    }


    selectedTime(date: any): void {
        this.playTime = date.value;
    }

    changeVideo(): void {
        this.videoCells = [
            {
                beginTime: new Date().getTime() - 1 * 3600 * 1000,
                endTime: new Date().getTime() + 1 * 3600 * 1000,
                style: {
                    background: '#f3e5e4'
                }
            }
        ];
    }

    ngOnInit(): void {
    }
    onDragStart(): void {
        
    }
}

API

NameTypeDefault/ReturnDescription
[canvasHeight]number50Canvas height (not less than 50)
[playTime]number,string,Datenew Date().getTime() - 1 * 24 * 3600 * 1000Playback time (default: the previous day)
[speed]number1The video plays at twice the speed
[forWardValue]number1Fast forward/fast backward video
[startTimeThreshold]number,string,Datenew Date().getTime() - 1 * 12 * 3600 * 1000Left time threshold
[endTimeThreshold]number,string,Datenew Date().getTime() + 1 * 12 * 3600 * 1000Right time threshold
[videoCells]VideoCellType[]VideoCellType[]Video block (shown in different colors)
[borderColor]string"#fff"color of canvas border
[bgColor]string"#fff"color of canvas backgraound
[bottomLineColor]string"rgba(0,0,0,1)"color of the bottomLine
[verticalBarColor]string"rgba(0,0,0,1)"color of the verticalBar
[playBarColor]string"#448aff"color of the playBar
(playClick)anyplayTime(Current timestamp)PlayTime starts playing at speed
(mouseUp)anyreturnTime(Current timestamp)Returns the current time when the mouse is released
(mouseDown)anyreturnTime(Current timestamp)Returns the current time when the mouse is pressed

Interfate VideoCellType

fieldnametyperequired/optionaldefault
beginTimeThe start timenumber,stringrequiredundefined
endTimeThe end of timenumber,stringrequiredundefined
styleThe background colorbooleanoptionalVideoCellStyleType

Interfate VideoCellStyleType

fieldnametyperequired/optionaldefault
backgroundThe background colorstringrequiredundefined

#License ngx-video-timeline is licensed under a MIT License.

Keywords

FAQs

Package last updated on 06 Dec 2023

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc