From 03e008fd2e37617ddfaaaa26be38fb71e930fa4c Mon Sep 17 00:00:00 2001 From: jp9000 Date: Sat, 31 Aug 2019 01:04:47 -0700 Subject: [PATCH] libobs: Fix pause cutting out video data prematurely When pause has been activated, the video_pause_check() function is used when receiving raw frames in order to filter out frames that are in the pause window, that way they aren't sent to the encoder or output. However, when pause was enabled, it was unintentionally filtering out some frames before the specified starting timestamp as well, causing extra video data to get cut out prematurely. This fixes that issue. --- libobs/obs-encoder.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/libobs/obs-encoder.c b/libobs/obs-encoder.c index 9d309bb7c..e25ca2c59 100644 --- a/libobs/obs-encoder.c +++ b/libobs/obs-encoder.c @@ -981,14 +981,11 @@ static inline bool video_pause_check_internal(struct pause_data *pause, return false; } - if (ts == pause->ts_start) { - return true; - - } else if (ts == pause->ts_end) { + if (ts == pause->ts_end) { pause->ts_start = 0; pause->ts_end = 0; - } else { + } else if (ts >= pause->ts_start) { return true; }