File: YoableWPF/Managers/YoutubeDownloader.cs lines: 144, 161-165, 211
Some video containers don't report frame count properly - capture.Get(FrameCount) returns 0. The code builds framePositions from a loop for (i = 0; i < 0; i++) which produces an empty set. Then the while loop reads every frame successfully with capture.Read(frame), but framePositions.Contains(currentFrameIndex) is never true, so nothing gets saved. You waste time scanning the whole video and end up with zero frames.
File: YoableWPF/Managers/YoutubeDownloader.cs lines: 144, 161-165, 211
Some video containers don't report frame count properly - capture.Get(FrameCount) returns 0. The code builds framePositions from a loop for (i = 0; i < 0; i++) which produces an empty set. Then the while loop reads every frame successfully with capture.Read(frame), but framePositions.Contains(currentFrameIndex) is never true, so nothing gets saved. You waste time scanning the whole video and end up with zero frames.