[Live-devel] Server doesn't interleave reads from pipe and sending packets?

Ross Finlayson finlayson at live555.com
Wed Jan 16 18:07:59 PST 2008


First, you should make sure that if the same data is stored in a 
regular file - rather than on a FIFO - then you can stream it OK. 
This will help ensure that you don't have problems with bad 
timestamps in your data.

Second, when you read from a FIFO, you must make sure that reads from 
the FIFO are *asynchronous* - i.e., non-blocking, and handled within 
the event loop.  If the read end of your FIFO - as seen from your 
server - is a normal open file, then this should happen 
automatically, *unless* you are running Windows.  (Windows is 
brain-damaged, and doesn't always treat open files as being 
select()able sockets, so reads on open files in Windows are 
synchronous by default.)

Apart from this, because you're working with your own custom code, 
there's not a whole lot more I can suggest.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


More information about the live-devel mailing list