404c11909b
Bug fix: update waveform after fetching audio from Youtube
continuous-integration/drone/push Build is passing
2022-01-25 22:47:26 +01:00
5a1ebb7c3a
Send AudioFrames in gRPC message when available
continuous-integration/drone/push Build is passing
2022-01-25 20:06:19 +01:00
48c84a7efa
Bug fix: avoid NaN in helper
2022-01-25 20:06:15 +01:00
5af8f0c319
HudCanvas: extract HudCanvasState
continuous-integration/drone/push Build is passing
2022-01-24 20:33:16 +01:00
4f443af8fa
HudCanvas: draw hover position
continuous-integration/drone/push Build is passing
2022-01-18 18:23:00 +01:00
9ae4335b19
Disable buttons when zooming is not possible
2022-01-18 18:23:00 +01:00
a4e9ebca3b
Update duration display on selection change
2022-01-18 18:23:00 +01:00
f386e12f72
Add option to trigger "selection changed" callback in realtime
2022-01-18 18:23:00 +01:00
bb3366ac9a
Rename method, fix useEffect dependencies
2022-01-18 18:23:00 +01:00
41fe0ce2b1
Centre zoom in/out on selection if availble
2022-01-18 18:23:00 +01:00
aa80c9eb7e
Bug fix: avoid space bar conflict with player interface
2022-01-18 18:23:00 +01:00
9d90ed51e6
Bug fix: ensure playback ends at selection end
2022-01-18 18:23:00 +01:00
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
ec3ac8996d
Add tailwindcss
2022-01-18 18:23:00 +01:00
d988a99f78
Update react-scripts -> 5.x
2022-01-18 18:23:00 +01:00
58bbc06e6f
Update deployment configuration to enable prefixes
continuous-integration/drone/push Build is passing
2022-01-18 17:56:37 +01:00
fbbb2e2fda
config: Add prefix support and test coverage
continuous-integration/drone/push Build is passing
2022-01-18 08:23:16 +01:00
d136e00c59
Refactor zoom in/out, add test coverage
continuous-integration/drone/push Build is passing
2022-01-16 08:58:07 +01:00
aa4d235c0c
frontend: reduce redraw rate to 20ms
continuous-integration/drone/push Build is passing
2022-01-15 10:14:04 +01:00
d8173cdace
Add framesToDuration helper
2022-01-15 10:13:57 +01:00
ed964cb58f
Add toHHMMSS helper
2022-01-15 10:13:52 +01:00
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
35b62f1e59
Fetch title, description and author from Youtube
continuous-integration/drone/push Build is passing
2022-01-13 20:05:09 +01:00
aabd0f3252
HudCanvas: add useCallbacks
continuous-integration/drone/push Build is passing
2022-01-13 07:59:48 +01:00
5e27c3db9a
Fix filename typo
continuous-integration/drone/push Build is passing
2022-01-10 21:51:17 +01:00
b0ccf17527
poc: legacy HTTP download for audio clips
continuous-integration/drone/push Build is passing
2022-01-10 21:35:31 +01:00
af0674eb11
Add POST /api/media_sets/:id/clip.
...
continuous-integration/drone Build is passing
This will allow for an HTTP/1.1 fallback for
MediaSetService.GetAudioSegment, enabling download of audio clips in
browsers that do not support the File System Access API.
2022-01-10 18:52:04 +01:00
c7d5541379
Refactor response handling.
...
- Add FileSystem implementation to handle HTTP index files but constrain
directory listings
- Refactor server implementation into a dedicated handler struct
- Add test coverage
2022-01-10 18:45:10 +01:00
8a26b75127
Revert "Disable directory listings in http.FileServer."
...
continuous-integration/drone/push Build is passing
The middleware approach breaks automatic handling of index files, which
in turn breaks assets serving. A custom file system will be required
instead.
This reverts commit 237747718870a43e47462c9b088681fb1cc1f817.
2022-01-10 08:39:03 +01:00
2377477188
Disable directory listings in http.FileServer.
...
continuous-integration/drone/push Build is passing
Closes #6
2022-01-08 12:16:30 +01:00
8e9a4cf8c3
Fix linter error
continuous-integration/drone/push Build is passing
2022-01-07 19:54:56 +01:00
04601bab2e
frontend: Add Zoom buttons
continuous-integration/drone/push Build is failing
2022-01-07 19:51:53 +01:00
06fce9af95
Refactor MediaSetService.GetPeaksForSegment.
...
continuous-integration/drone/push Build is failing
- Fix bug where the function would return empty high bins when
framesPerBin was a low value (< ~10)
- Improve readability
- Add error test cases
2022-01-07 13:34:18 +01:00
5a4ee4e34f
Add FFmpeg WorkerPool
continuous-integration/drone/push Build is passing
2022-01-05 19:49:47 +01:00
33ee9645e7
Update backend dependencies
continuous-integration/drone/push Build is passing
2022-01-04 06:57:28 +01:00
6cb462f769
Add test coverage for getVideoFromYoutube flow
continuous-integration/drone/push Build is passing
2022-01-04 06:51:25 +01:00
932648a44b
Add test coverage for getVideoFromFileStore flow
continuous-integration/drone/push Build is passing
2022-01-03 21:01:17 +01:00
12e6e73976
Remove extraenous line
continuous-integration/drone/push Build is passing
2022-01-03 18:54:03 +01:00
66c65694ae
Add test coverage for getAudioFromYoutube flow
continuous-integration/drone/push Build is passing
2022-01-03 18:44:19 +01:00
176a1cd8c1
Revert "FileStore.PutObject: Accept io.ReadCloser"
...
This turned out to actually make testing more difficult, as the
FileStore objects are generally mocked themselves and moving the Close()
call inside them introduced IO problems in the test suite.
This reverts commit a063f85eca5dd3f983bc9b790fd68108820cc730.
2022-01-03 13:32:39 +01:00
a063f85eca
FileStore.PutObject: Accept io.ReadCloser
...
continuous-integration/drone/push Build is passing
Accepting a ReadCloser in place of a Reader allows the FileSystem
implementation to handle closing the reader, which in turn simplifies
downstream code.
2022-01-03 09:57:49 +01:00
959f5f0a2d
Update README to include testing information
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-01-01 17:30:48 -06:00
335efb23e1
Remove redundant function declaration from App.tsx
continuous-integration/drone/push Build is passing
2022-01-01 17:26:10 -06:00
22dd92f339
Extract millisFromDuration helper and add tests
continuous-integration/drone/push Build is passing
2022-01-01 17:23:58 -06:00
9ef4cc5853
Fix flaky test
continuous-integration/drone/push Build is passing
2021-12-31 19:53:46 +01:00
4e4201f7d2
Add test coverage for getPeaksFromFileStore flow
continuous-integration/drone/push Build is passing
2021-12-31 19:25:55 +01:00
37552a150e
Add frontend build step to CI
continuous-integration/drone/push Build is passing
2021-12-30 08:14:41 +00:00
2b1a668c9d
Add GetAudioSegment flow
continuous-integration/drone/push Build is passing
2021-12-29 16:41:43 +01:00
dd526b6916
Extract ModuloReader from service.go
continuous-integration/drone/push Build is passing
2021-12-17 17:52:59 +01:00
2445ebc02f
Rename gRPC endpoints and service methods.
...
- GetAudio > GetPeaks
- GetAudioSegment > GetPeaksForSegment
2021-12-17 17:30:53 +01:00