int VDXVideoFilterModuleInit2(struct VDXFilterModule *fm, const VDXFilterFunctions *ff, int vdfd_ver) { for(int i=0; ; ++i){ VDXFilterDefinition2* def = VDXGetVideoFilterDefinition(i); if(!def) break; ff->addFilter(fm, def, sizeof(VDXFilterDefinition)); } VDXVideoFilter::SetAPIVersion(vdfd_ver); return 0; }
int VDXVideoFilterModuleInit2(struct VDXFilterModule *fm, const VDXFilterFunctions *ff, int& vdfd_ver, int& vdfd_compat, int ver_compat_target) { int def_count = 0; while(VDXGetVideoFilterDefinition(def_count)) ++def_count; g_VDXRegisteredFilters = (VDXFilterDefinition **)malloc(sizeof(VDXFilterDefinition *) * def_count); if (!g_VDXRegisteredFilters) return 1; memset(g_VDXRegisteredFilters, 0, sizeof(VDXFilterDefinition *) * def_count); for(int i=0; i<def_count; ++i) g_VDXRegisteredFilters[i] = ff->addFilter(fm, VDXGetVideoFilterDefinition(i), sizeof(VDXFilterDefinition)); g_VFVAPIVersion = vdfd_ver; vdfd_ver = VIRTUALDUB_FILTERDEF_VERSION; vdfd_compat = ver_compat_target; return 0; }