fix(streaming): always use streamDuration for duration in ffmpeg pipeline (#1357)

chore: fix husky init
This commit is contained in:
Christian Benincasa
2025-09-07 11:15:46 -04:00
committed by GitHub
parent e76803c4d9
commit 9eac043d5c
6 changed files with 7 additions and 18 deletions

View File

@@ -3,8 +3,8 @@
# Check if bunx is installed
if command -v bun &> /dev/null; then
# Run the command with bunx
bun -e "if (process.env.NODE_ENV !== 'production'){process.exit(1)}" || bunx husky install
bun -e "if (process.env.NODE_ENV !== 'production'){process.exit(1)}" || bunx husky
else
# Fall back to npx if bunx is not available
node -e "if (process.env.NODE_ENV !== 'production'){process.exit(1)}" || husky install
node -e "if (process.env.NODE_ENV !== 'production'){process.exit(1)}" || npx husky
fi

View File

@@ -43,7 +43,7 @@ export class OfflineProgramStream extends ProgramStream {
this.context.streamMode,
);
const lineupItem = this.context.lineupItem;
let duration = dayjs.duration(lineupItem.streamDuration ?? 0);
let duration = dayjs.duration(lineupItem.streamDuration);
const start = dayjs.duration(lineupItem.startOffset ?? 0);
if (+duration > +start) {
duration = duration.subtract(start);

View File

@@ -312,7 +312,6 @@ export class StreamProgramCalculator {
timestamp: number,
channel: MinimalChannelDetails,
channelLineup: Lineup,
streamDuration?: number,
): Promise<ProgramAndTimeElapsed> {
if (channel.startTime > timestamp) {
this.logger.debug(
@@ -376,7 +375,7 @@ export class StreamProgramCalculator {
(currentProgramIndex + 1) % channelLineup.items.length
].durationMs;
streamDuration ??= nextOffset - currOffset - elapsed;
const streamDuration = nextOffset - currOffset - elapsed;
const lineupItem = channelLineup.items[currentProgramIndex];
let program: EnrichedLineupItem;

View File

@@ -117,10 +117,7 @@ export class EmbyProgramStream extends ProgramStream {
},
options: {
startTime: start,
duration:
+start === 0
? dayjs.duration(lineupItem.duration)
: dayjs.duration(lineupItem.streamDuration ?? lineupItem.duration),
duration: dayjs.duration(lineupItem.streamDuration),
watermark,
realtime: this.context.realtime,
extraInputHeaders: {},

View File

@@ -117,10 +117,7 @@ export class JellyfinProgramStream extends ProgramStream {
},
options: {
startTime: start,
duration:
+start === 0
? dayjs.duration(lineupItem.duration)
: dayjs.duration(lineupItem.streamDuration ?? lineupItem.duration),
duration: dayjs.duration(lineupItem.streamDuration),
watermark,
realtime: this.context.realtime,
extraInputHeaders: {},

View File

@@ -126,11 +126,7 @@ export class PlexProgramStream extends ProgramStream {
},
options: {
startTime: start,
duration: dayjs.duration(
+start === 0
? lineupItem.duration
: (lineupItem.streamDuration ?? lineupItem.duration),
),
duration: dayjs.duration(lineupItem.streamDuration),
watermark,
realtime: this.context.realtime,
outputFormat: this.outputFormat,