diff --git a/src/FFmpegReader.cpp b/src/FFmpegReader.cpp index c0cd735b..c32b8605 100644 --- a/src/FFmpegReader.cpp +++ b/src/FFmpegReader.cpp @@ -701,8 +701,6 @@ bool FFmpegReader::CheckSeek(bool is_video) is_seeking = false; seeking_frame = 0; seeking_pts = -1; - //seek_audio_frame_found = 0; // used to detect which frames to throw away after a seek - //seek_video_frame_found = 0; // used to detect which frames to throw away after a seek } } @@ -1380,8 +1378,8 @@ bool FFmpegReader::IsPartialFrame(int requested_frame) { int max_seeked_frame = seek_audio_frame_found; // determine max seeked frame if (seek_video_frame_found > max_seeked_frame) max_seeked_frame = seek_video_frame_found; - if ((info.has_audio && seek_audio_frame_found && max_seeked_frame >= requested_frame) || - (info.has_video && seek_video_frame_found && max_seeked_frame >= requested_frame)) + if ((info.has_audio && seek_audio_frame_found && max_seeked_frame > requested_frame) || + (info.has_video && seek_video_frame_found && max_seeked_frame > requested_frame)) seek_trash = true; return seek_trash; diff --git a/src/Main.cpp b/src/Main.cpp index 44bfd70b..67af94d7 100644 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -45,19 +45,15 @@ int main(int argc, char* argv[]) sinelReader.debug = true; sinelReader.Open(); - sinelReader.GetFrame(300)->Display(); - sinelReader.GetFrame(301)->Display(); + // Seek test + int frames[15] = {1,624,585,222,333}; + for (int x = 0; x<6; x++) { + tr1::shared_ptr f = sinelReader.GetFrame(frames[x]); + f->AddOverlayNumber(frames[x]); + f->Display(); + } - sinelReader.GetFrame(100)->Display(); - sinelReader.GetFrame(101)->Display(); - - sinelReader.GetFrame(600)->Display(); - sinelReader.GetFrame(601)->Display(); - - sinelReader.GetFrame(380)->Display(); - sinelReader.GetFrame(381)->Display(); - - cout << sinelReader.OutputDebugJSON() << endl;; + cout << sinelReader.OutputDebugJSON() << endl; sinelReader.Close(); return 0;