feat: introduce LiveVOD service and consolidate storage backend to S3#330
Open
4627488 wants to merge 14 commits intobinbat:mainfrom
Open
feat: introduce LiveVOD service and consolidate storage backend to S3#3304627488 wants to merge 14 commits intobinbat:mainfrom
4627488 wants to merge 14 commits intobinbat:mainfrom
Conversation
Codecov Report❌ Patch coverage is
... and 54 files with indirect coverage changes 🚀 New features to boost your workflow:
|
a-wing
approved these changes
Feb 1, 2026
Member
|
Need add local file system storage |
5a4e6a7 to
94f8f0c
Compare
a-wing
requested changes
Mar 30, 2026
| # Need enabled `--features=source-rtsp` | ||
| # - RTSP: rtsp://username:password@host:port/path | ||
| # url = "rtsp://username:password@host:port/path" | ||
|
|
conf/live777.toml
Outdated
| # auto_streams = ["*"] # Record all streams | ||
| # Optional path for recorder index file (index.json) | ||
| # index_path = "./storage/index.json" | ||
| # index_path = "./records/index.json" |
Member
There was a problem hiding this comment.
In conf/livevod.toml index_path = "./recordings/index.json"
In docs ./storage/index.json ?
Which one is right?
| # liveman_url = "http://127.0.0.1:8888" | ||
| # liveman_token = "live777" | ||
| # queue_path = "./recordings/upload_queue.jsonl" | ||
| # local_dir = "./recordings" |
…vevod and live777
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces LiveVOD, a new lightweight playback service, and refactors the storage architecture to exclusively support S3-compatible backends. It also implements asynchronous upload logic using presigned URLs and adds new REST APIs for recording index synchronization.
Key Changes
1. LiveVOD Service Introduction
livevod.conf/livevod.toml.2. Storage Backend Consolidation
3. Asynchronous Upload & API Extensions
Async Upload: Implemented asynchronous upload support using presigned URLs via the Liveman API.
Configuration: Added the
[recorder.upload]section to the configuration.New Endpoints: Added APIs for recording index synchronization and state management:
GET /api/recordings: List recordings.POST /api/recordings/ack: Acknowledge recordings (updates status toAcked).POST /api/recordings/delete: Delete recordings.Model Update: Updated
RecordingStatusenum to support theAckedvariant.4. Documentation & Dependencies
docs/guide/livevod.md(EN/ZH).Cargo.tomldependencies (axum,opendal,anyhow, etc.).Breaking Changes
Configuration Updates
conf/livevod.tomlcreated for the new service.recorder.tomlnow requires S3 configuration and supports the optional[recorder.upload]section.