annotate web/light9-vidref-replay.js @ 2450:a4052905ca7d default tip

notes about how rdfdb syncs, or should sync
author drewp@bigasterisk.com
date Mon, 03 Jun 2024 23:01:54 -0700
parents 4556eebe5d73
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
1 import { LitElement, TemplateResult, html, css } from '/node_modules/lit-element/lit-element.js';
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
2 import debug from '/lib/debug/debug-build-es6.js';
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
3 import _ from '/lib/underscore/underscore-min-es6.js';
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
4 import { rounding } from '/node_modules/significant-rounding/index.js';
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
5
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
6 const log = debug('replay');
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
7
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
8 class Light9VidrefReplay extends LitElement {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
9
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
10 static get properties() {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
11 return {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
12 uri: { type: String },
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
13 videoUrl: { type: String },
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
14 songToVideo: { type: Object },
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
15 videoTime: { type: Number },
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
16 outVideoCurrentTime: { type: Number },
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
17 timeErr: { type: Number },
1994
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
18 playRate: { type: Number },
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
19 size: { type: String, attribute: true }
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
20 };
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
21 }
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
22
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
23 estimateRate() {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
24 const n = this.songToVideo.length;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
25 const x0 = Math.round(n * .3);
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
26 const x1 = Math.round(n * .6);
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
27 const pt0 = this.songToVideo[x0];
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
28 const pt1 = this.songToVideo[x1];
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
29 return (pt1[1] - pt0[1]) / (pt1[0] - pt0[0]);
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
30 }
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
31
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
32 setVideoTimeFromSongTime(songTime, isPlaying) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
33 if (!this.songToVideo || !this.outVideo || this.outVideo.readyState < 1) {
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
34 return;
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
35 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
36 const i = _.sortedIndex(this.songToVideo, [songTime],
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
37 (row) => { return row[0]; });
2017
d7ea6d473bf6 don't let <video> play and get corrected when we're out of bounds, which made a bad flicker
drewp@bigasterisk.com
parents: 2001
diff changeset
38 if (i == 0 || i > this.songToVideo.length - 1) {
d7ea6d473bf6 don't let <video> play and get corrected when we're out of bounds, which made a bad flicker
drewp@bigasterisk.com
parents: 2001
diff changeset
39 isPlaying = false;
d7ea6d473bf6 don't let <video> play and get corrected when we're out of bounds, which made a bad flicker
drewp@bigasterisk.com
parents: 2001
diff changeset
40 }
d7ea6d473bf6 don't let <video> play and get corrected when we're out of bounds, which made a bad flicker
drewp@bigasterisk.com
parents: 2001
diff changeset
41
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
42 this.videoTime = this.songToVideo[Math.max(0, i - 1)][1];
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
43
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
44 this.outVideoCurrentTime = this.outVideo.currentTime;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
45
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
46 if (isPlaying) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
47 if (this.outVideo.paused) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
48 this.outVideo.play();
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
49 this.setRate(this.estimateRate());
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
50 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
51 const err = this.outVideo.currentTime - this.videoTime;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
52 this.timeErr = err;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
53
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
54 if (Math.abs(err) > window.thresh) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
55 this.outVideo.currentTime = this.videoTime;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
56 const p = window.p;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
57 if (err > 0) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
58 this.setRate(this.playRate - err * p);
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
59 } else {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
60 this.setRate(this.playRate - err * p);
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
61 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
62 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
63 } else {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
64 this.outVideo.pause();
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
65 this.outVideoCurrentTime = this.outVideo.currentTime = this.videoTime;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
66 this.timeErr = 0;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
67 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
68 }
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
69
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
70 setRate(r) {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
71 this.playRate = Math.max(.1, Math.min(4, r));
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
72 this.outVideo.playbackRate = this.playRate;
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
73 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
74
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
75 firstUpdated() {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
76 this.outVideo = this.shadowRoot.querySelector('#replay');
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
77 this.playRate = this.outVideo.playbackRate = 1.0;
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
78 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
79
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
80 onDelete() {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
81 const u = new URL(window.location.href);
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
82 u.pathname = '/vidref/clips'
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
83 u.searchParams.set('uri', this.uri);
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
84 fetch(u.toString(), {method: 'DELETE'}).then((resp) => {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
85 let event = new CustomEvent('clips-changed', {detail: {}});
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
86 this.dispatchEvent(event);
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
87 });
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
88 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
89
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
90 static get styles() {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
91 return css`
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
92 :host {
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
93 border: 2px solid #46a79f;
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
94 display: flex;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
95 flex-direction: column;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
96 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
97 div {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
98 padding: 5px;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
99 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
100 .num {
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
101 display: inline-block;
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
102 width: 4em;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
103 color: #29ffa0;
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
104 }
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
105 a {
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
106 color: rgb(97, 97, 255);
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
107 }
2021
286a34d9ccba vidref videos fill browser width
drewp@bigasterisk.com
parents: 2018
diff changeset
108 video {
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
109 width: 100%;
1994
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
110 }
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
111 `;
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
112 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
113
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
114 render() {
1994
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
115 let details = '';
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
116 if (this.size != 'small') {
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
117 details = html`
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
118 <div>
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
119 take is <a href="${this.uri}">${this.uri}</a>
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
120 (${Object.keys(this.songToVideo).length} frames)
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
121 <button @click="${this.onDelete}">Delete</button>
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
122 </div>
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
123 <!-- here, put a little canvas showing what coverage we have with the
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
124 actual/goal time cursors -->
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
125 <div>
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
126 video time should be <span class="num">${this.videoTime} </span>
2022
f5fbc6ec5f87 try to reduce flicker on vidref player details
drewp@bigasterisk.com
parents: 2021
diff changeset
127 actual = <span class="num">${rounding(this.outVideoCurrentTime, 3, 3, true)}</span>,
f5fbc6ec5f87 try to reduce flicker on vidref player details
drewp@bigasterisk.com
parents: 2021
diff changeset
128 err = <span class="num">${rounding(this.timeErr, 3, 4, true)}</span>
f5fbc6ec5f87 try to reduce flicker on vidref player details
drewp@bigasterisk.com
parents: 2021
diff changeset
129 rate = <span class="num">${rounding(this.playRate, 3, 3, true)}</span>
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
130 </div>
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
131 `;
1994
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
132 }
1b690005aabd little vidref player inside timeline
Drew Perttula <drewp@bigasterisk.com>
parents: 1954
diff changeset
133 return html`
2023
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
134 <video id="replay" class="size-${this.size}" src="${this.videoUrl}"></video>
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
135 ${details}
b64a4db527e2 whitespace
drewp@bigasterisk.com
parents: 2022
diff changeset
136 `;
1951
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
137
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
138 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
139 }
9f0f2b39ad95 vidref web is working
Drew Perttula <drewp@bigasterisk.com>
parents:
diff changeset
140 customElements.define('light9-vidref-replay', Light9VidrefReplay);
1954
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
141 window.thresh=.3
3ae1e7f8db23 vidref playback smoothness, autodelete short clips, manual-delete clips, vidref keyboard shortcuts
Drew Perttula <drewp@bigasterisk.com>
parents: 1951
diff changeset
142 window.p=.3