Add IPFS HLS streaming and GPU optimizations
- Add IPFSHLSOutput class that uploads segments to IPFS as they're created - Update streaming task to use IPFS HLS output for distributed streaming - Add /ipfs-stream endpoint to get IPFS playlist URL - Update /stream endpoint to redirect to IPFS when available - Add GPU persistence mode (STREAMING_GPU_PERSIST=1) to keep frames on GPU - Add hardware video decoding (NVDEC) support for faster video processing - Add GPU-accelerated primitive libraries: blending_gpu, color_ops_gpu, geometry_gpu - Add streaming_gpu module with GPUFrame class for tracking CPU/GPU data location - Add Dockerfile.gpu for building GPU-enabled worker image Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -69,6 +69,16 @@ def upload_to_ipfs(self, local_cid: str, actor_id: str) -> Optional[str]:
|
||||
database.update_cache_item_ipfs_cid(local_cid, ipfs_cid)
|
||||
)
|
||||
|
||||
# Update friendly_names table to use IPFS CID instead of local hash
|
||||
# This ensures assets can be fetched by remote workers via IPFS
|
||||
try:
|
||||
loop.run_until_complete(
|
||||
database.update_friendly_name_cid(actor_id, local_cid, ipfs_cid)
|
||||
)
|
||||
logger.info(f"Friendly name updated: {local_cid[:16]}... -> {ipfs_cid[:16]}...")
|
||||
except Exception as e:
|
||||
logger.warning(f"Failed to update friendly name CID: {e}")
|
||||
|
||||
# Create index from IPFS CID to local cache
|
||||
cache_mgr._set_content_index(ipfs_cid, local_cid)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user