rosbag2 · Reference case
Playback freezes before it starts.
Two recordings are played together. A short recording cannot fill its share of the message queue, and playback never starts.
The underlying cause
The player's readiness check waits for more messages than the short recording contains.
A useful fix has to handle recordings of different lengths, not just restart the player.
Read the upstream fix