Commit Graph

41 Commits

Author SHA1 Message Date
Rob Watson 54e9bc0d2c Pass context from gRPC streams to background tasks 2022-02-05 07:44:44 +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 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 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 5a4ee4e34f Add FFmpeg WorkerPool
continuous-integration/drone/push Build is passing Details
2022-01-05 19:49:47 +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 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 aaef474853.
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