Re: [RFC] How to handle delays in isochronous transfers?

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

 



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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux