mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-02 21:48:55 +00:00
vdpau: blacklist for generic states test, and demote to GST_RANK_NONE
These elements are not fit for autoplugging, so demoting to RANK_NONE. Also blacklisting for generic states test, since fixing these elements up to do some minimal error handling seems to be a bit more work. Partially fixes #591538.
This commit is contained in:
parent
7c7b82e714
commit
5bc1290431
3 changed files with 15 additions and 6 deletions
|
@ -12,12 +12,14 @@
|
||||||
static gboolean
|
static gboolean
|
||||||
vdpau_init (GstPlugin * vdpau_plugin)
|
vdpau_init (GstPlugin * vdpau_plugin)
|
||||||
{
|
{
|
||||||
|
/* Before giving these elements a rank again, make sure they pass at
|
||||||
|
* least the generic/states test when there's no device available */
|
||||||
gst_element_register (vdpau_plugin, "vdpaumpegdec",
|
gst_element_register (vdpau_plugin, "vdpaumpegdec",
|
||||||
GST_RANK_PRIMARY - 1, GST_TYPE_VDP_MPEG_DEC);
|
GST_RANK_NONE, GST_TYPE_VDP_MPEG_DEC);
|
||||||
gst_element_register (vdpau_plugin, "vdpauvideoyuv",
|
gst_element_register (vdpau_plugin, "vdpauvideoyuv",
|
||||||
GST_RANK_PRIMARY, GST_TYPE_VDP_VIDEO_YUV);
|
GST_RANK_NONE, GST_TYPE_VDP_VIDEO_YUV);
|
||||||
gst_element_register (vdpau_plugin, "vdpauyuvvideo",
|
gst_element_register (vdpau_plugin, "vdpauyuvvideo",
|
||||||
GST_RANK_PRIMARY, GST_TYPE_VDP_YUV_VIDEO);
|
GST_RANK_NONE, GST_TYPE_VDP_YUV_VIDEO);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,9 +49,16 @@ gst_vdp_device_finalize (GObject * object)
|
||||||
{
|
{
|
||||||
GstVdpDevice *device = (GstVdpDevice *) object;
|
GstVdpDevice *device = (GstVdpDevice *) object;
|
||||||
|
|
||||||
|
if (device->device != VDP_INVALID_HANDLE) {
|
||||||
device->vdp_device_destroy (device->device);
|
device->vdp_device_destroy (device->device);
|
||||||
|
device->device = VDP_INVALID_HANDLE;
|
||||||
|
}
|
||||||
|
if (device->display) {
|
||||||
XCloseDisplay (device->display);
|
XCloseDisplay (device->display);
|
||||||
|
device->display = NULL;
|
||||||
|
}
|
||||||
g_free (device->display_name);
|
g_free (device->display_name);
|
||||||
|
device->display_name = NULL;
|
||||||
|
|
||||||
G_OBJECT_CLASS (gst_vdp_device_parent_class)->finalize (object);
|
G_OBJECT_CLASS (gst_vdp_device_parent_class)->finalize (object);
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@ TESTS_ENVIRONMENT = \
|
||||||
$(REGISTRY_ENVIRONMENT) \
|
$(REGISTRY_ENVIRONMENT) \
|
||||||
GST_PLUGIN_SYSTEM_PATH= \
|
GST_PLUGIN_SYSTEM_PATH= \
|
||||||
GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/sys:$(top_builddir)/ext:$(top_builddir)/../gst-ffmpeg/ext/ffmpeg:$(top_builddir)/../gst-plugins-good/gst:$(top_builddir)/../gst-plugins-good/sys:$(top_builddir)/../gst-plugins-good/ext:$(top_builddir)/../gst-plugins-ugly/gst:$(top_builddir)/../gst-plugins-ugly/sys:$(top_builddir)/../gst-plugins-ugly/ext:$(GSTPB_PLUGINS_DIR):$(GST_PLUGINS_DIR) \
|
GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/sys:$(top_builddir)/ext:$(top_builddir)/../gst-ffmpeg/ext/ffmpeg:$(top_builddir)/../gst-plugins-good/gst:$(top_builddir)/../gst-plugins-good/sys:$(top_builddir)/../gst-plugins-good/ext:$(top_builddir)/../gst-plugins-ugly/gst:$(top_builddir)/../gst-plugins-ugly/sys:$(top_builddir)/../gst-plugins-ugly/ext:$(GSTPB_PLUGINS_DIR):$(GST_PLUGINS_DIR) \
|
||||||
STATE_IGNORE_ELEMENTS="alsaspdifsink apexsink camerabin cdaudio dc1394src dccpclientsrc dccpclientsink dccpserversrc dccpserversink dvbsrc dvbbasebin dfbvideosink festival nassink rsndvdbin sdlaudiosink sdlvideosink vcdsrc rfbsrc"
|
STATE_IGNORE_ELEMENTS="alsaspdifsink apexsink camerabin cdaudio dc1394src dccpclientsrc dccpclientsink dccpserversrc dccpserversink dvbsrc dvbbasebin dfbvideosink festival nassink rsndvdbin sdlaudiosink sdlvideosink vcdsrc rfbsrc vdpauyuvvideo vdpauvideoyuv vdpaumpegdec"
|
||||||
|
|
||||||
plugindir = $(libdir)/gstreamer-@GST_MAJORMINOR@
|
plugindir = $(libdir)/gstreamer-@GST_MAJORMINOR@
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue