mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-31 22:25:38 -04:00
Merge branch 'videoconvert-vulkan' into 'master'
Draft: videoconvert: Add vulkan converter, take 2 See merge request pipewire/pipewire!1830
This commit is contained in:
commit
9983945f1f
5 changed files with 1309 additions and 0 deletions
|
|
@ -140,6 +140,10 @@ extern "C" {
|
||||||
"api.vulkan.blit.filter" /**< a vulkan blit filter. */
|
"api.vulkan.blit.filter" /**< a vulkan blit filter. */
|
||||||
#define SPA_NAME_API_VULKAN_BLIT_DSP_FILTER \
|
#define SPA_NAME_API_VULKAN_BLIT_DSP_FILTER \
|
||||||
"api.vulkan.blit.dsp-filter" /**< a vulkan blit dsp-filter. */
|
"api.vulkan.blit.dsp-filter" /**< a vulkan blit dsp-filter. */
|
||||||
|
#define SPA_NAME_API_VULKAN_VIDEO_CONVERT \
|
||||||
|
"api.vulkan.videoconvert" /**< converts raw video from one format
|
||||||
|
* to another using vulkan. Must
|
||||||
|
* include at least format and scaling */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \}
|
* \}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ spa_vulkan_sources = [
|
||||||
'vulkan-compute-filter.c',
|
'vulkan-compute-filter.c',
|
||||||
'vulkan-compute-source.c',
|
'vulkan-compute-source.c',
|
||||||
'vulkan-compute-utils.c',
|
'vulkan-compute-utils.c',
|
||||||
|
'videoconvert-vulkan.c',
|
||||||
'vulkan-blit-filter.c',
|
'vulkan-blit-filter.c',
|
||||||
'vulkan-blit-dsp-filter.c',
|
'vulkan-blit-dsp-filter.c',
|
||||||
'vulkan-blit-utils.c',
|
'vulkan-blit-utils.c',
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ extern const struct spa_handle_factory spa_vulkan_compute_filter_factory;
|
||||||
extern const struct spa_handle_factory spa_vulkan_compute_source_factory;
|
extern const struct spa_handle_factory spa_vulkan_compute_source_factory;
|
||||||
extern const struct spa_handle_factory spa_vulkan_blit_filter_factory;
|
extern const struct spa_handle_factory spa_vulkan_blit_filter_factory;
|
||||||
extern const struct spa_handle_factory spa_vulkan_blit_dsp_filter_factory;
|
extern const struct spa_handle_factory spa_vulkan_blit_dsp_filter_factory;
|
||||||
|
extern const struct spa_handle_factory spa_videoconvert_vulkan_factory;
|
||||||
|
|
||||||
SPA_LOG_TOPIC_ENUM_DEFINE_REGISTERED;
|
SPA_LOG_TOPIC_ENUM_DEFINE_REGISTERED;
|
||||||
|
|
||||||
|
|
@ -33,6 +34,9 @@ int spa_handle_factory_enum(const struct spa_handle_factory **factory, uint32_t
|
||||||
case 3:
|
case 3:
|
||||||
*factory = &spa_vulkan_blit_dsp_filter_factory;
|
*factory = &spa_vulkan_blit_dsp_filter_factory;
|
||||||
break;
|
break;
|
||||||
|
case 4:
|
||||||
|
*factory = &spa_videoconvert_vulkan_factory;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
1299
spa/plugins/vulkan/videoconvert-vulkan.c
Normal file
1299
spa/plugins/vulkan/videoconvert-vulkan.c
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -26,6 +26,7 @@ context.spa-libs = {
|
||||||
# that factory.
|
# that factory.
|
||||||
#
|
#
|
||||||
audio.convert.* = audioconvert/libspa-audioconvert
|
audio.convert.* = audioconvert/libspa-audioconvert
|
||||||
|
api.vulkan.* = vulkan/libspa-vulkan
|
||||||
support.* = support/libspa-support
|
support.* = support/libspa-support
|
||||||
video.convert.* = videoconvert/libspa-videoconvert
|
video.convert.* = videoconvert/libspa-videoconvert
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue