Rob Watson
691099da3a
Update backend dependencies
continuous-integration/drone/push Build is passing
Details
2022-02-10 20:00:53 +01:00
Rob Watson
a8ba36a0e1
GetAudio: avoid leaking goroutine on cancellation
continuous-integration/drone/push Build is passing
Details
2022-02-05 07:46:52 +01:00
Rob Watson
54e9bc0d2c
Pass context from gRPC streams to background tasks
2022-02-05 07:44:44 +01:00
Rob Watson
6dde29cdcf
GetPeaksForSegment: add extra invalid arg check
2022-02-04 16:22:06 +01:00
Rob Watson
bff15098e6
Enable grpc-web CORS origin checking
continuous-integration/drone/push Build is passing
Details
2022-01-27 20:40:33 +01:00
Rob Watson
cf90100c5f
Add CORS headers to HTTP handlers
continuous-integration/drone/push Build is passing
Details
2022-01-26 19:27:57 +01:00
Rob Watson
698b97e904
Update backend dependencies
continuous-integration/drone/push Build is passing
Details
2022-01-26 07:32:34 +01:00
Rob Watson
5a1ebb7c3a
Send AudioFrames in gRPC message when available
continuous-integration/drone/push Build is passing
Details
2022-01-25 20:06:19 +01:00
Rob Watson
58bbc06e6f
Update deployment configuration to enable prefixes
continuous-integration/drone/push Build is passing
Details
2022-01-18 17:56:37 +01:00
Rob Watson
fbbb2e2fda
config: Add prefix support and test coverage
continuous-integration/drone/push Build is passing
Details
2022-01-18 08:23:16 +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
5e27c3db9a
Fix filename typo
continuous-integration/drone/push Build is passing
Details
2022-01-10 21:51:17 +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
af0674eb11
Add POST /api/media_sets/:id/clip.
...
continuous-integration/drone Build is passing
Details
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
Rob Watson
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
Rob Watson
8a26b75127
Revert "Disable directory listings in http.FileServer."
...
continuous-integration/drone/push Build is passing
Details
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 2377477188
.
2022-01-10 08:39:03 +01:00
Rob Watson
2377477188
Disable directory listings in http.FileServer.
...
continuous-integration/drone/push Build is passing
Details
Closes #6
2022-01-08 12:16:30 +01:00
Rob Watson
8e9a4cf8c3
Fix linter error
continuous-integration/drone/push Build is passing
Details
2022-01-07 19:54:56 +01:00
Rob Watson
06fce9af95
Refactor MediaSetService.GetPeaksForSegment.
...
continuous-integration/drone/push Build is failing
Details
- 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
Rob Watson
5a4ee4e34f
Add FFmpeg WorkerPool
continuous-integration/drone/push Build is passing
Details
2022-01-05 19:49:47 +01:00
Rob Watson
33ee9645e7
Update backend dependencies
continuous-integration/drone/push Build is passing
Details
2022-01-04 06:57:28 +01:00
Rob Watson
6cb462f769
Add test coverage for getVideoFromYoutube flow
continuous-integration/drone/push Build is passing
Details
2022-01-04 06:51:25 +01:00
Rob Watson
932648a44b
Add test coverage for getVideoFromFileStore flow
continuous-integration/drone/push Build is passing
Details
2022-01-03 21:01:17 +01:00
Rob Watson
12e6e73976
Remove extraenous line
continuous-integration/drone/push Build is passing
Details
2022-01-03 18:54:03 +01:00
Rob Watson
66c65694ae
Add test coverage for getAudioFromYoutube flow
continuous-integration/drone/push Build is passing
Details
2022-01-03 18:44:19 +01:00
Rob Watson
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 a063f85eca
.
2022-01-03 13:32:39 +01:00
Rob Watson
a063f85eca
FileStore.PutObject: Accept io.ReadCloser
...
continuous-integration/drone/push Build is passing
Details
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
Rob Watson
9ef4cc5853
Fix flaky test
continuous-integration/drone/push Build is passing
Details
2021-12-31 19:53:46 +01:00
Rob Watson
4e4201f7d2
Add test coverage for getPeaksFromFileStore flow
continuous-integration/drone/push Build is passing
Details
2021-12-31 19:25:55 +01: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
dd526b6916
Extract ModuloReader from service.go
continuous-integration/drone/push Build is passing
Details
2021-12-17 17:52:59 +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
57516c738e
Add staticcheck to CI steps
continuous-integration/drone/push Build is passing
Details
2021-12-13 21:30:37 +01:00
Rob Watson
4ef5dc4189
Add test coverage for filestore package
continuous-integration/drone/push Build is passing
Details
2021-12-13 21:13:11 +01:00
Rob Watson
c8de6643e8
Remove S3 bucket columns from media_sets table
...
continuous-integration/drone/push Build is passing
Details
Re: #5
2021-12-13 04:29:02 +01:00
Rob Watson
37a74e218f
Rename migrations to use default time format
2021-12-13 04:29:02 +01:00
Rob Watson
fb3a497119
Add base URL to serve file system store objects over HTTP
2021-12-09 04:05:34 +01:00
Rob Watson
13224f75ea
Rename HTTP base path to HTTP root
2021-12-09 03:38:38 +01:00
Rob Watson
4168cb150c
Add FileSystemStore file store
2021-12-08 20:58:13 +01:00
Rob Watson
f2d7af0860
Extract S3 code to S3FileStore
...
Re: #5
2021-12-07 20:58:11 +01:00
Rob Watson
468ddf4e9a
Add benchmark for MediaService.GetAudioSegment
2021-12-06 18:40:02 +01:00
Rob Watson
6d8b1beba7
Add test coverage for MediaService.GetAudioSegment
2021-12-05 20:05:58 +01:00
Rob Watson
935c2add2a
Add generated code to Git
2021-12-05 11:56:33 +01:00
Rob Watson
896e524363
Add README and LICENSE files
2021-12-04 06:26:30 +01:00
Rob Watson
0cc1fd8272
Frontend fixes
2021-12-02 15:55:14 +01:00
Rob Watson
b3bc63621a
Add types.go, small refactor and tidy
2021-11-29 16:06:43 +01:00
Rob Watson
1552fc19a1
Send presigned encoded audio URL to the frontend
2021-11-29 15:55:11 +01:00
Rob Watson
be42d452d6
Update database with encoded audio metadata
2021-11-29 14:59:05 +01:00
Rob Watson
c3da27ca49
Refactor audio fetching logic
2021-11-29 12:46:33 +01:00
Rob Watson
817a10d269
Move TLS config to Server struct
2021-11-26 20:01:34 +01:00