Using ev_periodic with a custom loop and a specific start time
Luca Barbato
lu_zero at gentoo.org
Wed Apr 8 02:03:51 CEST 2009
Marc Lehmann wrote:
> On Mon, Apr 06, 2009 at 06:49:25PM +0200, Luca Barbato <lu_zero at gentoo.org> wrote:
>> the result is strange:
>
> what is MPA? the current time? and duration?
mpa and h264 are two different rtp streams (audio and video), each of
them has an ev_periodic callback sending a packet.
each packet has a timestamp/mtime that tell when it should be played and
a duration that tells for how much.
>> the H264 packet with mtime 0.04 is sent before the mpa one with mtime
>
> what is mtime here? libev doesn't have n mtime in it's watchers, so it is
> unclear to me what your problem is.
basically every time the callback gets called a packet is took from a
queue, it's duration value is used to set the next time the callback
will be called by using ev_periodic_set and then issuing
ev_periodic_again within the callback.
> if you are wondering about the order of execution fo the callbacks, then note
> that this is undefined. if you need a timer to execute before another timer
> when both become pending at the same time, you need to use priorities.
is there a recipe for that already?
>> 0.02 even if it is scheduled before and it's deadline is between the 4th
>> and the 5th packet same goes for the following ones.
>
> It is not at all clear to me what this refers to in terms of libev.
>
> Could you make a single example of how two peridiocs were configured, how
> they were executed, and how that differes from what you expect?
I wrote a bare loop that is more or less what I'd like to archive and I
got the behavior I'd expect so I guess there is something wrong
somewhere else in the code, sorry for the noise =)
lu
--
Luca Barbato
Gentoo Council Member
Gentoo/linux Gentoo/PPC
http://dev.gentoo.org/~lu_zero
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ev_periodic_test.c
Type: text/x-csrc
Size: 1341 bytes
Desc: not available
URL: <http://lists.schmorp.de/pipermail/libev/attachments/20090408/1a806cbf/attachment.c>
More information about the libev
mailing list