Matthew Waters
b02493091b
vkswapper: support displaying memory:VulkanImage
2019-06-04 09:03:44 +00:00
Matthew Waters
673d775df0
vkupload: implement buffer to image uploader
2019-06-04 09:03:44 +00:00
Matthew Waters
f351f3a759
vulkansink: Respond to queue queries
2019-06-04 09:03:44 +00:00
Matthew Waters
32d217a9df
vulkan: add a command pool object for tracking
2019-06-04 09:03:44 +00:00
Matthew Waters
2d0cab20c0
vkswapper: don't output duplicate formats
2019-06-04 09:03:44 +00:00
Matthew Waters
25dd3b32e5
vulkan: make a gstvulkan library out of the existing API
2019-06-04 09:03:44 +00:00
Matthew Waters
8def3b3743
vkbufferpool: Fix multiplaner allocations
...
Use the plane width/height and the sizes required by vulkan
Fixes allocation of:
videotestsrc ! video/x-raw,format=I420 ! vulkanupload ! fakesink
2019-06-04 09:03:44 +00:00
Matthew Waters
268dfcaad9
vk*memory: explicitly error out for driver NPOT alignment
2019-06-04 09:03:44 +00:00
Matthew Waters
0526310a95
vulkan/image: initialize the requirements struct before using it
2019-06-04 09:03:44 +00:00
Matthew Waters
7ee28e2e4b
vulkan: don't require every element to have a display
...
Only sink elements really care about a valid display
2019-06-04 09:03:44 +00:00
Matthew Waters
eb0f7f3279
vulkan: remove unused X11 window system references
...
We use XCB instead
2019-06-04 09:03:44 +00:00
Matthew Waters
873add374a
vulkan: remove unused layer enablement
...
This is possible now via the vulkan loader
2019-06-04 09:03:44 +00:00
Thibault Saunier
47a49f3381
docs: Build documentation with hotdoc
2019-05-13 17:00:00 -04:00
Matthew Waters
2e442b801b
vulkan: Add iOS window implementation
2019-04-08 09:26:20 +00:00
Matthew Waters
012d6b1d98
vulkan: Add Cocoa window implementation
2019-04-08 09:26:20 +00:00
Matthew Waters
b9be6b318e
vulkan: make the debug extension optional
...
i.e. don't fail if it's not available
2019-04-08 09:26:20 +00:00
Tim-Philipp Müller
054dc5282d
vulkan: fix some compiler warnings in gnu89 mode
...
for loop variable initialization and conflicting types for i.
2019-03-22 23:39:04 +00:00
Tim-Philipp Müller
ecb7049d7e
vulkan: fix some leaks
...
Fix vk_instance leak when state change fails like in
generic/states unit test.
2019-03-08 01:18:39 +00:00
Nirbheek Chauhan
b55dfb5313
Add feature options for almost all plugins
...
The only plugins remaining are those that haven't been ported to Meson
yet, and msdk. Also, the tests are still automagic.
https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 19:04:38 +05:30
Tim-Philipp Müller
a862c0aa85
vulkan: Update for g_type_class_add_private() deprecation in recent GLib
2018-06-24 01:25:04 +02:00
Matthew Waters
52e3db3371
vulkaninstance: add missing precondition to _open()
2018-06-13 20:23:22 +10:00
Xavier Claessens
83d0623293
Meson: Generate pc file for all plugins in bad
...
https://bugzilla.gnome.org/show_bug.cgi?id=794568
2018-04-25 11:08:09 +01:00
Matthew Waters
e5c4135e81
vulkanupload: actually loop over possible uploaders
...
Fix some funky control that wasn't working
CID #1417219
2018-02-08 16:55:43 +11:00
Edward Hervey
87dbd558cc
vulkan: Fix out-of-bound read
...
G_N_ELEMENTS is the *number* of entries, not the maximum entry number
CID #1417215
2017-11-21 16:39:14 +01:00
Nicolas Dufresne
9b2e28d91d
Request minimum buffer even if need_pool is FALSE
...
When tee is used, it will not request a pool, but still it wants to
know how many buffers are required.
https://bugzilla.gnome.org/show_bug.cgi?id=730758
2017-09-06 14:19:37 -04:00
Jussi Kukkonen
97b0085c48
vulkan: Use the generated version of vkconfig.h
...
Build fails in ext/vulkan/xcb and ext/vulkan/wayland when:
* building from tarball
* building out-of-tree
* Only one WSI integration (xcb or wayland) is enabled by configure.ac
This is because vkconfig.h from source directory gets used instead
of the generated one.
Add the correct build directory to "-I". Use angle bracket
include in vkapi.h so that it actually looks in the include search
path instead of defaulting to the same (source tree) directory.
https://bugzilla.gnome.org/show_bug.cgi?id=784539
2017-07-10 21:42:49 +10:00
Jussi Kukkonen
9c6d36984f
vkdisplay: Use ifdef for platform specific defines
...
VK_KHR_*_SURFACE_EXTENSION_NAME are only available when corresponding
WSI is enabled.
https://bugzilla.gnome.org/show_bug.cgi?id=784539
2017-07-10 21:42:49 +10:00
Sebastian Dröge
634cd87c76
gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent
...
https://bugzilla.gnome.org/show_bug.cgi?id=743062
2017-05-17 10:40:23 +03:00
Nicolas Dufresne
4261692187
Remove plugin specific static build option
...
Static and dynamic plugins now have the same interface. The standard
--enable-static/--enable-shared toggle are sufficient.
2017-05-16 14:05:52 -04:00
Thibault Saunier
78022a6e0c
docs: Port all docstring to gtk-doc markdown
2017-04-12 12:57:57 -03:00
Matthew Waters
d7bb3b5542
vkwindow: fix build error on i386
...
Vulkan handles are either pointers (64-bit) or 64-bit integer
handles (32-bit). Cast the type in failure cases.
vkwindow.c:229:561: error: return makes integer from pointer without a cast [-Werror=int-conversion]
vkwindow.c:231:194: error: return makes integer from pointer without a cast [-Werror=int-conversion]
https://bugzilla.gnome.org/show_bug.cgi?id=777979
2017-02-01 16:08:55 +11:00
Matthew Waters
f6b81a6125
vkimagememory: use the correct enum for RGB16/BGR16 formats
...
vkimagememory.c:64:14: warning: implicit conversion from enumeration type 'GstVideoGLTextureType' to different enumeration type 'VkFormat' (aka 'enum VkFormat') [-Wenum-conversion]
return GST_VIDEO_GL_TEXTURE_TYPE_RGB16;
https://bugzilla.gnome.org/show_bug.cgi?id=777760
2017-01-26 19:52:07 +11:00
Sebastian Dröge
5c99f9cf37
gst: Don't declare variables inside the for loop header
...
This is a C99 feature.
2016-12-13 22:39:01 +02:00
Reynaldo H. Verdejo Pinochet
7c64ea4832
wayland: avoid prefix clash in combined pkg-config check
...
Adittionally, remove leftover WAYLAND_DRM_ include flags var
Fixes building of ext/wayland/* broken by dfd86de67a
Related to:
https://bugzilla.gnome.org/show_bug.cgi?id=773927
2016-11-18 10:41:16 -08:00
Arun Raghavan
723218aa63
vulkan: Add missing files to meson build
2016-11-04 09:51:45 +05:30
Matthew Waters
ea167c533e
vkswapper: Use the trash list to free resources after they've been used
...
This allows further parallelism and removes a device wait from the end of
the render code.
2016-11-03 16:58:35 +11:00
Matthew Waters
0f800095e1
vulkan: add a trash object
...
This allows pushing the destruction of vulkan resources after the signalling
of an vulkan event. The event facilitates knowing when a specific point in the
vulkan queue has been reached. Only after the event has been signaled can
vulkan resources be freed and/or reused.
2016-11-03 16:58:35 +11:00
Matthew Waters
af8c4589ba
vulkan: add a simple refcountable fence wrapper
2016-11-03 16:58:35 +11:00
Matthew Waters
4e3cb77fa8
vkdisplay: hold a weakref on the list of windows
...
It's possible that the window may have been destroyed when a winsys
event comes in for it.
Fixes an assertion in make -C tests/check generic/states.check
2016-10-05 12:20:52 +11:00
Matthew Waters
1b3de55eb1
vkdevice: only unref the gstcontext query if non-NULL
...
Fixes an assertion in make -C tests/check generic/states.check
2016-10-05 12:20:52 +11:00
Matthew Waters
a969048003
meson: add build files for vulkan
2016-09-09 16:55:23 +10:00
Matthew Waters
7b566b2964
vkupload: add video/x-raw to the VulkanBuffer uploader
...
Allows upstream elements that use our memory to passthrough without copying.
2016-09-08 16:14:41 +10:00
Matthew Waters
c110b62cf8
vkutils: set the last element of the layer array to NULL
...
g_strv* functions require this to not read off the end of the array.
2016-09-08 16:14:31 +10:00
Matthew Waters
864a0f453d
vkswapper: check the error of the presentation for out of date
...
allows us to resize the swapchain correctly.
2016-05-13 15:24:35 +03:00
Matthew Waters
4810c7de70
vulkan/build: add the build directory to the list of includes
...
Fixes out of tree builds from tarballs.
https://bugzilla.gnome.org/show_bug.cgi?id=764758
2016-05-05 23:54:16 +10:00
Matthew Waters
77f6e253e1
vkswapper: fix up display synchronization
...
Use the semaphores in the correct place, before and after the submission for
acquiring and presenting the swapchain buffer.
Waiting on the fence that only signals the command buffer completion rather than
the completion of the presentation is racy with the destruction of the vulkan
buffers associated with that image. Wait on the device to be idle instead after
presenting.
2016-05-05 23:54:16 +10:00
Matthew Waters
267588fb5e
vkswapper: use gst_video_sink_center_rect for positioning the video
...
Don't try to reimplement it badly.
2016-05-05 23:54:16 +10:00
Matthew Waters
ab33030250
vulkan: prettify the various versions in the debug output
...
output human readable numbers.
2016-04-12 09:39:12 +10:00
Matthew Waters
65770c2af9
vulkan: add a wayland winsys implementation
2016-04-11 14:18:47 +10:00
Matthew Waters
e46bd98fe6
vulkan/xcb: getProcAddress winsys functions
...
There's no guarantee that they will always be exposed by the vulkan loader.
2016-04-11 14:18:47 +10:00