From: "Brian Kuschak" <bkuschak@xxxxxxxxx> > > How do you handle access arbitration then? > > There are several ways to handle this. The simplest > is to implement a hardware semaphore for each tuner. > The client would have to acquire (and maybe > periodically renew) that semaphore to maintain > ownership of that particular tuner. So what happens when a client crashes or the connection between the client and the device is lost? ;-) Ok, your semaphore might expire, but the tuner may be left in an undefined state... And how is one client supposed to know what state a tuner is in anyway, when the device doesn't know itself...? Or are clients supposed to send out broadcast messages before/after reconfiguring a tuner so that the other clients know about the change as well? What if a client is started after a tuner configuration, is it supposed to send a broadcast message asking the other clients what the current tuner configuration is? > That would certainly provide more flexibility > long-term, however it would also require more > development effort, more parts (RAM, flash, cpu), and > higher cost. Since the DVB drivers already have > support for some of these tuner/demod chips, there > isn't a huge amount of software work to be done, if we > make the client PC do the bulk of the work. The way I see it, you the choices are: 1) Design a _proper_ network tuner device which fully encapsulates/abstracts the actual hardware, and handles access control, and spend the time it takes to develop that. 2) Design a "quick&dirty" network tuner device and spend just as much time implementing all kinds of workarounds (aka "hacks") in your client software to make it _somewhat_ work, but never quite as reliable as choice 1) would allow you. So you decide what you want your development efforts to go into. I think both will end up costing you a similar amount of time, but one will produce a significantly better result. As to: | Since the DVB drivers already have support for some of these tuner/demod | chips, there isn't a huge amount of software work to be done, Why do you think you will not be able to embed the frontend drivers from the LinuxTV project into your network tuner device's firmware...? Regards, -- Robert Schlabbach e-mail: robert_s@xxxxxxx Berlin, Germany