mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	examples: handle 0 stride better
Assume the stride is size/height in case someone doesn't set the stride correctly.
This commit is contained in:
		
							parent
							
								
									83f1de95c0
								
							
						
					
					
						commit
						8db85cf198
					
				
					 5 changed files with 10 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -139,6 +139,8 @@ on_process(void *_data, struct spa_io_position *position)
 | 
			
		|||
 | 
			
		||||
	/* copy video image in texture */
 | 
			
		||||
	sstride = buf->datas[0].chunk->stride;
 | 
			
		||||
	if (sstride == 0)
 | 
			
		||||
		sstride = buf->datas[0].chunk->size / data->position->video.size.height;
 | 
			
		||||
 | 
			
		||||
	src = sdata;
 | 
			
		||||
	dst = ddata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -257,6 +257,8 @@ on_process(void *_data)
 | 
			
		|||
 | 
			
		||||
	/* copy video image in texture */
 | 
			
		||||
	sstride = buf->datas[0].chunk->stride;
 | 
			
		||||
	if (sstride == 0)
 | 
			
		||||
		sstride = buf->datas[0].chunk->size / data->size.height;
 | 
			
		||||
	ostride = SPA_MIN(sstride, dstride);
 | 
			
		||||
 | 
			
		||||
	src = sdata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -206,6 +206,8 @@ on_process(void *_data)
 | 
			
		|||
		}
 | 
			
		||||
 | 
			
		||||
		sstride = buf->datas[0].chunk->stride;
 | 
			
		||||
		if (sstride == 0)
 | 
			
		||||
			sstride = buf->datas[0].chunk->size / data->size.height;
 | 
			
		||||
		ostride = SPA_MIN(sstride, dstride);
 | 
			
		||||
 | 
			
		||||
		src = sdata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -136,6 +136,8 @@ on_process(void *_data)
 | 
			
		|||
 | 
			
		||||
	/* copy video image in texture */
 | 
			
		||||
	sstride = buf->datas[0].chunk->stride;
 | 
			
		||||
	if (sstride == 0)
 | 
			
		||||
		sstride = buf->datas[0].chunk->size / data->size.height;
 | 
			
		||||
	ostride = SPA_MIN(sstride, dstride);
 | 
			
		||||
 | 
			
		||||
	src = sdata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -204,6 +204,8 @@ on_process(void *_data)
 | 
			
		|||
		}
 | 
			
		||||
 | 
			
		||||
		sstride = buf->datas[0].chunk->stride;
 | 
			
		||||
		if (sstride == 0)
 | 
			
		||||
			sstride = buf->datas[0].chunk->size / data->size.height;
 | 
			
		||||
		ostride = SPA_MIN(sstride, dstride);
 | 
			
		||||
 | 
			
		||||
		src = sdata;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue