mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	gst: mark streams async
From the process callback we signal a cond and don't dequeue/queue a buffer directly.
This commit is contained in:
		
							parent
							
								
									93d5848031
								
							
						
					
					
						commit
						3eed0fbe9b
					
				
					 2 changed files with 5 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -576,9 +576,10 @@ gst_pipewire_sink_setcaps (GstBaseSink * bsink, GstCaps * caps)
 | 
			
		|||
    goto start_error;
 | 
			
		||||
 | 
			
		||||
  if (state == PW_STREAM_STATE_UNCONNECTED) {
 | 
			
		||||
    enum pw_stream_flags flags = 0;
 | 
			
		||||
    enum pw_stream_flags flags;
 | 
			
		||||
    uint32_t target_id;
 | 
			
		||||
 | 
			
		||||
    flags = PW_STREAM_FLAG_ASYNC;
 | 
			
		||||
    if (pwsink->mode != GST_PIPEWIRE_SINK_MODE_PROVIDE)
 | 
			
		||||
      flags |= PW_STREAM_FLAG_AUTOCONNECT;
 | 
			
		||||
    else
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -892,7 +892,9 @@ gst_pipewire_src_negotiate (GstBaseSrc * basesrc)
 | 
			
		|||
  GST_DEBUG_OBJECT (basesrc, "connect capture with path %s, target-object %s",
 | 
			
		||||
                    pwsrc->path, pwsrc->target_object);
 | 
			
		||||
  pwsrc->negotiated = FALSE;
 | 
			
		||||
  enum pw_stream_flags flags = PW_STREAM_FLAG_DONT_RECONNECT;
 | 
			
		||||
  enum pw_stream_flags flags;
 | 
			
		||||
  flags = PW_STREAM_FLAG_DONT_RECONNECT |
 | 
			
		||||
	  PW_STREAM_FLAG_ASYNC;
 | 
			
		||||
  if (pwsrc->autoconnect)
 | 
			
		||||
    flags |= PW_STREAM_FLAG_AUTOCONNECT;
 | 
			
		||||
  pw_stream_connect (pwsrc->stream,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue