mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-18 15:51:11 +00:00
Add build files and fix build for gst-plugins-bad dshowsinkwrapper plugin
dshowsinkwrapper plugin is the old dshowvideosink plugin that has been renamed to be compliant with the actuel plugin name in the source code. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1577>
This commit is contained in:
parent
b355345ef5
commit
e1c0628bb9
7 changed files with 43 additions and 6 deletions
|
@ -973,6 +973,8 @@ gst_dshowvideosink_change_state (GstElement * element, GstStateChange transition
|
||||||
return ret;
|
return ret;
|
||||||
sink->graph_running = TRUE;
|
sink->graph_running = TRUE;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
|
ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
|
||||||
|
@ -997,6 +999,8 @@ gst_dshowvideosink_change_state (GstElement * element, GstStateChange transition
|
||||||
case GST_STATE_CHANGE_READY_TO_NULL:
|
case GST_STATE_CHANGE_READY_TO_NULL:
|
||||||
gst_dshowvideosink_clear (sink);
|
gst_dshowvideosink_clear (sink);
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
|
@ -0,0 +1,38 @@
|
||||||
|
dshowsinkwrapper_sources = [
|
||||||
|
'dshowvideofakesrc.cpp',
|
||||||
|
'dshowvideosink.cpp'
|
||||||
|
]
|
||||||
|
|
||||||
|
if not strmbase_dep.found()
|
||||||
|
message('strmbase not found, not building dshowsinkwrapper')
|
||||||
|
subdir_done()
|
||||||
|
endif
|
||||||
|
|
||||||
|
winmm_dep = cxx.find_library('winmm', required: get_option('directshow'))
|
||||||
|
if not winmm_dep.found()
|
||||||
|
message('winmm not found, not building dshowsinkwrapper')
|
||||||
|
subdir_done()
|
||||||
|
endif
|
||||||
|
|
||||||
|
mfuuid_dep = cxx.find_library('mfuuid', required: get_option('directshow'))
|
||||||
|
if not mfuuid_dep.found()
|
||||||
|
message('mfuuid not found, not building dshowsinkwrapper')
|
||||||
|
subdir_done()
|
||||||
|
endif
|
||||||
|
|
||||||
|
gstdshowsinkwrapper = library('gstdshowsinkwrapper',
|
||||||
|
dshowsinkwrapper_sources,
|
||||||
|
cpp_args : gst_plugins_bad_args,
|
||||||
|
include_directories : [configinc],
|
||||||
|
dependencies : [
|
||||||
|
gstvideo_dep,
|
||||||
|
strmbase_dep,
|
||||||
|
winmm_dep,
|
||||||
|
mfuuid_dep
|
||||||
|
],
|
||||||
|
install : true,
|
||||||
|
install_dir : plugins_install_dir,
|
||||||
|
override_options : ['cpp_std=none'])
|
||||||
|
|
||||||
|
pkgconfig.generate(gstdshowsinkwrapper, install_dir : plugins_pkgconfig_install_dir)
|
||||||
|
plugins += [gstdshowsinkwrapper]
|
|
@ -1,5 +0,0 @@
|
||||||
To build this, you'll require the DirectShow base classes. These are supplied
|
|
||||||
in the Windows SDK, but under Samples\Multimedia\DirectShow\BaseClasses
|
|
||||||
|
|
||||||
Once you've built that, you should be able to figure out the rest...
|
|
||||||
|
|
|
@ -23,4 +23,4 @@ endif
|
||||||
subdir('strmbase')
|
subdir('strmbase')
|
||||||
subdir('dshowdecwrapper')
|
subdir('dshowdecwrapper')
|
||||||
subdir('dshowsrcwrapper')
|
subdir('dshowsrcwrapper')
|
||||||
#subdir('dshowvideosink')
|
subdir('dshowsinkwrapper')
|
||||||
|
|
Loading…
Reference in a new issue