pickStepFromIds method
ParakeetTdtStep
pickStepFromIds({
- required int tokenId,
- required int durationId,
- required ParakeetTdtDecodeState state,
Implementation
ParakeetTdtStep pickStepFromIds({
required int tokenId,
required int durationId,
required ParakeetTdtDecodeState state,
}) {
final isBlank = tokenId == manifest.blankTokenId;
final rawAdvance = manifest.durations[durationId];
final hitMaxSymbols =
!isBlank &&
rawAdvance == 0 &&
state.emittedSymbols + 1 >= manifest.maxSymbols;
final advanceFrames = hitMaxSymbols ? 1 : rawAdvance;
return ParakeetTdtStep(
tokenId: tokenId,
durationId: durationId,
frameIndex: state.frameIndex,
durationFrames: rawAdvance,
isBlank: isBlank,
emitToken: !isBlank,
advanceFrames: advanceFrames,
);
}