mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	vulkan: Move vulkan_stream into vulkan-compute-utils
vulkan_stream will store compute specific properties. No functional changes.
This commit is contained in:
		
							parent
							
								
									e5f89e09d1
								
							
						
					
					
						commit
						1cad9ebb0d
					
				
					 5 changed files with 23 additions and 27 deletions
				
			
		| 
						 | 
					@ -543,6 +543,17 @@ int spa_vulkan_compute_use_buffers(struct vulkan_compute_state *s, struct vulkan
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static int vulkan_stream_init(struct vulkan_stream *stream, enum spa_direction direction,
 | 
				
			||||||
 | 
							struct spa_dict *props)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						spa_zero(*stream);
 | 
				
			||||||
 | 
						stream->direction = direction;
 | 
				
			||||||
 | 
						stream->current_buffer_id = SPA_ID_INVALID;
 | 
				
			||||||
 | 
						stream->busy_buffer_id = SPA_ID_INVALID;
 | 
				
			||||||
 | 
						stream->ready_buffer_id = SPA_ID_INVALID;
 | 
				
			||||||
 | 
						return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int spa_vulkan_compute_init_stream(struct vulkan_compute_state *s, struct vulkan_stream *stream,
 | 
					int spa_vulkan_compute_init_stream(struct vulkan_compute_state *s, struct vulkan_stream *stream,
 | 
				
			||||||
		enum spa_direction direction, struct spa_dict *props)
 | 
							enum spa_direction direction, struct spa_dict *props)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,18 @@ struct push_constants {
 | 
				
			||||||
       int height;
 | 
					       int height;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					struct vulkan_stream {
 | 
				
			||||||
 | 
						enum spa_direction direction;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						uint32_t pending_buffer_id;
 | 
				
			||||||
 | 
						uint32_t current_buffer_id;
 | 
				
			||||||
 | 
						uint32_t busy_buffer_id;
 | 
				
			||||||
 | 
						uint32_t ready_buffer_id;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						struct vulkan_buffer buffers[MAX_BUFFERS];
 | 
				
			||||||
 | 
						struct spa_buffer *spa_buffers[MAX_BUFFERS];
 | 
				
			||||||
 | 
						uint32_t n_buffers;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct vulkan_compute_state {
 | 
					struct vulkan_compute_state {
 | 
				
			||||||
	struct spa_log *log;
 | 
						struct spa_log *log;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,19 +33,6 @@ struct vulkan_buffer {
 | 
				
			||||||
	VkSemaphore foreign_semaphore;
 | 
						VkSemaphore foreign_semaphore;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct vulkan_stream {
 | 
					 | 
				
			||||||
	enum spa_direction direction;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	uint32_t pending_buffer_id;
 | 
					 | 
				
			||||||
	uint32_t current_buffer_id;
 | 
					 | 
				
			||||||
	uint32_t busy_buffer_id;
 | 
					 | 
				
			||||||
	uint32_t ready_buffer_id;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	struct vulkan_buffer buffers[MAX_BUFFERS];
 | 
					 | 
				
			||||||
	struct spa_buffer *spa_buffers[MAX_BUFFERS];
 | 
					 | 
				
			||||||
	uint32_t n_buffers;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
struct vulkan_base_info {
 | 
					struct vulkan_base_info {
 | 
				
			||||||
	uint32_t queueFlags;
 | 
						uint32_t queueFlags;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -828,17 +828,6 @@ int vulkan_import_memptr(struct vulkan_base *s, struct external_buffer_info *inf
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int vulkan_stream_init(struct vulkan_stream *stream, enum spa_direction direction,
 | 
					 | 
				
			||||||
		struct spa_dict *props)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	spa_zero(*stream);
 | 
					 | 
				
			||||||
	stream->direction = direction;
 | 
					 | 
				
			||||||
	stream->current_buffer_id = SPA_ID_INVALID;
 | 
					 | 
				
			||||||
	stream->busy_buffer_id = SPA_ID_INVALID;
 | 
					 | 
				
			||||||
	stream->ready_buffer_id = SPA_ID_INVALID;
 | 
					 | 
				
			||||||
	return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
uint32_t vulkan_vkformat_to_id(VkFormat format)
 | 
					uint32_t vulkan_vkformat_to_id(VkFormat format)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	SPA_FOR_EACH_ELEMENT_VAR(vk_video_format_convs, f) {
 | 
						SPA_FOR_EACH_ELEMENT_VAR(vk_video_format_convs, f) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -91,9 +91,6 @@ struct vulkan_modifier_info *vulkan_modifierInfo_find(struct vulkan_base *s, VkF
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void vulkan_buffer_clear(struct vulkan_base *s, struct vulkan_buffer *buffer);
 | 
					void vulkan_buffer_clear(struct vulkan_base *s, struct vulkan_buffer *buffer);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int vulkan_stream_init(struct vulkan_stream *stream, enum spa_direction direction,
 | 
					 | 
				
			||||||
		struct spa_dict *props);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
uint32_t vulkan_vkformat_to_id(VkFormat vkFormat);
 | 
					uint32_t vulkan_vkformat_to_id(VkFormat vkFormat);
 | 
				
			||||||
VkFormat vulkan_id_to_vkformat(uint32_t id);
 | 
					VkFormat vulkan_id_to_vkformat(uint32_t id);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue