Fix Infinity not being allowed where it should be (fixes #478)

This commit is contained in:
Vanilagy
2026-08-30 12:19:25 +02:00
parent 398d172152
commit e16b01a4c6
2 changed files with 15 additions and 6 deletions
+11 -2
View File
@@ -12,7 +12,16 @@ import { customAudioDecoders, customVideoDecoders } from './custom-coder';
import { Input } from './input';
import { Logging } from './logging';
import { EncodedPacketSink, PacketRetrievalOptions } from './media-sink';
import { assert, isThenable, MaybePromise, Rational, Rotation, roundToDivisor, simplifyRational } from './misc';
import {
assert,
isNumber,
isThenable,
MaybePromise,
Rational,
Rotation,
roundToDivisor,
simplifyRational,
} from './misc';
import { TrackType } from './output';
import { EncodedPacket, PacketType } from './packet';
import { TrackDisposition } from './metadata';
@@ -869,7 +878,7 @@ export class InputVideoTrack extends InputTrack {
}
if (
options.targetPacketCount !== undefined
&& (!Number.isFinite(options.targetPacketCount) || options.targetPacketCount < 0)
&& (!isNumber(options.targetPacketCount) || options.targetPacketCount < 0)
) {
throw new TypeError('options.targetPacketCount must be a non-negative number.');
}
+4 -4
View File
@@ -30,7 +30,7 @@ import { MpegTsMuxer } from './mpeg-ts/mpeg-ts-muxer';
import { WaveMuxer } from './wave/wave-muxer';
import { HlsMuxer } from './hls/hls-muxer';
import { HLS_MIME_TYPE } from './hls/hls-misc';
import { MaybePromise, FilePath, toArray } from './misc';
import { MaybePromise, FilePath, isNumber, toArray } from './misc';
import { Target } from './target';
/**
@@ -229,7 +229,7 @@ export abstract class IsobmffOutputFormat extends OutputFormat {
}
if (
options.minimumFragmentDuration !== undefined
&& (!Number.isFinite(options.minimumFragmentDuration) || options.minimumFragmentDuration < 0)
&& (!isNumber(options.minimumFragmentDuration) || options.minimumFragmentDuration < 0)
) {
throw new TypeError('options.minimumFragmentDuration, when provided, must be a non-negative number.');
}
@@ -514,7 +514,7 @@ export class MkvOutputFormat extends OutputFormat {
}
if (
options.minimumClusterDuration !== undefined
&& (!Number.isFinite(options.minimumClusterDuration) || options.minimumClusterDuration < 0)
&& (!isNumber(options.minimumClusterDuration) || options.minimumClusterDuration < 0)
) {
throw new TypeError('options.minimumClusterDuration, when provided, must be a non-negative number.');
}
@@ -861,7 +861,7 @@ export class OggOutputFormat extends OutputFormat {
}
if (
options.maximumPageDuration !== undefined
&& (!Number.isFinite(options.maximumPageDuration) || options.maximumPageDuration <= 0)
&& (!isNumber(options.maximumPageDuration) || options.maximumPageDuration <= 0)
) {
throw new TypeError('options.maximumPageDuration, when provided, must be a positive number.');
}