Fix for pts (fixed hang at the end when playing records). Version 3.7.5

This commit is contained in:
jojo61 2022-12-19 09:17:34 +01:00
parent 45a83eaa3f
commit 90194d4b6c
2 changed files with 5 additions and 2 deletions

View File

@ -61,7 +61,7 @@ extern void ToggleLUT();
/// vdr-plugin version number.
/// Makefile extracts the version number for generating the file name
/// for the distribution archive.
static const char *const VERSION = "3.7.4"
static const char *const VERSION = "3.7.5"
#ifdef GIT_REV
"-GIT" GIT_REV
#endif

View File

@ -617,6 +617,8 @@ char *eglErrorString(EGLint error) {
static void VideoSetPts(int64_t *pts_p, int interlaced, const AVCodecContext *video_ctx, const AVFrame *frame) {
int64_t pts;
int duration;
static int64_t lastpts;
//
// Get duration for this frame.
@ -664,11 +666,12 @@ static void VideoSetPts(int64_t *pts_p, int interlaced, const AVCodecContext *vi
Debug(3, "++++++++++++++++++++++++++++++++++++starte audio\n");
AudioVideoReady(pts);
}
if (*pts_p != pts) {
if (*pts_p != pts && lastpts != pts) {
Debug(4, "video: %#012" PRIx64 "->%#012" PRIx64 " delta=%4" PRId64 " pts\n", *pts_p, pts, pts - *pts_p);
*pts_p = pts;
}
}
lastpts = pts;
}
int CuvidMessage(int level, const char *format, ...);