Per inspection result from above comment, the behavior is actually a bug in the upstream v4l2loopback source, function v4l2_loopback_write:
/* there's at least one writer, so don'stop announcing output capabilities */ dev->ready_for_output = 0;
Which set `dev->ready_for_output` to zero without correcting its `dev->type`.
Per inspection result from above comment, the behavior is actually a bug in the upstream v4l2loopback source, function v4l2_loopback_ write:
/* there's at least one writer, so don'stop announcing output capabilities */ ready_for_ output = 0;
dev->
Which set `dev->ready_ for_output` to zero without correcting its `dev->type`.