summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/vd_vfw.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpcodecs/vd_vfw.c')
-rw-r--r--libmpcodecs/vd_vfw.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libmpcodecs/vd_vfw.c b/libmpcodecs/vd_vfw.c
index f3f77da9a7..e5f5f1dfa6 100644
--- a/libmpcodecs/vd_vfw.c
+++ b/libmpcodecs/vd_vfw.c
@@ -147,6 +147,13 @@ static int init(sh_video_t *sh){
int i, o_bih_len;
vd_vfw_ctx *priv;
+ /* Hack for VSSH codec: new dll can't decode old files
+ * In my samples old files have no extradata, so use that info
+ * to decide what dll should be used (here and in vd_dshow).
+ */
+ if (!strcmp(sh->codec->dll, "vssh264.dll") && (sh->bih->biSize > 40))
+ return 0;
+
priv = malloc(sizeof(vd_vfw_ctx));
if (!priv)
return 0;