summaryrefslogtreecommitdiffstats
path: root/mpvcore
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-11-01 17:14:05 +0100
committerwm4 <wm4@nowhere>2013-11-01 17:33:33 +0100
commit24897eb94ccdc4c7a4b9b201ec733b4d8f445f53 (patch)
tree2ca329aee0fefdc563c0154d3b17c22d23f1ec86 /mpvcore
parent4aae1ff6de3a29c57492bc12113251f99308dc51 (diff)
downloadmpv-24897eb94ccdc4c7a4b9b201ec733b4d8f445f53.tar.bz2
mpv-24897eb94ccdc4c7a4b9b201ec733b4d8f445f53.tar.xz
video: check profiles with hardware decoding
We had some code for checking profiles earlier, which was removed in commits 2508f38 and adfb71b. These commits mentioned that (working) hw decoding was sometimes prevented due to profile checking, but I can't find the samples anymore that showed this behavior. Also, I changed my opinion, and I think checking the profiles is something that should be done for better fallback to software decoding behavior. The checks roughly follow VLC's vdpau profile checks, although we do not check codec levels. (VLC's profile checks aren't necessarily completely correct, but they're a welcome help anyway.) Add a --vd-lavc-check-hw-profile option, which skips the profile check.
Diffstat (limited to 'mpvcore')
-rw-r--r--mpvcore/options.c3
-rw-r--r--mpvcore/options.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/mpvcore/options.c b/mpvcore/options.c
index 32d108d119..44f821db75 100644
--- a/mpvcore/options.c
+++ b/mpvcore/options.c
@@ -864,6 +864,9 @@ const struct MPOpts mp_default_opts = {
.lavfdopts = {
.allow_mimetype = 1,
},
+ .lavc_param = {
+ .check_hw_profile = 1,
+ },
.input = {
.key_fifo_size = 7,
.doubleclick_time = 300,
diff --git a/mpvcore/options.h b/mpvcore/options.h
index 0f3fa51549..4a58a0e10d 100644
--- a/mpvcore/options.h
+++ b/mpvcore/options.h
@@ -217,6 +217,7 @@ typedef struct MPOpts {
char *skip_frame_str;
int threads;
int bitexact;
+ int check_hw_profile;
char *avopt;
} lavc_param;