> 1. Sort all frame requests (as long as the > requested formats were similiar or subsets of > each other) into a queue of requested buffers > with a global timestamp. Every attached/opened > client can then just pick up the buffer for the > timestamp that it requested. You could even have > multiple clients effectively snooping the same > feed. IHMO a bad idea: (1) It isn't very likely that format+size requested by the applications match. (2) IMHO it is very hard to get this right. (3) you can't do zerocopy DMA with that approach, you allways have to copy the video data for the applications. > 2. Was to implement a very very simple scheduler, > which would "context switch" the video stream > into the next app that requested video buffers > and was still unsatisfied. If state changes can > be minimized (i.e. minimal reseting of format > info) fairly fine grained multiplexing should be > possible given the low data rate of NTSC/PAL. You don't need a scheduler, a simple queue will do. > Also, on the timestamp idea, does anyone here > know of the top of the head if linux on x86 uses > the TSC register of the CPU if it available (I > know, I know, I should go look at the code :-() It does. Gerd -- You can't please everybody. And usually if you _try_ to please everybody, the end result is one big mess. -- Linus Torvalds, 2002-04-20