Rob Watson
9ae4335b19
Disable buttons when zooming is not possible
2022-01-18 18:23:00 +01:00
Rob Watson
a4e9ebca3b
Update duration display on selection change
2022-01-18 18:23:00 +01:00
Rob Watson
f386e12f72
Add option to trigger "selection changed" callback in realtime
2022-01-18 18:23:00 +01:00
Rob Watson
bb3366ac9a
Rename method, fix useEffect dependencies
2022-01-18 18:23:00 +01:00
Rob Watson
41fe0ce2b1
Centre zoom in/out on selection if availble
2022-01-18 18:23:00 +01:00
Rob Watson
aa80c9eb7e
Bug fix: avoid space bar conflict with player interface
2022-01-18 18:23:00 +01:00
Rob Watson
9d90ed51e6
Bug fix: ensure playback ends at selection end
2022-01-18 18:23:00 +01:00
Rob Watson
a33057651d
Update frontend with Tailwind.
...
- Replace inline CSS with Tailwind classes
- Improve page layout and scaling
- Add icons to ControlBar
- Small refactor of play/pause logic
- Add basic (not by any means final) colours
2022-01-18 18:23:00 +01:00
Rob Watson
ec3ac8996d
Add tailwindcss
2022-01-18 18:23:00 +01:00
Rob Watson
d136e00c59
Refactor zoom in/out, add test coverage
continuous-integration/drone/push Build is passing
Details
2022-01-16 08:58:07 +01:00
Rob Watson
aa4d235c0c
frontend: reduce redraw rate to 20ms
continuous-integration/drone/push Build is passing
Details
2022-01-15 10:14:04 +01:00
Rob Watson
d8173cdace
Add framesToDuration helper
2022-01-15 10:13:57 +01:00
Rob Watson
ed964cb58f
Add toHHMMSS helper
2022-01-15 10:13:52 +01:00
Rob Watson
f33fa149fc
Remove most useCallback usages
...
It is unclear whether these are actually significantly improving
performance and they add non-trivial complexity to the codebase,
especially when under heavy frontend development. Removing most of them
for now until it can be shown they are actually worthwhile.
2022-01-14 12:24:59 +01:00
Rob Watson
35b62f1e59
Fetch title, description and author from Youtube
continuous-integration/drone/push Build is passing
Details
2022-01-13 20:05:09 +01:00
Rob Watson
aabd0f3252
HudCanvas: add useCallbacks
continuous-integration/drone/push Build is passing
Details
2022-01-13 07:59:48 +01:00
Rob Watson
b0ccf17527
poc: legacy HTTP download for audio clips
continuous-integration/drone/push Build is passing
Details
2022-01-10 21:35:31 +01:00
Rob Watson
04601bab2e
frontend: Add Zoom buttons
continuous-integration/drone/push Build is failing
Details
2022-01-07 19:51:53 +01:00
Michael Evans
335efb23e1
Remove redundant function declaration from App.tsx
continuous-integration/drone/push Build is passing
Details
2022-01-01 17:26:10 -06:00
Michael Evans
22dd92f339
Extract millisFromDuration helper and add tests
continuous-integration/drone/push Build is passing
Details
2022-01-01 17:23:58 -06:00
Rob Watson
2b1a668c9d
Add GetAudioSegment flow
continuous-integration/drone/push Build is passing
Details
2021-12-29 16:41:43 +01:00
Rob Watson
2445ebc02f
Rename gRPC endpoints and service methods.
...
- GetAudio > GetPeaks
- GetAudioSegment > GetPeaksForSegment
2021-12-17 17:30:53 +01:00
Rob Watson
34681821e4
Improve waveform selection behaviour
continuous-integration/drone/push Build is passing
Details
2021-12-13 05:10:07 +01:00
Rob Watson
545ac72faa
HudCanvas: handle select-nothing
2021-12-12 11:04:42 +01:00
Rob Watson
b876fb915a
Update frontend
...
- Add HudCanvas component to Waveform
- Allow waveform to be selectable
- Fix selection rendering on viewport change
- Add spacebar handler
2021-12-11 17:29:31 +01:00
Rob Watson
65cc365717
Add debug view to App component
2021-12-11 17:25:30 +01:00
Rob Watson
c849b8d2e6
Extract reusable HudCanvas component
2021-12-06 23:52:24 +01:00
Rob Watson
935c2add2a
Add generated code to Git
2021-12-05 11:56:33 +01:00
Rob Watson
e486aab770
Prefer React.memo to useMemo when memoizing components
2021-12-04 05:34:17 +01:00
Rob Watson
155e41136c
frontend: Avoid re-rendering static components during playback
2021-12-02 20:13:06 +01:00
Rob Watson
0cc1fd8272
Frontend fixes
2021-12-02 15:55:14 +01:00
Rob Watson
642ce6e349
Re-enable audio playback
2021-11-29 18:44:31 +01:00
Rob Watson
1552fc19a1
Send presigned encoded audio URL to the frontend
2021-11-29 15:55:11 +01:00
Rob Watson
e1a15a5e69
Add Dockerfile and staging deployment setup
2021-11-27 14:26:14 +01:00
Rob Watson
b3559bb94e
Refactor Overview component
2021-11-25 19:02:37 +01:00
Rob Watson
33e6814fce
Handle mouseUp event outside of Overview component
2021-11-23 16:16:00 +01:00
Rob Watson
8a69a07cc7
Refactor frontend thumbnail handling
2021-11-22 19:20:40 +01:00
Rob Watson
2f7aae1d6e
Add video thumbnail support
2021-11-21 20:43:40 +01:00
Rob Watson
4afec11074
Get video from Youtube, send progress via gRPC
2021-11-21 16:09:30 +01:00
Rob Watson
b864835f40
Overview: render viewport on first render
2021-11-21 16:09:30 +01:00
Rob Watson
542080e400
Implement GetAudioSegment, add panic recovery handler
2021-11-21 16:09:30 +01:00
Rob Watson
99659adb9e
Basic error handling when reading peaks
2021-11-21 16:09:30 +01:00
Rob Watson
c1ac075a88
Render WaveformCanvas via peaks
2021-11-21 16:09:30 +01:00
Rob Watson
97a55632ef
Fix panic when reading blocks not divisible by 4
2021-11-21 16:09:30 +01:00
Rob Watson
5cbcfe22cf
More progress
2021-11-21 16:09:30 +01:00
Rob Watson
7c5b22a407
Introduce PG store
2021-11-21 16:09:28 +01:00
Rob Watson
281d5ce8a2
Start to refactor and wire in frontend
2021-10-29 14:52:31 +02:00
Rob Watson
0dc8175fb0
poc: grpc-web
2021-10-22 21:30:09 +02:00
Rob Watson
43e2592de8
Refactor frontend
2021-10-16 21:23:04 +02:00
Rob Watson
084cabaca9
poc: Add SeekBar
2021-09-30 21:09:09 +02:00