On Mon, 10 Sep 2012, Clemens Ladisch wrote:

> Peter Chen wrote:
> >> Essentially, the stream is restarted with known timing.
> >
> > So, if big delay occurs (like 10ms), you would like the controller layer 
> > tells
> > you that, then, you drop 10ms packet?
> 
> I want to be able to know when the next submitted packet will be
> transmitted.

You can find out after usb_submit_urb(urb) returns by looking at
urb->start_frame.

I have tried some initial testing of my updates, using data-OUT
transfers with URB_ISO_ASAP turned off for the data URBs in
sound/usb/endpoint.c.  When interrupts are delayed so long that
synchronization is lost and a data URB submission fails, the sound
stops playing and doesn't restart.  But the synch URBs continue to be
submitted and ogg123 doesn't end for quite some time.

This doesn't seem like the desired behavior.  I'm not sure where to pin 
any blame, though.

The test patch should be ready for posting soon.  Would you like to try 
it out?

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to