diff --git a/src/core/api.js b/src/core/api.js index 04e190cd..f9b84c7a 100644 --- a/src/core/api.js +++ b/src/core/api.js @@ -192,8 +192,11 @@ export function runAPI(express, app, gitCommit, gitBranch, __dirname) { const streamInfo = getInternalStream(req.query.id); if (!streamInfo) return res.sendStatus(404); - streamInfo.headers = req.headers; - + streamInfo.headers = { + ...req.headers, + ...streamInfo.headers + }; + return stream(res, { type: 'internal', ...streamInfo }); } catch { return res.destroy(); diff --git a/src/modules/processing/matchActionDecider.js b/src/modules/processing/matchActionDecider.js index 6b44f8ab..42a35f1a 100644 --- a/src/modules/processing/matchActionDecider.js +++ b/src/modules/processing/matchActionDecider.js @@ -9,6 +9,7 @@ export default function(r, host, userFormat, isAudioOnly, lang, isAudioMuted, di responseType = "stream", defaultParams = { u: r.urls, + headers: r.headers, service: host, filename: r.filenameAttributes ? createFilename(r.filenameAttributes, filenamePattern, isAudioOnly, isAudioMuted) : r.filename, @@ -80,6 +81,7 @@ export default function(r, host, userFormat, isAudioOnly, lang, isAudioMuted, di service: "tiktok", type: audioStreamType, u: r.urls, + headers: r.headers, filename: r.audioFilename, isAudioOnly: true, audioFormat, diff --git a/src/modules/stream/manage.js b/src/modules/stream/manage.js index 6c9e9d3c..bccf5c80 100644 --- a/src/modules/stream/manage.js +++ b/src/modules/stream/manage.js @@ -38,6 +38,7 @@ export function createStream(obj) { filename: obj.filename, audioFormat: obj.audioFormat, isAudioOnly: !!obj.isAudioOnly, + headers: obj.headers, copy: !!obj.copy, mute: !!obj.mute, metadata: obj.fileMetadata || false, @@ -82,6 +83,7 @@ export function createInternalStream(url, obj = {}) { internalStreamCache[streamID] = { url, service: obj.service, + headers: obj.headers, controller: new AbortController(), dispatcher };