feat: videoplayer toegevoegd
This commit is contained in:
Binary file not shown.
@@ -1,6 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
from fastapi import APIRouter, Depends, Request
|
||||
from fastapi.responses import StreamingResponse
|
||||
|
||||
from backend.app.api.schemas import DeleteRequest, DeleteResponse, MkdirRequest, MkdirResponse, RenameRequest, RenameResponse, SaveRequest, SaveResponse, ViewResponse
|
||||
from backend.app.dependencies import get_file_ops_service
|
||||
@@ -42,6 +43,21 @@ async def view(
|
||||
return service.view(path=path, for_edit=for_edit)
|
||||
|
||||
|
||||
@router.get("/video")
|
||||
async def video(
|
||||
path: str,
|
||||
request: Request,
|
||||
service: FileOpsService = Depends(get_file_ops_service),
|
||||
) -> StreamingResponse:
|
||||
prepared = service.prepare_video_stream(path=path, range_header=request.headers.get("range"))
|
||||
return StreamingResponse(
|
||||
prepared["content"],
|
||||
status_code=prepared["status_code"],
|
||||
headers=prepared["headers"],
|
||||
media_type=prepared["content_type"],
|
||||
)
|
||||
|
||||
|
||||
@router.post("/save", response_model=SaveResponse)
|
||||
async def save(
|
||||
request: SaveRequest,
|
||||
|
||||
Reference in New Issue
Block a user