@torrent-tv/proxy 2.80.7 → 2.80.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/package.json +1 -1
- package/services/encode/EncodePlan.js +1104 -1104
- package/services/orchestrators/EncodeOrchestrator.js +15 -0
|
@@ -324,6 +324,21 @@ export class EncodeOrchestrator {
|
|
|
324
324
|
)
|
|
325
325
|
});
|
|
326
326
|
|
|
327
|
+
// A move is the plan taking a running encoder away from where it already
|
|
328
|
+
// stands, which is exactly the decision that was found wandering back and
|
|
329
|
+
// forth in the field on 2026-09-07 with no way to see why: the "because"
|
|
330
|
+
// line names the comparison in words, never the numbers it was decided
|
|
331
|
+
// from. Said here, once per reconcile, and only when a move actually
|
|
332
|
+
// happens — everything a rerun of the same decision needs: the windows
|
|
333
|
+
// this call saw (priority, the real time, which side of the viewers),
|
|
334
|
+
// the budget, and where every live run stood.
|
|
335
|
+
if (actions.some((action) => action.type === "move")) {
|
|
336
|
+
this.logger.info(
|
|
337
|
+
`encode-plan move on ${address}: windows=${JSON.stringify(windows)} ` +
|
|
338
|
+
`maxRuns=${this.#affordableOn(address, live)} ` +
|
|
339
|
+
`live=${JSON.stringify(live.map((run) => ({ from: run.from, to: run.to, head: run.head, speedX: run.speedX })))}`
|
|
340
|
+
);
|
|
341
|
+
}
|
|
327
342
|
for (const action of actions) {
|
|
328
343
|
if (action.type === "stop") {
|
|
329
344
|
this.#stop(action.run, action.because);
|