diff --git a/.zscripts/dev.pid b/.zscripts/dev.pid index eb8e831..9437b2f 100755 --- a/.zscripts/dev.pid +++ b/.zscripts/dev.pid @@ -1 +1 @@ -1127 +1106 diff --git a/bin/yt-dlp b/bin/yt-dlp new file mode 100755 index 0000000..a385dc1 Binary files /dev/null and b/bin/yt-dlp differ diff --git a/src/app/api/audio/stream/route.ts b/src/app/api/audio/stream/route.ts new file mode 100755 index 0000000..177c674 --- /dev/null +++ b/src/app/api/audio/stream/route.ts @@ -0,0 +1,92 @@ +import { NextRequest, NextResponse } from 'next/server' +import { assertPublicHttpUrl } from '@/lib/server/ssrf' +import { getStreamEntry, refreshStreamEntry } from '@/lib/server/stream-store' + +export const runtime = 'nodejs' +export const dynamic = 'force-dynamic' + +/** + * GET /api/audio/stream?token= + * Same-origin byte proxy for a resolved upstream audio URL. Same-origin is + * what keeps the Web Audio analyser untainted (a cross-origin