summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohns <johns98@gmx.net>2012-02-16 21:55:14 +0100
committerJohns <johns98@gmx.net>2012-02-16 21:55:14 +0100
commit09cfab3856fa0104f0375b32a67e6b5fbea1c094 (patch)
treef5a1f36b31043a996cb82be64ccc0f7ee7045bd4
parent30e903d90a43f45c001c3574bfedb6b0a2d0ef3e (diff)
downloadvdr-plugin-softhddevice-09cfab3856fa0104f0375b32a67e6b5fbea1c094.tar.gz
vdr-plugin-softhddevice-09cfab3856fa0104f0375b32a67e6b5fbea1c094.tar.bz2
Add posibility to disable repeat pict warning.
-rw-r--r--softhddev.c5
-rw-r--r--video.c7
-rw-r--r--video.h6
3 files changed, 15 insertions, 3 deletions
diff --git a/softhddev.c b/softhddev.c
index 85a9b1a..3a83099 100644
--- a/softhddev.c
+++ b/softhddev.c
@@ -1454,7 +1454,8 @@ const char *CommandLineHelp(void)
" -w workaround\tenable/disable workarounds\n"
"\tno-hw-decoder\t\tdisable hw decoder, use software decoder only\n"
"\tno-mpeg-hw-decoder\tdisable hw decoder for mpeg only\n"
- "\talsa-driver-broken\tdisable broken alsa driver message\n";
+ "\talsa-driver-broken\tdisable broken alsa driver message\n"
+ "\tignore-repeat-pict\tdisable repeat pict message\n";
}
/**
@@ -1504,6 +1505,8 @@ int ProcessArgs(int argc, char *const argv[])
} else if (!strcasecmp("no-mpeg-hw-decoder", optarg)) {
} else if (!strcasecmp("alsa-driver-broken", optarg)) {
AudioAlsaDriverBroken = 1;
+ } else if (!strcasecmp("ignore-repeat-pict", optarg)) {
+ VideoIgnoreRepeatPict = 1;
} else {
fprintf(stderr, _("Workaround '%s' unsupported\n"),
optarg);
diff --git a/video.c b/video.c
index 990a043..aa28210 100644
--- a/video.c
+++ b/video.c
@@ -262,6 +262,8 @@ typedef struct _video_module_
// Variables
//----------------------------------------------------------------------------
+char VideoIgnoreRepeatPict; ///< disable repeat pict warning
+
static Display *XlibDisplay; ///< Xlib X11 display
static xcb_connection_t *Connection; ///< xcb connection
static xcb_colormap_t VideoColormap; ///< video colormap
@@ -8519,8 +8521,9 @@ enum PixelFormat Video_get_format(VideoHwDecoder * decoder,
void VideoRenderFrame(VideoHwDecoder * decoder,
const AVCodecContext * video_ctx, const AVFrame * frame)
{
- if (frame->repeat_pict) {
- Warning(_("video: repeated pict found, but not handled\n"));
+ if (frame->repeat_pict && !VideoIgnoreRepeatPict) {
+ Warning(_("video: repeated pict %d found, but not handled\n"),
+ frame->repeat_pict);
}
if (VideoUsedModule) {
VideoUsedModule->RenderFrame(decoder, video_ctx, frame);
diff --git a/video.h b/video.h
index 4018ad2..d9fd608 100644
--- a/video.h
+++ b/video.h
@@ -31,6 +31,12 @@
typedef struct _video_hw_decoder_ VideoHwDecoder;
//----------------------------------------------------------------------------
+// Variables
+//----------------------------------------------------------------------------
+
+extern char VideoIgnoreRepeatPict; ///< disable repeat pict warning
+
+//----------------------------------------------------------------------------
// Prototypes
//----------------------------------------------------------------------------