mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-21 05:26:23 +00:00
wasapi: Integrate into the autotools build system
Patch based on a patch by Fabrizio Ciavatta <fabrizio.ciavatta@gmail.com>
This commit is contained in:
parent
3be147046d
commit
f7f34f9f3f
3 changed files with 75 additions and 6 deletions
48
configure.ac
48
configure.ac
|
@ -456,6 +456,54 @@ AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
|
|||
AC_SUBST(HAVE_DIRECTSOUND)
|
||||
])
|
||||
|
||||
dnl WASAPI
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true)
|
||||
AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [
|
||||
HAVE_WASAPI="no"
|
||||
save_CFLAGS="$CFLAGS"
|
||||
save_LDFLAGS="$LDFLAGS"
|
||||
save_LIBS="$LIBS"
|
||||
CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
|
||||
LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
|
||||
LIBS="$LIBS -lole32 -lwinmm -lksuser"
|
||||
AC_MSG_CHECKING(for WASAPI LDFLAGS)
|
||||
AC_LINK_IFELSE([
|
||||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
#include <mmsystem.h>
|
||||
#include <mmdeviceapi.h>
|
||||
|
||||
int main ()
|
||||
{
|
||||
HRESULT hr = S_OK;
|
||||
|
||||
hr = CoInitialize(NULL);
|
||||
if (FAILED(hr)) {
|
||||
printf("CoInitialize failed: hr = 0x%08x", hr);
|
||||
return __LINE__;
|
||||
}
|
||||
|
||||
int result = 0;
|
||||
// result = do_everything(argc, argv);
|
||||
|
||||
CoUninitialize();
|
||||
return result;
|
||||
}
|
||||
],
|
||||
[HAVE_WASAPI="yes"],
|
||||
[HAVE_WASAPI="no"])
|
||||
AC_MSG_RESULT($HAVE_WASAPI)
|
||||
CFLAGS=$save_CFLAGS
|
||||
LDFLAGS=$save_LDFLAGS
|
||||
LIBS=$save_LIBS
|
||||
|
||||
if test "x$HAVE_WASAPI" = "xyes"; then
|
||||
WASAPI_LIBS="-lole32 -lwinmm -lksuser"
|
||||
AC_SUBST(WASAPI_LIBS)
|
||||
fi
|
||||
AC_SUBST(HAVE_WASAPI)
|
||||
])
|
||||
|
||||
dnl Direct3D
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
|
||||
AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
|
||||
|
|
|
@ -28,6 +28,12 @@ endif
|
|||
# CDROM_DIR=
|
||||
# endif
|
||||
|
||||
if USE_WASAPI
|
||||
WASAPI_DIR=wasapi
|
||||
else
|
||||
WASAPI_DIR=
|
||||
endif
|
||||
|
||||
if USE_DIRECT3D
|
||||
D3DVIDEOSINK_DIR=d3dvideosink
|
||||
else
|
||||
|
@ -148,7 +154,7 @@ else
|
|||
UVCH264_DIR=
|
||||
endif
|
||||
|
||||
SUBDIRS = $(ACM_DIR) $(ANDROID_MEDIA_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DIRECTSHOW_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OPENSLES_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(UVCH264_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR)
|
||||
SUBDIRS = $(ACM_DIR) $(ANDROID_MEDIA_DIR) $(APPLE_MEDIA_DIR) $(AVC_DIR) $(D3DVIDEOSINK_DIR) $(DECKLINK_DIR) $(DIRECTDRAW_DIR) $(DIRECTSOUND_DIR) $(DIRECTSHOW_DIR) $(DVB_DIR) $(FBDEV_DIR) $(LINSYS_DIR) $(OPENSLES_DIR) $(OSX_VIDEO_DIR) $(PVR_DIR) $(QT_DIR) $(SHM_DIR) $(UVCH264_DIR) $(VCD_DIR) $(VDPAU_DIR) $(WININET_DIR) $(WINSCREENCAP_DIR) $(WASAPI_DIR)
|
||||
|
||||
DIST_SUBDIRS = acmenc acmmp3dec androidmedia applemedia avc d3dvideosink decklink directdraw directsound dvb linsys fbdev dshowdecwrapper dshowsrcwrapper dshowvideosink \
|
||||
opensles osxvideo pvr2d qtwrapper shm uvch264 vcd vdpau wasapi wininet winks winscreencap
|
||||
|
|
|
@ -1,5 +1,20 @@
|
|||
EXTRA_DIST = \
|
||||
gstwasapi.c \
|
||||
gstwasapisrc.c gstwasapisrc.h \
|
||||
gstwasapisink.c gstwasapisink.h \
|
||||
gstwasapiutil.c gstwasapiutil.h
|
||||
plugin_LTLIBRARIES = libgstwasapi.la
|
||||
|
||||
libgstwasapi_la_SOURCES = gstwasapi.c \
|
||||
gstwasapisrc.c \
|
||||
gstwasapisink.c \
|
||||
gstwasapiutil.c
|
||||
|
||||
libgstwasapi_la_CFLAGS = $(GST_BASE_CFLAGS) $(GST_CFLAGS) -DCOBJMACROS=1
|
||||
libgstwasapi_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS) \
|
||||
-lgstaudio-$(GST_MAJORMINOR) -lgstinterfaces-$(GST_MAJORMINOR) \
|
||||
$(WASAPI_LIBS)
|
||||
libgstwasapi_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
|
||||
if !GST_PLUGIN_BUILD_STATIC
|
||||
libgstwasapi_la_LIBTOOLFLAGS = --tag=disable-static
|
||||
endif
|
||||
|
||||
noinst_HEADERS = gstwasapisrc.h \
|
||||
gstwasapisink.h \
|
||||
gstwasapiutil.h
|
||||
|
||||
|
|
Loading…
Reference in a new issue