mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	
							parent
							
								
									5ead4507cc
								
							
						
					
					
						commit
						1ac1f914e3
					
				
					 3 changed files with 16 additions and 16 deletions
				
			
		| 
						 | 
					@ -52,7 +52,7 @@
 | 
				
			||||||
#define MIN_BUFFERS     1u
 | 
					#define MIN_BUFFERS     1u
 | 
				
			||||||
#define MAX_BUFFERS     4u
 | 
					#define MAX_BUFFERS     4u
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define MAXLENGTH		(4*1024*1024) /* 4MB */
 | 
					#define MAXLENGTH		(4u*1024*1024) /* 4MB */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define SCACHE_ENTRY_SIZE_MAX	(1024*1024*16)
 | 
					#define SCACHE_ENTRY_SIZE_MAX	(1024*1024*16)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -463,7 +463,7 @@ static int reply_create_playback_stream(struct stream *stream, struct pw_manager
 | 
				
			||||||
	lat.denom = stream->ss.rate;
 | 
						lat.denom = stream->ss.rate;
 | 
				
			||||||
	lat.num = fix_playback_buffer_attr(stream, &stream->attr);
 | 
						lat.num = fix_playback_buffer_attr(stream, &stream->attr);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	stream->buffer = calloc(1, stream->attr.maxlength);
 | 
						stream->buffer = calloc(1, MAXLENGTH);
 | 
				
			||||||
	if (stream->buffer == NULL)
 | 
						if (stream->buffer == NULL)
 | 
				
			||||||
		return -errno;
 | 
							return -errno;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -601,7 +601,7 @@ static int reply_create_record_stream(struct stream *stream, struct pw_manager_o
 | 
				
			||||||
	lat.denom = stream->ss.rate;
 | 
						lat.denom = stream->ss.rate;
 | 
				
			||||||
	lat.num = fix_record_buffer_attr(stream, &stream->attr);
 | 
						lat.num = fix_record_buffer_attr(stream, &stream->attr);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	stream->buffer = calloc(1, stream->attr.maxlength);
 | 
						stream->buffer = calloc(1, MAXLENGTH);
 | 
				
			||||||
	if (stream->buffer == NULL)
 | 
						if (stream->buffer == NULL)
 | 
				
			||||||
		return -errno;
 | 
							return -errno;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1186,8 +1186,8 @@ do_process_done(struct spa_loop *loop,
 | 
				
			||||||
					return -errno;
 | 
										return -errno;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				spa_ringbuffer_read_data(&stream->ring,
 | 
									spa_ringbuffer_read_data(&stream->ring,
 | 
				
			||||||
						stream->buffer, stream->attr.maxlength,
 | 
											stream->buffer, MAXLENGTH,
 | 
				
			||||||
						index % stream->attr.maxlength,
 | 
											index % MAXLENGTH,
 | 
				
			||||||
						msg->data, towrite);
 | 
											msg->data, towrite);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				client_queue_message(client, msg);
 | 
									client_queue_message(client, msg);
 | 
				
			||||||
| 
						 | 
					@ -1255,8 +1255,8 @@ static void stream_process(void *data)
 | 
				
			||||||
			if ((stream->attr.prebuf == 0 || do_flush) && !stream->corked) {
 | 
								if ((stream->attr.prebuf == 0 || do_flush) && !stream->corked) {
 | 
				
			||||||
				if (avail > 0) {
 | 
									if (avail > 0) {
 | 
				
			||||||
					spa_ringbuffer_read_data(&stream->ring,
 | 
										spa_ringbuffer_read_data(&stream->ring,
 | 
				
			||||||
						stream->buffer, stream->attr.maxlength,
 | 
											stream->buffer, MAXLENGTH,
 | 
				
			||||||
						index % stream->attr.maxlength,
 | 
											index % MAXLENGTH,
 | 
				
			||||||
						p, avail);
 | 
											p, avail);
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
				pd.playing_for = size;
 | 
									pd.playing_for = size;
 | 
				
			||||||
| 
						 | 
					@ -1282,8 +1282,8 @@ static void stream_process(void *data)
 | 
				
			||||||
			size = SPA_MIN(size, minreq);
 | 
								size = SPA_MIN(size, minreq);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			spa_ringbuffer_read_data(&stream->ring,
 | 
								spa_ringbuffer_read_data(&stream->ring,
 | 
				
			||||||
					stream->buffer, stream->attr.maxlength,
 | 
										stream->buffer, MAXLENGTH,
 | 
				
			||||||
					index % stream->attr.maxlength,
 | 
										index % MAXLENGTH,
 | 
				
			||||||
					p, size);
 | 
										p, size);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			index += size;
 | 
								index += size;
 | 
				
			||||||
| 
						 | 
					@ -1315,10 +1315,10 @@ static void stream_process(void *data)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		spa_ringbuffer_write_data(&stream->ring,
 | 
							spa_ringbuffer_write_data(&stream->ring,
 | 
				
			||||||
				stream->buffer, stream->attr.maxlength,
 | 
									stream->buffer, MAXLENGTH,
 | 
				
			||||||
				index % stream->attr.maxlength,
 | 
									index % MAXLENGTH,
 | 
				
			||||||
				SPA_PTROFF(p, buf->datas[0].chunk->offset, void),
 | 
									SPA_PTROFF(p, buf->datas[0].chunk->offset, void),
 | 
				
			||||||
				SPA_MIN(size, stream->attr.maxlength));
 | 
									SPA_MIN(size, MAXLENGTH));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		index += size;
 | 
							index += size;
 | 
				
			||||||
		pd.write_inc = size;
 | 
							pd.write_inc = size;
 | 
				
			||||||
| 
						 | 
					@ -2080,7 +2080,7 @@ static int do_create_upload_stream(struct client *client, uint32_t command, uint
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	stream->props = props;
 | 
						stream->props = props;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	stream->buffer = calloc(1, stream->attr.maxlength);
 | 
						stream->buffer = calloc(1, MAXLENGTH);
 | 
				
			||||||
	if (stream->buffer == NULL)
 | 
						if (stream->buffer == NULL)
 | 
				
			||||||
		goto error_errno;
 | 
							goto error_errno;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -178,10 +178,10 @@ static int handle_memblock(struct client *client, struct message *msg)
 | 
				
			||||||
	/* always write data to ringbuffer, we expect the other side
 | 
						/* always write data to ringbuffer, we expect the other side
 | 
				
			||||||
	 * to recover */
 | 
						 * to recover */
 | 
				
			||||||
	spa_ringbuffer_write_data(&stream->ring,
 | 
						spa_ringbuffer_write_data(&stream->ring,
 | 
				
			||||||
			stream->buffer, stream->attr.maxlength,
 | 
								stream->buffer, MAXLENGTH,
 | 
				
			||||||
			index % stream->attr.maxlength,
 | 
								index % MAXLENGTH,
 | 
				
			||||||
			msg->data,
 | 
								msg->data,
 | 
				
			||||||
			SPA_MIN(msg->length, stream->attr.maxlength));
 | 
								SPA_MIN(msg->length, MAXLENGTH));
 | 
				
			||||||
	index += msg->length;
 | 
						index += msg->length;
 | 
				
			||||||
	stream->write_index += msg->length;
 | 
						stream->write_index += msg->length;
 | 
				
			||||||
	spa_ringbuffer_write_update(&stream->ring, index);
 | 
						spa_ringbuffer_write_update(&stream->ring, index);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue