34 Commits

Author SHA1 Message Date
Rob Watson
af0674eb11 Add POST /api/media_sets/:id/clip.
All checks were successful
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
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."
All checks were successful
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
Rob Watson
2377477188 Disable directory listings in http.FileServer.
All checks were successful
continuous-integration/drone/push Build is passing
Closes #6
2022-01-08 12:16:30 +01:00
Rob Watson
5a4ee4e34f Add FFmpeg WorkerPool
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-05 19:49:47 +01:00
Rob Watson
2b1a668c9d Add GetAudioSegment flow
All checks were successful
continuous-integration/drone/push Build is passing
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
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
1552fc19a1 Send presigned encoded audio URL to the frontend 2021-11-29 15:55:11 +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
Rob Watson
abf5398d24 Allow configuration of BindAddr and TLS certs 2021-11-26 17:22:25 +01:00
Rob Watson
4c999cd5a2 Configure backend to serve assets over HTTP 2021-11-26 05:11:49 +01:00
Rob Watson
b643ea2824 Add config package 2021-11-22 19:26:51 +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
542080e400 Implement GetAudioSegment, add panic recovery handler 2021-11-21 16:09:30 +01:00
Rob Watson
911de4438b Add basic logging support 2021-11-21 16:09:30 +01:00
Rob Watson
fec542ee62 Tidy 2021-11-21 16:09:30 +01:00
Rob Watson
cd2686a5b2 Remove unused youtube module 2021-11-21 16:09:30 +01:00
Rob Watson
1496473620 Improve gRPC error handling, handle cancelling ffmpegReader 2021-11-21 16:09:30 +01:00
Rob Watson
d117419b0c Read peaks from S3 2021-11-21 16:09:30 +01:00
Rob Watson
5cbcfe22cf More progress 2021-11-21 16:09:30 +01:00
Rob Watson
49099b12d6 Update proto structure 2021-11-21 16:09:29 +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
0f7644f08b Revert "poc: websocket attempt, reverting to try grpc-web"
This reverts commit aaef474853d40cec6dc683c1f705a7fc194383e1.
2021-10-22 12:57:05 +02:00
Rob Watson
aaef474853 poc: websocket attempt, reverting to try grpc-web 2021-10-22 12:57:01 +02:00
Rob Watson
43e2592de8 Refactor frontend 2021-10-16 21:23:04 +02:00
Rob Watson
b08165d7f1 Remove HTML video element 2021-09-30 16:12:40 +02:00
Rob Watson
53bd2681af Migrate HTTP handlers to Echo 2021-09-25 19:00:19 +02:00