cRemux single threaded?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Udo Richter wrote:
> Hi list,
> 
> I've been hunting down a bandwidth problem in my little streaming 
> plugin, and finally realized that the performance bottleneck actually is 
> cRemux and its internal resultBuffer.
> 
> The resultBuffer is initialized with resultBuffer->SetTimeouts(0, 100), 
> in other words, if no data is available, cRemux::Get will wait up to 
> 100ms for data to arrive. Thats fine as long as cRemux is filled from 
> another thread, but wastes time if cRemux is only filled from within the 
> same thread.
> 
> Unfortunately, the resultBuffer is completely hidden inside the cRemux, 
> so I cannot change this behavior. Does anyone have good ideas how to 
> avoid this without spawning another thread? (the thread would actually 
> just copy data from one buffer to another...)
> 
> This resultBuffer is really some kind of black hole, no way to control 
> it, no way to know how much is in it...

Well, we could introduce

   cRemux::SetTimeouts(int PutTimeout, int GetTimeout) { resultBuffer->SetTimeouts(PutTimeout, GetTimeout); }

Klaus


[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux