screen-cast-stream-src: Track buffer sequence number
Use the 'seq' field in the spa_meta_header struct to track buffer sequence numbers. This can be useful for predictable buffer tracking in consumers, or for debugging purposes. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4065>
This commit is contained in:
parent
cb702a7d21
commit
bf758f349b
@ -124,6 +124,8 @@ typedef struct _MetaScreenCastStreamSrcPrivate
|
||||
int64_t last_frame_timestamp_us;
|
||||
guint follow_up_frame_source_id;
|
||||
|
||||
uint64_t buffer_sequence_counter;
|
||||
|
||||
int buffer_count;
|
||||
gboolean needs_follow_up_with_buffers;
|
||||
|
||||
@ -1149,6 +1151,15 @@ meta_screen_cast_stream_src_maybe_record_frame_with_timestamp (MetaScreenCastStr
|
||||
{
|
||||
header->pts = frame_timestamp_us * SPA_NSEC_PER_USEC;
|
||||
header->flags = 0;
|
||||
header->seq = ++priv->buffer_sequence_counter;
|
||||
meta_topic (META_DEBUG_SCREEN_CAST,
|
||||
"Queuing PipeWire buffer #%" G_GUINT64_FORMAT " (%p)",
|
||||
header->seq,
|
||||
buffer->buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
meta_topic (META_DEBUG_SCREEN_CAST, "Queuing unsequenced PipeWire buffer");
|
||||
}
|
||||
|
||||
pw_stream_queue_buffer (priv->pipewire_stream, buffer);
|
||||
|
Loading…
x
Reference in New Issue
Block a user